IP欺骗和TCP会话窃用实验报告

  • 格式:docx
  • 大小:566.94 KB
  • 文档页数:6

一、实验目的:
了解IP协议和TCP协议的漏洞和IP欺骗和TCP会话窃用;
二、实验内容:
观察TCP会话劫持和TCP会话终止数据。

三、实验原理:
IP欺骗就是指一个伪造的源IP地址发送分组。

通过构造源IP和目的IP地址以及源端口和目的端口相匹配的IP分组,攻击者可以利用IP欺骗向TCP数据流中发送数据段。

四、实验器材、环境配置操作及实验数据的产生:
实验器材:服务器、集线器、客户端主机和攻击者主机。

环境配置:使用连接在网络中的两台台式机,一台作为合法的telnet和FTP服
务器,另一台作为合法的客户端。

第三台(攻击者)连接到网络中,对合法主
机进行攻击。

实验环境配置如图4-1所示
图4-1 实验配置
实验数据的产生:用几个合法的客户端到服务器的telnet会话,每一个telnet 会话都被第三台机器通过IP欺骗和TCP会话窃用进行攻击。

一些会话以FIN或RST 位终止,另一些会话被劫持,攻击者的数据流入到了这些会话的数据流中。

五、实验数据分析及分析步骤:
TCP会话劫持数据分析:
首先用Ethereal打开telnet1_hijacked.cap文件。

在分组1和分组2中可以看到SYN和SYNACK标志。

分组1是从IP地址为,服务器端的MAC地址为:00:00:c0:29:36:e8。

在SYNACK分组中,源地址和目的地址则正好相反。

图5-1 分析分组1和分组2数据
这个TCP连接可用如下显示过滤器分离出来:(ip.addr eq and ip.addr eq and (tcp.port eq 1073 and tcp.port eq 23)的TCP连接中总共有98125个分组。

当使用一下修改过滤规则后只有98123个分组。

为了找到丢失的两个分组。

将过滤规则改为:!(eth.src eq 00:00:c0:29:36:e8)and !(eth.src eq 00:06:5b:d5:1e:e7)(如图5-2)
图5-2 排除非客户端的MAC数据
可以发现,这两个分组的发送方的IP地址都为客户端(,而客户端的MAC地址00:06:5b:d5:1e:e7。

第一个伪造分组的序号为233,含有10个字节的数据。

10个字节的数据代表10个ASCII码字符,前8个ASCII码为0x08字符,后面2个ASCII为0x0a字符。

ASCII码0x08代表退格符,ASCII码0x0a代表换行符。

当这个分组加入TCP数据
流后,服务器会认为用户键入退格符8次,然后回车符两次。

虽然看起来可能不会有太大的危害,它的目的仅仅是清空合法用户的输入,然后显示一个空白命令行给用户。

但是,这个可以帮组确保攻击者构造的下一组所能实现的功能,不再是简单地在合法用户输入的任何命令行末尾添加一些信息。

如图5-3所示
图5-3 分组1数据信息
第二个伪造分组的序号为243,含有37个字节的数据。

主要包括以下的命令:echo “echo HACKED” >>$HOME/.profile。

这个命令后紧跟着一个ASCII码为0x0a 的字符,提示换行输入新的命令。

这个命令会把“echoHACKED”字符添加到用户的根目录下名为.profile的文件中。

在一些命令行shell中,用户登录后首先读取:profile文件并执行其中所有命令。

用户通常都根据需要为创建他们的工作环境而执行一些列命令。

将这些命令放置到.profile文件中意味着用户在每次登录后都不用手动地执行这些设置命令。

通过在.profile文件中添加“echoHACKED”命令,当用户下次登录时,他会在屏幕上看见“HACKED”字符串。

如图5-4所示
图5-4 分组2数据信息
TCP会话终止数据分析:
在telnet1_hijacked.cap文件中,攻击者成功地加入了实现其自身的“hijack”会话,同时使合法客户端和服务器无法通信。

在telnet2_fin.cap文件中,攻击者发送了含有它自己的分组535。

这次攻击者是伪装为服务器向客户端发送伪造的分组。

客户端用它自己分组538中的FIN位作为响应。

而对于真正的服务器,它是第一次接收到客户端关闭连接的分组,这样它会认为客户端希望断开连接,并以一个分组540中的FIN位作为响应。

客户端接收到这个分组后,服务器和客户端的连接已经断开,客户端会发送一个窗口位为0和RST位置的分组。

这样,就完全断开了客户端和服务器的连接。

如图5-5所示
图5-5 FIN攻击
telnet3_rst.cap文件中,攻击者向客户段发送了一个RST位置位的分组339。

攻击者再次伪装服务器,并向客户端发送伪造的分组。

客户端会立刻直接关闭与服务器的连接,而不是按通常的三次握手的步骤来关闭连接。

而此时真正的服务器并不知道发生了这些,它会继续向客户端发送分组340。

当分组到达客户端后,客户端会响应连接已经关闭的信息。

如图5-6所示
在attacker_ftp.cap文件,攻击者使用通过网络嗅探到用户口令来与服务器建立一个FTP连接,并获取服务器文件。

在这个连接中,攻击者不需要进行IP欺骗,它可以简单的使用自己的IP地址:,而不再仅仅是插入一些命令到数据流中。

如图5-7所示
图5-6 RST攻击
图5-7 ftp攻击
六、实验结论:
IP欺骗(IP Spoofing)和DNS欺骗(DNS Spoofing).其基本原理:是利用IP地址并不是出厂的时候与MAC固定在一起的,攻击者通过自封包和修改网络节点的IP 地址,冒充某个可信节点的IP地址,进行攻击。

在TCP会话劫持中,只有攻击者发送的是接受者所期望的序号的分组,就可以成功地实现“会话窃用”。

在“会话窃取”成功后,导致正常主机和服务器两边一直僵持状态。

在TCP会话终止中,攻击者发送了一个带FIN或RST位的信息到目标主机,他会成功关闭这次连接。

但是它没有获得非法途径访问资源,能阻止合法用户访问资源。

然而攻击者通过网络嗅探到的用户口令与服务器建立一个FTP连接,并获取服务器文件。

报告评分:
指导教师签字:。