当前位置:文档之家› 网络协议实践课程实验报告

网络协议实践课程实验报告

一、实验目的:通过实验了解系统漏洞,学会发现系统漏洞。

二、实验内容:搭建一个实验环境,使用namp工具对可能存在漏洞的开放

端口进行扫描,将结果保存在namp.cap文件里。

三、实验原理:

缓冲区溢出攻击者必须非常熟悉服务器端运行的程序的特点。他们必须知道服务器程序会分配多少空间用于接收到来的请求,并准确知道将要插人的代码写到人何处。攻击者可以很容易地获得服务器应用程序的代码拷贝,并对其进行研究和攻击练习。他们常常是对最流行的服务器软件包的默认设置进行研究,因为大部分计算机都是在这些设置下运行的。通常编写的恶意代码都会向其他有漏洞的主机进行打一散。例如,利用缓冲区溢出漏洞进人系统的恶意代码会对其他主机执行同样的攻击。恶意代码也可能在计算机上搜索电子邮件地址,并且把它自己的拷贝作为电子邮件的附件发送出去。

在本实验中,我们将对一个用于探测网络中另一个系统的开放端口或漏洞的网络应用程序的跟踪结果进行观察分析。我们也将对一个感染了冲击波蠕虫病毒的计算机的跟踪结果进行分析。我们会看到它是如何通过试图在Windows分布式组件对象模型(DCOM)和远程过程调用(RPC)接口中发掘漏洞来传播自己的。

四、实验器材、环境配置操作及实验数据的产生:

本实验的跟踪记录可在两个配置中捕获。在第一个配置图中,一个在防火墙后运行DHCP的PC机,用于扫描防火墙下开放的端口。在第二个配置图中,我们在校园网环境中选择了一台感染冲击波蠕虫病毒的PC机进行网络行为跟踪。

配置图一

配置图二

在第一个实验中,我们使用nmap工具来对另一台主机192. 168. 0. 1的开放端口或可能的漏洞进行扫描。我们识别到一个开放端口,HTTP端口,将跟踪结果保存在nmap. cap文件中。像nmap这样的端口扫描程序通过向许多常用端口发送SYN分组以检测开放端口(或漏洞)。在本例中,SYN分组一共发送给了1658个端口。如果服务器软件在这些端口上监听,它就会返回一个SYNACK分组作为回应。当扫描结束时,你会全面了解到系统可能存在的漏洞。

端口扫描可以用来评估你电脑的安全性,但是它也被认为是一种对他人计算机进行端口扫描的攻击。在本实验中,我们只用nmap来扫描单个的目标主机,但是它也可以被用于扫描整个网络。

在nmap. cap文件中,我们使用tcp.flags.syn==1&&tcp.flags.ack= =0过滤器来显示出由nmap发出的用于探测端口的分组。从统计概要可以看出,它一共发出了6693个分组,向扫描的1658个端口中的每个端口发送了3—4个SYN 分组。端口扫描并不是从端口号较低的端口扫描到端口号较高的端口。它甚至不会对一个指定的端口发送所有的探测信息。我们可以注意到nmap扫描对很多探测分组重复使用相同的源端口。例如:分组巧到44都是使用50210端口作为探测分组的源端口。如果不是端口扫描,操作系统一般都会为每次连接分配一个不同的暂时的端口。

Ethereal为一些众所周知端口号取了相应的名字。如端口21取名为ftp 。IANA发布了一系列的众所周知端口号列表。这个列表为常用的服务指定了相应的端口号。例如:Web服务器使用众所周知端口80,邮件发件服务器使用众所周知端口25。通常,端口号从。到1023都是众所周知端口。在大部分的系统中,只有具有一级或管理员级权限的程序才可以使用这些端口。

为了识别出所有成功的扫描,我们将Ethereal的过滤规则设定为: tcp.flags.syn==1&&tcp.flags.ack= =1,这样可以过滤出所有SYNACK分组。从这个过滤器中可以看到,惟一开放的端口为80端口,我们可以进一步使用过滤规则tcp.port= 8 0从所有数据流中分离出与80端口有关的数据流。当目标主机响应一个SYNACK分组后,nmap响应一个RST置位的分组来关闭连接。

五、实验数据分析及分析步骤:

在我们保存扫描记录的namp_indentify.cap文件里,如图所示,我们可以看到:我们突出显示了分组6780,它显示了一个FIN , SYN , PSH ,URG等标志位均置位的TCP数据段,用于观察口标主机对这种奇怪的情况会如何响应类似nmap这样的端口扫描程序可以获得开放端口和操作系统的类型信息。从这些信息中,我们不难发现出系统可能的漏洞。例如,如果nmap识别出一个系统为linux 系统,并且80端口是打开的,攻击者就可能将攻击重点放于ApacheWeb服务器。虽然现在经常发布补丁来对已有漏洞进行补救,但是这也要求系统管理员

在他们被攻击前就要给系统打好补丁。

六、实验结论:

在不同种类的软、硬件设备,同种设备的不同版本之间,由不同设备构成的不同系统之间,以及同种系统在不同的设置条件下,都会存在各自不同的安全漏洞问题。我们可以使用namp工具对可能存在漏洞的开放端口进行扫描,从而达到检测漏洞的效果。

报告评分:

指导教师签字:

相关主题