上海交通大学信息安全工程学院2008年
一、防火墙实验系统实验指导书
优先级别源地址源端口目的地址目的端口协议动作
二、入侵检测实验系统实验指导书
特殊网络事件实验部分点击“模式匹配”—>“多协议检测实验”,进入特殊网络事件实验界面,如图1-6所示。图1-6特殊网络事件1.TCP协议检测实验1)设置TCP协议检测规则点击“设置检测TCP协议的规则”,进入规则设置界面。在此,可查看当前系统的检测规则同时可增加或删除系统的检测规则,如图1-7所示。图1-7TCP检测规则
下面对此界面中的一些选项作说明:“协议”——tcp协议;“源地址”——指定数据发送的源地址,该内容为用户的ip地址,用户无权对该项进行更改;“源端口”——指明数据发送的源端口,此端口可以为任意端口;“目的地址”——指明数据发送的目的地址,该内容为服务器的ip地址,用户无权对该项进行更改;“目的端口”——指明数据发送的目的端口;“事件签名”——制定规则名称;“数据内容”——指定发送的数据内容;“大小写敏感”——指定检测中是否对数据的大小写进行区分,如图1-8所示。图1-8添加TCP检测规则
删除检测规则:在规则设置界面中选中某一规则,点击“删除所选规则”即可。2)利用数据包发生器发送数据包打开“数据包发生器”程序,选择协议TCP,确定好端口号、数据内容、发送次数后,点击“发送”,即可向服务器某端口发送定制的数据包,如图1-9所示。图1-9数据包发送图3)查看入侵事件进入TCP协议检测实验界面,点击“查看TCP规则的检测事件”,即可看到系统所检测到的入侵事件。点击该页面中的按钮“删除已检测的TCP事件”,即可全部删除所检测到的入侵事件,如图1-10所示。图1-10TCP检测事件表
2.UDP协议检测实验点击“UDP”,进入UDP协议检测实验界面。1)设置入侵检测规则点击“设置检测UDP协议的规则”,进入规则设置界面。在此,可查看当前系统的检测规则同时可增加或删除系统的检测规则,如图1-11所示。图1-11UDP检测规则
增加检测规则:点击规则设置界面的“增加一条规则”按钮,出现增加规则界面,如图1-12所示。此界面中的一些选项详见TCP协议检测实验中的说明。图1-12增加UDP检测规则删除检测规则:在规则设置界面中选中某一规则,点击“删除所选规则”即可。2)利用数据包发生器发送数据包打开“数据包发生器”程序,选择协议UDP,确定好端口号、数据内容、发送次数后,点击“发送”,即可向服务器某端口发送定制的数据包,如图1-13所示。图1-13数据包发送图3)查看入侵事件进入UDP协议检测实验界面,点击“查看UDP规则的检测事件”,即可看到系统所检测到的入侵事件。点击该页面中的按钮“删除已检测的UDP事件”,即可全部删除所检测到的入侵事件,如图1-14所示。图1-14UDP检测事件
1.4还原系统文件:#cdbin#cp–rfls_origls
2.双斜线实验在当前的正常网络环境中,web服务器能够识别多个反斜杠的情况,并返回请求的资源。但是对于目前大多数基于模式匹配的入侵检测系统来说,还无法检测到这种变化。假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过把攻击字符串中的单个反斜杠替换为两个反斜杠,对比以下两种情况下的检测结果。(1)用户通过点击“发送攻击”按钮,发动攻击,然后点击“查看检测结果”按钮,查看事件,如图4-3所示:图4-3查看事件结果(2)如果用户先点击“转换”按钮,然后点击它下面的“发动攻击”按钮发动攻击,再点击“查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。
3.逆遍历实验在文件系统中,".."表示的是上一级目录,在命令行下,我们经常用命令"cd.."切换到上一级目录。HTTP协议中对资源的请求就是对服务器上文件的请求,同样是对文件系统的操作。假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过在攻击字符串中使用"..",进行目录的逆遍历,对比两种情况下的检测结果。(1)用户通过点击上面一个“发送攻击”按钮,发动攻击,然后点击“查看检测结果”按钮,查看事件,如图4-4所示:图4-4查看事件结果(2)如果用户先点击“逆遍历”按钮,然后点击它下面的“发动攻击”按钮发动攻击,再点击“查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。
4.自引用实验在文件系统中,'.'表示的是本目录,在命令行下,"cd."将仍旧停留在原来目录,HTTP协议中对资源的请求就是对服务器上文件的请求,同样是对文件系统的操作。假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过在攻击字符串中插入多个"./"(自引用),对比两种情况下的检测结果。(1)用户通过点击上面一个“发送攻击”按钮,发动攻击,然后点击“查看检测结果”按钮,查看事件,如图4-5所示:图4-5查看事件结果
5.目录分隔符Unix系统下文件的分隔符为'/',在Windows平台下文件分割符为'\',但兼容Unix的文件分隔符。而HTTPRFC规定用'/',但Microsoft的web服务器如IIS会主动把'/'转换成'\'。很多软件为了在Unix和Windows平台下都能正确运行,采用同时识别'/'和'\'两种文件分隔符的方式。假定攻击字符串为"/cgi-bin/some.cgi",入侵检测系统已配置为对"/cgi-bin/some.cgi"作检测。通过将URL中的斜杠转换为反斜杠,对比两种情况下的检测结果。(1)用户通过点击最上面一个“发送攻击”按钮,发动攻击,然后点击“查看检测结果”按钮,查看事件,如图4-6所示:图4-6查看事件结果(2)如果用户先点击“变换斜杠”按钮,然后点击它下面的“发动攻击”按钮发动攻击,再点击“查看检测结果”按钮查看事件,因为与规则不匹配,就检测不到事件,所以显示为空。
*虚警部分
【实验思考题】1.请根据实验过程及结果,思考检测模块是如何检测出入侵事件的?
三、安全审计实验系统指导书
1、文件审计实验2、网络审计实验3、打印审计实验4、拨号审计实验5、审计跟踪实验6、主机监控7、日志查询
四、病毒实验系统实验指导书
【实验思考】1.在本实验环境中,进行病毒实验时,如果没有看到任何实验现象会是什么原因?2.在本实验中,核心代码使用什么语言实现的?为什么能够实现?3.对病毒防范中的防范方法进行测试并思考,能否提出新的防范方法?
病毒运行被分为若干个步骤,每完成一个动作,演示将发生停顿,用户可阅读病毒的运行信息,或点击“察看”到系统的指定目录检验病毒感染的现象。
点击“继续”可激活病毒进入下一个感染步骤。点击“一键到底”,病毒演示将取消中间的停顿,连贯的执行到最后一步。
c.点击“解密”按钮,系统将使用病毒的解密算法对你生成的密文解密,明文显示在下面的文本框中。若你设计的加密算法正确,明文将是可识别的病毒代码,如下图。4.杀毒实验进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“杀毒实验”。请回忆病毒对本地系统的所有篡改,一一恢复这些篡改,包括修复被感染的本地文件,删除生成的注册表表项和文件及恢复OutlookExpress的设置。完成之后,点击“检查修复情况”,跟据提示检查你的恢复工作有哪些遗漏。点击“一键修复”,实验系统将自动清除病毒,还原干净的系统。4.病毒防护方法进入病毒防护教学实验后,点击左侧的“欢乐时光脚本病毒”,然后在点击下面的“病毒防护方法”,学习防范脚本病毒的方法。【实验思考】1.在windows2000/XP系统环境下,新欢乐时光病毒如何实现病毒体在系统启动时自动运行?2.病毒代码中那些模块部应该加密?
2)点击第二个按钮“病毒程序”,触发病毒样本,阅读病毒执行的实时信息。图6-3病毒执行界面
3)点击第三个按钮“染毒目标文件”,观察a.观察过的目标文件执行现象发生什么变化。4)点击“比较文件头信息”,左边路径直向未染毒的目标文件,右边指向已感染病毒的文件,点击“打开”,窗口将列出IMAGE_NT_HEADER的重要字段。点击“节表”进一步展开所有节表信息。请记录重要数据。图6-4比较文件信息界面
5)若想再重复以上步骤,请点击“重做”按钮,再重复a—d。点击窗口右上方的关闭按钮可退出感染实验。2.病毒代码分析进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“病毒代码分析”,阅读并分析列出的多段代码,在需要填空处填入答案。完成全部填空后,点击页面末尾的“提交”按钮提交结果。点击“重置”可重新改写答案。3.杀毒实验进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“杀毒实验”,按照提示的流程,进入PE病毒杀毒实验。1)在4.打开的实验界面中点击“PE病毒杀毒实验”。图6-5杀毒实验主界面
2)点击左边“修复染毒文件”按钮。列表路径指向4)步骤中被感染的目标文件,尝试利用界面提供的操作来修复该染毒文件。点击“打开”,窗口将列出该文件的IMAGE_NT_HEADER重要字段。若要修改某个值,在对应的文本框内填入你认为正确的数值,点击“修改”。点击“节表”展开所有节表信息;若要删除某个节,选中对应的节,点击“删除”即可。图6-6修复文件界面图6-7修复文件界面3)点击“修复的结果”按钮,将看到经过b.操作后生成的新文件被执行的现象。新生成的文件能不能正常执行?如果不能,请重复操作b-c步。4)点击“调用杀毒程序”,阅读右边窗口的实时信息,察看恢复文件的关键步骤。5)点击窗口右上角的关闭按钮,退出杀毒实验。4.杀毒代码分析进入病毒防护教学实验后,点击左侧的“PE病毒”,然后在点击下面的“杀毒代码分析”,阅读并分析列出的多段代码,在需要填空处填入答案。完成全部填空后,点击页面末尾的“提交”按钮提交结果。点击“重置”可重新改写答案。【实验思考】a)如何检测一个PE文件是否感染病毒?b)请思考防范文件感染PE病毒的方法,并作简单描述。
五、PKI系统实验指导书
先设置好发送IP及端口号及接收端口号,确保发送方及接收方的端口号一致,并在接收方按下“开始监听端口”按钮,否则接收方不能收到数据。选择适当的证书作加密之用,这里的证书就是我们希望的接收方的公钥证书。这时我们要考虑到接受方的证书是否过期或者是否被撤销,即要通过OCSP及时查询该证书的存在状态,接着等待服务器返回查询结果。收到返回信息后先验证信息时候真实有效,同时查看证书的状态,之后用户再根据需要,选择是否采用此证书来进行加密。记录日志信息并分析。键入要发送的信息,选择适当的证书作加密之用,之后发送数据。记录日志信息并分析。接收方选择相应的证书以导出私钥作解密,对比接收的信息与原来发送的信息,记录日志信息并分析。接收方选择另外的证书作解密,记录结果并分析。2.数字签名实验:先申请两张证书作为本实验之用,也可以使用非对称加密实验的证书;本实验分为信息发送方及信息接收方。分别如图6-2所示,当中分别有“发送方”页面及“接收方”页面;圖6-2数字签名实验页面
图7-2IE中的证书安全警报
2.双向认证实验:首先按下“选择”按钮选择服务端的证书,之后选择服务端的信任域,即服务端需要验证发起连接的客户端的身份,查看该用户是否具有访问权限。如果服务器不认可用户证书中的签名,那么认为是非法访问,断开用户的连接。所以首先必须设置用户连接时出示的证书。用户在建立连接时出示自己的证书的步骤如下:IE工具栏中选择工具->Internet选项->内容->证书->导入->证书选择个人域(在客户机上选择自己的私钥证书.p12文件)->输入使用私钥证书的密码->下一步直到显示”导入成功”.->刷新刚才的IE连接,看到不同的效果,如图7-3所示。(两个演示证书Alice与Bob密钥均为client,而PKI实验系统产生的证书密码是申请时用户提交的密码)
图7-3导入SSL服务器信任的证书
浏览器中添加了服务器信任的证书时,服务器会返回自己的证书,等待客户验证,类似单向认证过程。若用户选择信任服务器证书,返回成功的页面,服务端会显示连接发起通信的客户端的信息,如图7-4所示。否则,连接中断。如果服务器信任域包含多个选项,同时用户用于HTTPS连接的IE浏览器中安装了对应被服务器信任的多个私钥证书,那么在客户端发起连接时,服务端会提示用户进行身份证书的选择,相应的用户选择的证书的身份也会在服务端显示出来,如图7-5所示。
图7-4导入SSL服务器信任的证书
六、攻防实验系统指导书
1、RPCDCOM堆栈溢出实验2、端口扫描实验3、漏洞扫描实验4、Unix口令实验破解5、Windows口令破解实验6、远程控制实验7、灰鸽子远程控制实验指导书
图4-1程序在内存的基本影像
在传统的程序设计中,通常借助过程调用和函数调用,改变程序运行的流程。每次进行过程和函数调用时,都要先将返回地址信息压入到堆栈中。过程和函数调用返回时,读取堆栈数据,获取返回地址,将程序的控制权交还给原来的程序,将程序重新定向到原来的流程中。在堆栈中,使用一种称为“栈帧”的数据结构保存返回地址信息。栈帧包含下列信息:传递给函数的参数、函数返回后下一条指令的地址、函数中分配的局部变量、恢复前一个栈帧所需的数据(基地址寄存器值)。函数调用前,将栈帧内容压入栈中;函数调用后,将栈帧内容弹出,获取执行的下一条指令的地址。函数在栈中的内存影像如图4-2所示。图4-2函数在栈中的影像
上面这些技术可以绕过一些防火墙,从而得到防火墙后面的主机信息,当然,是在不被欺骗的情况下的。这些方法还有一个好处就是比较难于被记录,有的办法即使在用netstat命令上也根本显示不出来,而且一般的安全防护设备也根本不记录这些内容,这样能够更好地隐藏自己。
【实验步骤】在实验主机(windows系统)中建立工作目录,如"C:\John16"。将实验工具目录下面的所有文件复制到刚才所建立的工作目录中。在DOS命令界面中进入工作目录。可参考下面命令:oc:ocdc:\john16查看Unix系统中的口令加密文件内容,即/etc/passwd和/etc/shadow。可参考下面命令:otype.\etc\passwdotype.\etc\shadow进行简单模式的口令猜解。可参考下面命令:ojohn-single.\etc\shadow简单模式破解完毕之后,查看已破解的密码列表,请将结果写入实验报告。可参考下面命令:ojohn-show.\etc\shadow进行字典模式的口令猜解,选用的是"single.dic"字典。可参考下面命令:ojohn-wordfile:single.dic.\etc\shadow字典模式破解完毕之后,查看已破解的密码列表,请将结果写入实验报告。进行暴力破解。可参考下面命令(可以按Ctrl+C终止其运行)。ojohn.\etc\shadow
2、客户端控制运行实验工具目录下的。在主界面点。填入远程主机IP及密码或者直接在主界面“当前连接”、“端口”、“连接密码”中填入填入远程主机IP、端口、连接密码,如下图。在主界面"文件管理器"选项卡左侧的列表中点击选中所添加的目标主机("192.168.123.90)节点,观察在右侧文件树中是否能够查看到目标服务器上的驱动器列表。
在"文件管理器"中展开目标服务器的节点,在右边的文件列表中找到以下文件C:\ServerData\test.txt,将其下载到本地计算机。请将该文件的内容导入到实验报告中。切换到""远程控制命令"选项卡,先点左下角“查看进程”,再点右侧。请将所看到的界面截获并复制到实验报告。切换到""远程控制命令"选项卡,先点左下角“系统信息”,再点右侧。请将所看到的界面截获并复制到实验报告。切换到“注册表模拟器”选项卡,先点左侧“远程电脑”,再点HKEY-LOCAL-MACHINE->SAM->SAM。请将所看到的界面截获并复制到实验报告。]切换到""远程监控"选项卡,在右侧中“信息正文”对应框内填入“灰鸽子远程监控实验”,然后点按钮,服务端主机屏幕将出现一个含有你刚才所填内容的对话框,再点,请将所看到的预览对话框截图并复制到实验报告。在主界面点,请将所捕获的界面截图并复制到实验报告。在主界面点,并捕获的屏幕中打开“我的电脑”,请将所进行的捕获的屏幕截图并复制到实验报告。【实验思考】1、木马和远程控制工具的区别?2、如何发现和清除木马?
七、密码实验系统指导书
图3-13DES算法实验
【实验思考题】将下面的两个密钥中的有效比特列出来k1:12345678k2:23456789
【实验思考题】对于长度不足16字节整数倍的明文加密,除了填充这个办法,还有没有其他的方法?
【实验思考题】1.对于128bit的AES算法,需要多少安全参数为多少的RSA系统与之相匹配?2.RSA系统的安全参数是什么意思?安全参数为1024bit的RSA系统,其模数n大约为多少bit?
八、IPSecVPN实验系统实验指导书
1、VPN安全性实验
2、VPNIKE认证实验
图1-2实验流程图【实验注意事项】1、实验中用到的PSK预共享密钥默认为123456。2、实验时隧道建立后一定要断开隧道。2、VPNIKE认证实验【实验目的】1.学会利用linux里的VPN软件的配置、建立vpn连接2.学会怎样调试vpn网关3.了解PSK(预共享密钥)、RSA(非对称密钥)、证书三种配置方式及其差别【实验环境】openswan是一种在linux下的ipsec协议的实现,利用它我们可以在linux下配置基于ipsec的虚拟专用网。比如我们可以把两个局域网用虚拟专用网连接起来,使两个局域网能够通过公用网络实现安全互访等等。在这个实验里我们来亲手配置,建立并调试VPN连接,假设我们要配的局域网如下(本实验仍用局域网模拟internet):1.实验拓扑图:
九、多级安全访问控制系统实验指导书
图1-3证书应用实验2、单击查看按钮可以了解已签发过的属性证书的个数和每个属性证书的属性概要介绍。将鼠标移至该证书名称上就可以看到。如果用户还没有进行证书申请实验,或者还没有向AA请求签发属性证书,系统会提示先进行证书申请和管理实验。3、单击使用证书按钮,确定使用该属性证书。4、单击公司职员信息表,或者其他两个资源信息表,向AEF发出信息访问请求,5、此时右侧系统日志中显示相应的AEF和ADF交互信息,包括验证过程,最后系统会提示判决结果。如果允许访问,则反馈对应于该用户权限范围内的资源表信息,反之警告用户拒绝访问。6、对于那些可以修改的资源,双击显示该资源的具体信息,在具体信息的下方就可以进行修改,完成后点击确定按钮保存即可。7、可以通过点击重选证书按钮选择不同的属性证书进行对比验证。【实验思考题】1、多级安全访问控制系统中,获取属性证书的两种方式之间有什么区别?2、对访问请求的具体判决流程是怎样的?【注意】1、为了保护用户的身份信息不被他人非法使用,在退出多级安全访问控制实验时务必在浏览器中删除用户的私钥证书信息。