计算安全实验指导书.doc_第1页
计算安全实验指导书.doc_第2页
计算安全实验指导书.doc_第3页
计算安全实验指导书.doc_第4页
计算安全实验指导书.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算安全实验指导书 实验一非对称密码算法RSA 一、实验目的与要求通过编程了解非对称密码算法RSA的实现过程密钥对生成;高次幂剩余运算等;采用RSA算法进行加密/解密实验。 体会RSA算法特点,讨论影响其安全性能的因素。 二、实验基本原理非对称密码算法的出现,给密码的发展开辟了新的方向。 非对称密码算法虽然已经历了20多年的发展,但仍具有强劲的发展势头,在鉴别系统和密钥交换等安全技术领域起着关键的作用。 RSA算法是由Rivest,Shamir和Adleman三人于1978年提出。 RSA算法保密强度是目前为止最为成功的非对称加密算法,其安全性是建立在“大素分解和素性检测”这个数论难题基础上,即将两个大素数相乘在计算上容易实现,但将该乘积分解为两个大素数因子的计算量相当大,是NP完全问题。 该算法产生一对密钥,一个公开(公钥public key),一个保密(私钥private key)。 公开密钥是向大众公布的;无法通过公钥确定私钥;用密钥对中的一个加密消息,可以也仅可以用密钥对中的另一个解密消息。 2.1RSA算法的过程描述如下取两个随机大素数p和q(保密)计算公开的模数r=p*q(公开)计算秘密的欧拉函数?(r)=(p-1)*(q-1)(保密),丢弃p和q,不要让任何人知道。 随机选取整数e,满足gcd(e,?(r)=1(r,e)公钥计算逆元d满足de1(mod?(r)(r,d)私钥即de mod?(r)1或deK?(r)+1将明文x按模为r自乘e次幂以完成加密操作,从而产生密文y(X、Y值在0到r-1范围内)。 Y=xemod r解密将密文y按模为r自乘d次幂。 X=Ydmod r2.2扩展欧几里德算法,求解逆元Function Euclid(a,b)/求a模b下的逆元(x1,x2,x3)-(1,0,b);(y1,y2,y3)-(0,1,a);If y3=1then print“逆元是”y2endif y3=0print“无逆元”;End.Q=x3/y3(t1,t2,t3)-(x1-Q*y1,x2-Q*y2,x3-Q*y3)(x1,x2,x3)-(y1,y2,y3);(y1,y2,y3)-(t1,t2,t3)Go to22.3高次幂剩余的运算要计算xe mody,因x、e、y都是大数而不能采用先高次幂再求剩余的方法来处理,而要采用平方取模的算法,即每一次平方或相乘后,立即取模运算。 该算法如下平方-和-乘法算法Square-and-Multiply(x,e,y)Z=1For i=k downto0Do z=z*z mody ifbi=1then z=z*x mody Return(z) 三、实验环境运行Windows或Linux操作系统的PC机,具有g(Linux)、VC(Windows)等C语言编译环境。 四、实验内容和步骤加深对RSA算法的了解,根据已知参数p3,q11,m2,选择e,并利用扩展欧几里德算法求d,并对明文加密。 运行RSATool,加密一段文字。 五、实验报告要求 (1)编程实现欧几里德算法; (2)参阅资料,简单说明大数运算如何实现; (3)谈谈对RSA安全性的理解。 实验二Sniffer Pro的使用 一、实验目的和要求通过使用Sniffer Pro软件掌握Sniffer(嗅探器)工具的使用方法,实现捕捉FTP、等协议的数据包,以理解TCP/IP协议中多种协议的数据结构、会话连接和终止的过程、TCP序列号、应答序号的变化规律。 并且,通过实验了解FTP、等协议明文传输的特性,以建立安全意识,讨论可行的安全措施。 二、实验原理Sniffer(嗅探器)工作在OSI模型的第二层,利用计算机的网卡截获目的地为其他计算机的数据报文的一种工具,可用来监听网络中的数据,分析网络的流量,以便找出所关心的网络中潜在的问题。 例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器确定不同网络协议、不同用户的通信流量,相互主机的报文传送间隔时间等,这些信息为管理员判断网络问题、管理网络区域提供了非常宝贵的信息。 共享式以太网是基于总线方式,就是当某台计算机发送数据帧,该网段的所有机器的网卡都能接收到数据帧,但网卡内的单片程序先接收帧头内的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断该不该接收,认为该接收就在接收后产生中断信号通知CPU,认为不该接收就丢弃。 在正常情况下,一个合法的网络接口应该只响应这样的两种数据帧帧的目标区域具有和本地网络接口相匹配的硬件地址;帧的目标区域具有“广播地址”。 如果网卡处于混杂(promiscuous)模式,那么它就可以捕获网络上所有的数据帧,处于对网络的“监听”状态,如果一台机器被配置成这样的方式,它(包括其软件)就是一个嗅探器。 实验中要注意,虽然Sniffer能的得到在局域网传送的大量数据,但是不加选择的接收所有的数据包,并且进行长时间的监听,那么你需要分析的数据量将非常大,浪费大量的硬盘空间。 三、Sniffer Pro软件3.1功能简介Sniffer的主要功能有捕获网络流量进行详细分析;利用专家分析系统诊断问题;实时监控网络活动;收集网络利用率和错误等。 下面列出了Sniffer软件的一些功能介绍,其功能的详细介绍可以参考Sniffer的在线帮助。 注意在进行流量捕获之前首先选择网络适配器,确定从计算机的哪个网络适配器上接收数据。 3.2捕获面板报文捕获功能可以在报文捕获面板中进行完成,图1是捕获面板的功能图图中显示的是处于开始状态的面板。 图1捕获面板功能3.3捕获过程报文统计在捕获过程中可以通过查看下面面板查看捕获报文的数量和缓冲区的利用率。 图2报文数量、缓冲区利用率捕获开始捕获开始捕获暂停捕获暂停捕获停止捕获停止捕获停止并查看并查看捕获查看捕获查看捕获条件选择捕获条件条件捕获停止捕获条件选择捕获捕获报文数捕获报文数捕获报文的数据缓冲大小据缓冲大小详细统计信息息捕获报文的数详细统计信3.4捕获报文查看Sniffer软件提供了强大的分析能力和解码功能。 对于捕获的报文提供了一个Expert专家分析系统进行分析,还有解码选项及图形和表格的统计信息。 图3专家分析专家分析专家分析系统提供了一个只能的分析平台,对网络上的流量进行了一些分析对于分析出的诊断结果可以查看在线帮助获得。 在下图中显示出在网络中WINS查询失败的次数及TCP重传的次数统计等内容,可以方便了解网络中高层协议出现故障的可能点。 对于某项统计分析可以通过用鼠标双击此条记录可以查看详细统计信息且对于每一项都可以通过查看帮助来了解起产生的原因。 解码分析图4是对捕获报文进行解码的显示,通常分为三部分,目前大部分此类软件结构都采用这种结构显示。 对于解码主要要求分析人员对协议比较熟悉,这样才能看懂解析出来的报文。 使用该软件是很简单的事情,要能够利用软件解码分析来解决问题关键是要对各种层次的协议了解的比较透彻。 工具软件只是提供一个辅助的手段。 因涉及的内容太多,这里不对协议进行过多讲解,请参阅其他相关资料。 对于MAC地址,Snffier软件进行了头部的替换,如00e0fc开头的就替换成Huawei,这样有利于了解网络上各种相关设备的制造厂商信息。 双击此记录可以查看详细信息查看详细信息双击此记录可以图4报文解码示意图5敏感信息的泄漏捕获的报文报文报文解码码二进制内容内容捕获的报文解二进制统计分析对于Matrix,Host Table,Portocol Dist.Statistics等提供了丰富的按照地址,协议等内容做了丰富的组合统计,比较简单,可以通过操作很快掌握这里就不再详细介绍了。 四、捕获数据包并分析启动抓包,登陆一个web服务器(网站),比如学校主页,输入任意邮件帐户和口令(abc;abcd)。 停在抓包,单击窗口左下角的Decode选项,窗口显示所捕获的数据,并分析捕获的数据包。 在summary找到POST类型的数据包43,如图5所示。 在窗口中我们可以看到usernameabc,passwordabcd,这就表明帐户、口令这样的敏感信息泄漏了。 五、实验环境两台安装window的PC,在其中一台上安装Sniffer Pro软件,两台PC通过HUB相连,组成一个局域网。 六、实验报告要求 (1)捕获数据包,并对各层协议的头部进行说明; (2)网段内某台主机进行tel登陆,或收发电子邮件,另一台进行嗅探,分析其中的敏感信息; (3)谈谈防止sniffer的方法。 实验三缓冲区溢出攻击 一、实验目的和要求掌握缓冲区溢出攻击的原理,编程实现静态缓冲区溢出的应用,理解缓冲区溢出的危害性,理解防范和避免缓冲区溢出攻击的措施。 二、实验原理2.1背景知识缓冲区溢出是指当计算机程序向缓冲区内填充的数据位数超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上。 理想情况是,程序检查数据长度并且不允许输入超过缓冲区长度的字符串。 但是绝大多数程序都会假设数据长度总是与所分配的存储空间相匹配,这就为缓冲区溢出埋下隐患。 操作系统所使用的缓冲区又被称为堆栈,在各个操作进程之间,指令被临时存储在堆栈当中,堆栈也会出现缓冲区溢出。 当一个超长的数据进入到缓冲区时,超出部分就会被写入其他缓冲区,其他缓冲区存放的可能是数据、下一条指令的指针,或者是其他程序的输出内容,这些内容都被覆盖或者破坏掉。 可见一小部分数据或者一套指令的溢出就可能导致一个程序或者操作系统崩溃。 缓冲区溢出是由编程错误引起的。 如果缓冲区被写满,而程序没有去检查缓冲区边界,也没有停止接收数据,这时缓冲区溢出就会发生。 缓冲区边界检查被认为是不会有收益的管理支出,计算机资源不够或者内存不足是编程者不编写缓冲区边界检查语句的理由,然而摩尔定律已经使这一理由失去了存在的基础,但是多数用户仍然在主要应用中运行十年甚至二十年前的程序代码。 缓冲区溢出之所以泛滥,是由于开放源代码程序的本质决定的。 一些编程语言对于缓冲区溢出是具有免疫力的,例如Perl能够自动调节字节排列的大小,Ada95能够检查和阻止缓冲区溢出。 但是被广泛使用的C语言却没有建立检测机制。 标准C语言具有许多复制和添加字符串的函数,这使得标准C语言很难进行边界检查。 C略微好一些,但是仍然存在缓冲区溢出。 一般情况下,覆盖其他数据区的数据是没有意义的,最多造成应用程序错误,但是,如果输入的数据是经过“黑客”或者病毒精心设计的,覆盖缓冲区的数据恰恰是“黑客”或者病毒的入侵程序代码,一旦多余字节被编译执行,“黑客”或者病毒就有可能为所欲为,获取系统的控制权。 22攻击原理任何一个程序通常都包括代码段和数据段,这些代码和数据本身都是静态的。 程序要想运行,光有代码段和数据段是不够的,进程在运行过程中还要有其动态环境,其中最重要的就是堆栈。 也就是要由操作系统负责为其创建进程,从逻辑上讲进程的堆栈是由多个堆栈帧构成的,其中每个堆栈帧都对应一个函数调用。 当函数调用发生时,新的堆栈帧被压入堆栈;当函数返回时,相应的堆栈帧从堆栈中弹出。 如以下程序段及其堆栈帧示意图。 int function(int a,int b,int c)char buffer14;int sum;sum=a+b+c;return sum;void main()int i;i=function(1,2,3);图1堆栈帧示意向堆栈中分配的局部数据块中写入超出其实际分配大小的数据,导致数据越界,结果覆盖了其它的堆栈数据。 C语言中许多字符串处理函数如Strcpy、Strcat、Gets、Sprintf等都没有对数组越界加以监视和限制,所以利用字符数组写越界,覆盖堆栈中原先元素的值,就可以修改返回地址。 通常,往缓冲区随便填充所造成的溢出,将使返回地址为一个非法的、不存在的地址,从而出现错误,不能达到攻击目的。 但如果函数的返回地址被修改为指向一段精心安排好的恶意代码,从而达到危害系统安全的目的。 三、实验环境两台PC,一台装有idahack缓冲区溢出软件,一台装有WINDOWS2000server SP2版本;VC(Windows)语言编译环境。 四、实验报告要求 (1)使用idahack缓冲区溢出软件; (2)编写程序模拟缓冲区溢出过程,在VCrelease模式编译生成可执行文件,将程序和实验结果提交; (3)分析如何防范缓冲区溢出攻击。 实验四Windows中的Web、FTP服务器的安全配置 一、实验目的和要求架设WINDOWS操作系统中的Web、FTP服务器;通过实验了解其安全漏洞及防范措施,实现Web服务器、FTP服务器的安全配置,防范由IIS漏洞造成的入侵。 二、实验原理2.1IIS简介网站的建设是基于网站服务器的。 在UNIX或Linux平台上,Apache就是网站服务器。 而对于Windows NT/2000来说,IIS就是标准的网站服务器。 IIS是一种服务,是Windows2000Server系列的一个组件。 不同于一般的应用程序,它就像驱动程序一样是操作系统的一部分,具有在系统启动时被同时启动的服务功能。 允许在Inter/Intra上发布信息的Web服务器。 IIS通过超文本传输协议()传输信息,还可配置IIS以提供文件传输协议(FTP)和其他服务,如NNTP服务、SMTP服务等。 与IIS4.0相比,IIS5.0提供了方便的安装和管理、增强的应用环境、基于标准的发布协议,在性能和扩展性方面有了很大的改进,为客户提供更佳的稳定性和可靠性。 但是,IIS也是Windows2000Server漏洞最多的一个服务。 如果没有事先配置IIS,恶意用户会通过IIS的漏洞入侵系统,从而取得系统的最高权限。 有很多其他的服务器软件也可以提供良好的Inter服务,如Netscape的服务器、Apache forWin服务器等,但是IIS是Windows平台下最简单易用的服务器。 简单、易用是IIS5.0最大的特点。 和IIS4.0相比,IIS5.0完全集成于Windows2000Server中,而IIS4.0是Windows NT4.0的Option Pack组件。 IIS5.0提供了更可靠的服务,管理也更为集成化。 IIS5.0在安全方面提供了几个新的特征摘要式身份验证、安全通信、服务器网关加密、安全向导、IP地址及Inter域限制、Kerberos5.0身份验证协议兼容性、证书存储、Fortezza。 IIS5.0支持WebDAV和ASP,它有两个管理工具一个用于MMC的Inter ServiceManager外接程序,另一个是基于Web浏览器管理的Inter ServiceManager。 IIS存在安全漏洞由来已久。 前段时间大规模暴发的红色代码、蓝色代码、SirCAM等蠕虫病毒就是利用IIS存在的漏洞而流行开来的。 IIS的漏洞多得不可计数,幸好微软公司都已经针对当前发现的IIS漏洞推出了相应的修复包,用户只要打上最新的补丁就能减小IIS漏洞带来的潜在的危害。 三、实验环境安装Window2000Server/XP操作系统的计算机,相应操作系统的安装盘。 四、实验内容4.1IIS的安装安装IIS5.0不要安装索引服务(红色代码、红色代码II利用此服务进行转播)、FrontPage2000服务器扩展,因为IIS中的众多安全隐患是由一些其他的功能引起的。 如果只做一个Web站点,就只需要安装必需的服务,如World WideWeb服务器、FTP服务器等,这样可以减少入侵者利用漏洞攻击的机会。 建议不要安装Inter信息服务管理器(HTML),因为可以在MMC的Inter服务管理器中进行远程管理,且基于Web浏览器的管理工具也有很大的风险。 多余的服务尽量不要安装。 如果不做新闻组就不要安装NNTP Service,或者安装更好的第三方服务器软件。 在安装Windows2000的时候,如果选择了安装IIS,那么在安装的时候系统将会在服务器的%SystemDrive%里创建一个IPub目录,而且还会在Ipub目录下创建一个Scripts目录,IIS还会创建一个虚拟目录Scripts指向该目录,并且给这个目录执行权限。 前段时间NSFocus安全小组研究发现的Unicode解码目录遍历漏洞的大部分问题就是针对Web站点的可执行目录而言的,所以建议把该目录移到非系统盘上,这样做在一定程度上可以保证相对的安全性。 但这种安装方式是无法定义IIS的安装目录的。 所以,这也就是为什么前面的章节建议安装Windows2000Server时不要选择IIS组件的原因。 安装完Windows2000Server后,再自定义安装IIS。 请准备好Windows2000Server安装光盘。 建立一个无人参与安装应答文件IIS5install.txt,此文件的内容如下Componentsiis_mon=on iis_imgr=on iis_=on iis_ftp=on iis_htmla=onInterServerPath=D:isrvPathFTPRoot=D:iPubFTPRootPathRoot=D:IPubroot说明如下。 Conponents小节指定了IIS所安装的组件。 iis_mon=on指定需要安装IIS的公用文件。 iis_imgr=on指定需要安装IIS管理器。 iis_=on指定需要安装服务。 iis_ftp=on指定需要安装FTP服务。 iis_htma=on指定需要安装Web方式的IIS管理器。 InterServer小节指定了IIS的根路径,用户可以随意指定其路径。 Path=D:ilsrv指定IIS公用文件存放位置。 PathFTPRoot=d:IPubFTPRoot指定FTP的根路径。 PathRoot=d:IPubRoot指定的根路径。 存完这个文件后,在命令提示符下键入sysocmgr/i:%windir%infsysoc.inf/u:d:iis5install.txt由于指定了无人参与的操作参数/u,所以不会有任何窗口出现。 稍后IIS就会安装完成。 用户应该能注意到,原先和Windows2000相同盘符的Ipub被安装在D:了,Unicode解码目录遍历漏洞自然也就失效了。 IIS5.0有很多组件,如图1所示。 图 1、IIS组件如果要以无人参与的安装方式安装更多的IIS5.0组件,下面给出详细的内容,用户可以根据自己的需要在Components程序段中将相关变量设为ON或OFF。 This isan exampleUnattended installationfile IIS,MTS,and IndexServer areON TargetPath shouldbe newdirectory Adminpasswordis blank.UnattendedUnattendmode=FullUnattended OemPreinstall=NO TargetPath=*Filesystem=LeaveAloneUserDataFullName=Your UserNameOrgName=Your OrganizationNameComputerName=ComputerNameGuiUnattendedTimeZone=004AdminPassword=*AutoLogon=YesLicenseFilePrintDataAutoMode=PerServerAutoUsers=0DisplayBitsPerPel=4XResolution=800YResolution=600VRefresh=70NetworkingInstallDefaultComponents=YESIdentificationJoinWorkgroup=Workgroup TurnsNT Components(and theirrespective sections)ON orOFFComponentsiis_mon=on iis_imgr=on iis_=on iis_ftp=on iis_htmla=on iis_doc=on iis_pwmgr=on iis_smtp=on iis_smtp_docs=on mts_core=on msmq=off terminalservices=off reminst=off certsrv=off rstorage=off indexsrv_system=on certsrv_client=off certsrv_server=off certsrv_doc=offInterServerWithout thesekeys specifiedIIS willuse thedefault settingsNote thatthe Pathis locationfor INETSRV,the coreIIS programsand files.Path=D:Securelocation PathFTPRoot=E:IpubFtproot PathRoot=E:IpubWwwroot4.2IIS安全配置 1、删除不必要的虚拟目录安装完IIS后,看看IIS所在的目录中有没有iissamples、iishelp、msadc、scripts、printer等目录,如果有则应该删除,因为这些默认生成的目录是众所周知的,容易给攻击留下入侵的机会。 2、停止默认的web站点打开“控制面板管理工具Inter服务管理器”,“停止”“默认web站点”,根据需要启用自己创建的Web站点。 3.对IIS的文件和目录进行分类,区别设置权限除了在操作系统里为IIS的文件设置必要的权限外,还要在IIS管理器中为它们设置权限。 一个好的设置策略是为Web站点上不同类型的文件都建立目录,然后给它们分配适当权限。 例如静态文件文件夹允许读、拒绝写,ASP脚本文件夹允许执行、拒绝写和读取,EXE等可执行程序允许执行、拒绝读写。 4.删除不必要的应用程序映射ISS中默认存在很多种应用程序映射,除了ASP的这个程序映射,其他的文件在网站上都很少用到,比如ida、idq、htr等。 在“Inter服务管理器”中,右击网站目录,选择“属性”,在网站目录属性对话框的“主目录”页面中,点击配置按钮,弹出“应用程序配置”对话框,在“应用程序映射”页面,删除无用的程序映射。 如果需要这一类文件时,必须安装最新的系统修补补丁,并且选中相应的程序映射,再点击按钮,在“添加/应用程序扩展名映射”对话框中勾选“检查文件是否存在”选项。 这样当客户请求这类文件时,IIS会先检查文件是否存在,文件存在后才会去调用程序映射中定义的动态链接库来解析。 图 2、应用程序配置5.保护日志安全日志是系统安全策略的一个重要环节,确保日志的安全能有效提高系统整体安全性。 修改IIS日志的存放路径默认情况下,IIS的日志存放在%WinDir%System32LogFiles,黑客当然非常清楚,所以最好修改一下其存放路径。 在“Inter服务管理器”中,右击网站目录,选择“属性”,在网站目录属性对话框的“Web站点”页面中,在选中“启用日志记录”的情况下,点击旁边的属性按钮,在“常规属性”页面,点击浏览按钮或者直接在输入框中输入日志存放路径即可。 图 3、修改IIS日志的存放路径修改日志访问权限,设置只有管理员才能访问。 通过以上的一些安全设置,相信你的Web服务器会安全许多。 6、FTP服务器安全配置用户可以通过该Windows2000Server系统的合法用户账户登录FTP。 由于FTP和Tel一样都是通过明文形式传送的,如果恶意用户使用嗅探器Sniffer程序就可以获取用户名和口令,故IIS的FTP也要采取安全措施。 FTP协议默认使用的端口是21,可以将其改成其他的端口,如图所示。 图 4、更改FTP服务器的默认端口可以将在默认FTP站点属性对话框中的FTP站点选项卡里的标识框里的TCP端口21改成其他的数值。 由于21是FTP默认使用的端口号,恶意用户可以用扫描器探测到该服务器开放了FTP。 必须注意,改端口的时候不要使用已经占用的端口,否则会引发冲突,最简单的办法是使用Windows2000的命令行方式下的stat-a命令查看已经使用了哪些端口。 在使用了非标准的FTP端口后,用户要访问该FTP站点就必须指定端口号,否则无法访问。 在如图2所示界面的连接框中,可以指定连接设置和连接超时,这对于FTP服务器的安全是至关重要的。 如果将它们设置为无限制的话,恶意用户无数次连接该服务器的21端口,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论