版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、TCP/IP攻击实验实验中南大学TCP/IP攻击实验实验报告学生姓名 学 院 信息科学与工程学院 专业班级 完成时间 2015年11月29日 目 录1.实验描述32.实验步骤32.1 环境搭建32.2 实验1:ARP缓存中毒42.3 实验2:ICMP重定向攻击62.4 实验3:SYN洪流攻击72.5 实验4:在telnet和ssh连接上的TCP RST攻击102.6 实验5:对视频流应用程序的TCP RST攻击122.7 实验6:ICMP盲目连接重置和源端关闭攻击122.8 实验7:TCP报文劫持133.总结14TCP/IP攻击实验1.实验描述【实验背景】由于TCP/IP协议是Internet
2、的基础协议,所以对TCP/IP协议的完善和改进是非常必要的。TCP/IP协议从开始设计时候并没有考虑到现在网络上如此多的威胁,由此导致了许多形形色色的攻击方法,一般如果是针对协议原理的攻击(尤其DDOS),我们将无能为力。 TCP/IP攻击的常用原理有: (1) 源地址欺骗(Source Address Spoofing)、IP欺骗(IP Spoofing)和DNS欺骗(DNS Spoofing);(2) 路由选择信息协议攻击(RIP Attacks);(3) 源路由选择欺骗(Source Routing Spoofing) ;(4) TCP序列号欺骗和攻击(TCP Sequence Numb
3、er Spoofing and Attack)。【实验目的】 基于TCP/IP协议进行攻击实验,了解TCP/IP协议的具体机制。2.实验步骤 2.1 环境搭建这里我使用三台虚拟机做实验,其中一个用于攻击;另一个用于被攻击;第三个作为观察者使用;把三台主机放在同一个LAN中,其配置信息参照如下所示(实际在实验过程中有所改动):这里我使用的是SEED实验室已经搭建好,并且已经安装好相关的netwox工具箱和Wireshark工具箱的Ubuntu系统,与此同时三台虚拟机都需要打开FTP和Telnet服务:使用如下命令来完成上述任务Start the ftp server # servicevsftp
4、d start Start the telnet server # serviceopenbsd-inetd start2.2 实验1:ARP缓存中毒【实验背景】ARP缓存是ARP协议的重要的一部分。作为一个ARP协议执行结果,一旦一个在MAC地址和IP地址之间的映射被决定,这个映射就被缓存。因此,如果影射已经存在在缓存中,就没有必要再重复ARP协议。然而,因为ARP协议是无状态的,缓存可以被轻易的通过恶意的ARP信息修改。这样的一种攻击叫做ARP欺骗。在这样一个攻击中,攻击者使用欺骗ARP信息来哄骗受害者接受一个无效的MAC-IP映射,并且在缓存中保存这个映射。取决于攻击者的目的不同,这里可
5、能出现各种类型的后果。例如,攻击者将一个不存在的MAC地址关联受害者的默认网关的IP地址,通过此来启动一个Dos攻击。【实验内容】当发送方B需要向接收方C发送一个数据时,B会从自己的ARP表中通过C的IP地址来查找相应的C的MAC地址。如果C的MAC地址不在B的ARP表中,B就向全网发广播包,要求C主机返回它的MAC地址。当B接收到C返回的MAC地址时,B就将更新它的ARP表。同时,C主机也将B主机和它对应的MAC地址记录到C的ARP表中。ARP表的更新采用牛奶原则,也就是说,ARP表将无条件接受最后一次收到的ARP包作为ARP更新的数据。鉴于此,攻击者A可以利用一些工具伪造一个ARP包,将C
6、的IP对应的MAC地址修改为自己的MAC地址,并将这个数据包发送给B。B在更新了ARP表之后,新的发往C的数据包就会被发送到B。查询netwox说明后得知,33号工具用于伪造ARP包。使用命令查看该工具的详细使用方法。netwox 33 -help2在进行攻击之前,先在三台主机上互相ping。然后使用arp a命令查看ARP表之后,在三台主机全部开启的情况下,攻击机A发动攻击Netwox 80 -e “mac地址” -i “ip地址”之后,使用同样的方法,给C主机发送ARP欺骗包。2.3 实验2:ICMP重定向攻击【实验背景】ICMP重定向被路由器用来向更新主机的路由信息,最开始只有最少的路由
7、信息。当一台主机接收到一个ICMP重定向信息,他将会根据接收到的信息来修改路由表。因为缺少确认,如果攻击者希望受害者设置它的路由信息为一个特别形式,他们可以发送欺骗ICMP重定向信息给受害者,并且欺骗受害者修改它的路由表。【实验内容】ICMP重定向信息是路由器向主机提供实时的路由信息,当一个主机收到ICMP重定向信息时,它就会根据这个信息来更新自己的路由表。由于缺乏必要的合法性检查,如果一个黑客想要被攻击的主机修改它的路由表,黑客就会发送ICMP重定向信息给被攻击的主机,让该主机按照黑客的要求来修改路由表。在三台机器上搭建的路由指令A的路由配置指令sudo ifconfig eth0 *.*.
8、220.128 netmask sudo ifconfig eth1 *.*.205.129 netmask sudo route add -net *.*.220.0/24 gw *.*.220.128sudo route add -net *.*.205.0/24 gw *.*.205.129sudo sysctl -w net.ipv4,ip_forward=1B的路由配置指令sudo ifconfig eth0 *.*.205.128 netmask sudo route add default gw *.*
9、.220.128sudo sysctl -w net.ipv4.ip_forward=1C的路由配置指令sudo ifconfig eth0 *.*.205.128 netmask sudo route add default gw *.*.205.129sudo sysctl -w net.ipv4.ip_forward=1使用netwox86号工具可以完成这个攻击。攻击机A指令sudo netwox 86 -f "host *.*.220.129" -g *.*.220.130 -c 1 -i *.*.220.131-f “host 被攻击机的
10、IP” g 希望对方网关修改后的IP c 类型 i 源IP这个指令只有在按下ctrl+c时才会结束,否则一直发送ICMP包。此时,在被攻击机B中使用WIRESHRK监听eth0,发现不断收到ICMP包,2.4 实验3:SYN洪流攻击【实验背景】SYN洪流攻击是Dos攻击的一种形式,攻击者发送许多SYN请求给受害者的TCP端口,但是攻击者没有完成三次握手的意向。攻击者或者使用虚假的IP地址,或者不继续过程。在这个攻击中,攻击者可以使受害者的用于半开连接的队列溢出,例如,一个完成SYN,SYN-ACK但没有收到最后的ACK回复的连接。当这个队列满了的时候,受害者不能够在进行更多的连接。SYN 缓存
11、策略:SYN缓存是是对抗SYN洪流攻击的一种防御机制。如果机器检测到它正在被SYN洪流攻击,这种机制将会kick in。【实验内容】如果一个TCP连接没有完成三次握手,它将被放入半开连接队列,而半开连接队列有最大长度,如果连接数量达到最大容量时,新的连接就不能够被建立。SYN洪泛攻击就是通过未完成的TCP请求来试图充满半开连接队列,使得正常的连接不能够被建立,达到攻击的效果。在这个实验中,使用telnet服务作为攻击目标,在23号端口发起SYN洪泛攻击。首先,尝试在主机B和C之间建立telnet连接,说明网络联通。主机B远程登录主机C的账户在主机C上,通过命令netstat na | grep
12、 tcp 命令查看当前的TCP相关端口的状态,发现23号端口处于联通状态在主机C上查看C的半开连接队列的最大长度为128,缓冲保护开启。在主机B中使用exit命令断开与C的telnet连接。之后在主机A中使用netwox76号工具发动针对主机C23号端口的SYN攻击。回到主机B中,尝试与主机C进行telnet远程连接,从上图及实验过程可以看出,虽然连接的速度很慢,但是是可以连接上的。我在主机B上开启了两个终端,同时试图进行telnet连接。到主机C中查看端口连接情况,如图4.3.5和图4.3.6。发现,队列中充斥着大量半开连接,目的端口号都是C机的23号端口,但是源主机IP和端口却不一致,而且
13、端口号都是不常用端口,可以判断出,这极有可能是一次SYN攻击。2.5 实验4:在telnet和ssh连接上的TCP RST攻击【实验背景】TCP RST攻击可以终止一个在两个受害者之间已经建立的TCP连接。例如,如果这里有一个在A和B之间已经建立的telnet连接,攻击者可以伪造一个A发向B的RST包,打破这个存在的连接。【实验内容】首先完成主机B与主机C的telnet连接,在C上查看端口连接情况,如图4.4.2,已经完成主机B与主机C23端口的连接。这时,在主机A中通过netwox78号工具发起针对B主机的RST攻击。回到B主机中,发现没有什么变化,但是当回车之后,出现连接已经被其他主机断开
14、,并退回到主机B的账户下在主机C中查看此时的连接情况,如图4.4.4。可以看出BC主机的23端口的连接已经被断开,处于监听状态。注意,此时主机A的攻击并没有停止。回到主机B中,再次尝试连接主机C,发现最开始是连接上了,但是还没来得及显示后续内容,连接就被中断。2.6 实验5:对视频流应用程序的TCP RST攻击【实验背景】同实验4。【实验内容】由于SEED实验室中配置的Ubuntu没有视频流应用,故此没有完成此实验,但其实与实验4是相同的原理。2.7 实验6:ICMP盲目连接重置和源端关闭攻击【实验背景】ICMP信息同样可以被用于达成连接重置攻击。为了达到这个目的,攻击者发送一条显示“硬错误”
15、的ICMP的错误信息给TCP连接两端的任意一方。连接将会被立即中断,因为在RFC1122中主机在接收到这样一个TCMP错误包时,应当立即中断相关的连接。RFC1122定义“硬错误”为一个目的不可达且协议无效、端口无效、标志位缺失和DF位设置的ICMP错误信息ICMP源端关闭信息被拥塞路由器用于告知TCP发送者减缓发送包的速度。攻击者可以制定这样的信息来实施对TCP发送者的拒绝服务攻击。【实验内容】实验中使用的是实验2中的拓扑结构及IP地址。首先在B和C见建立telnet连接:A是攻击机,A试图伪造一个ICMP错误信息的包,发送给B或C(实验中发送给了B),来终止BC见的连接。 接下来,在C主机
16、中查看端口连接信息,如图4.5.1,发现连接并没有终止 在B机中查看wireshark抓取的eth0的流量,如图4.5.2,发现ICMP错误信息包B收到了。 出现这种情况的原因可能是在高版本的ubuntu中已经制订了一些策略来防止这些攻击。2.8 实验7:TCP报文劫持【实验背景】会话劫持利用了TCP/IP工作原理来设计攻击。TCP使用端到端的连接,即TCP用(源IP,源TCP端口号,目的IP,目的TCP端号)来唯一标识每一条已经建立连接的TCP链路。另外,TCP在进行数据传输时,TCP报文首部的两个字段序号(seq)和确认序号(ackseq)非常重要。序号(seq)和确认序号(ackseq)
17、是与所携带TCP数据净荷(payload)的多少有数值上的关系:序号字段(seq)指出了本报文中传送的数据在发送主机所要传送的整个数据流中的顺序号,而确认序号字段(ackseq)指出了发送本报文的主机希望接收的对方主机中下一个八位组的顺序号。因此,对于一台主机来说,其收发的两个相临TCP报文之间的序号和确认序号的关系为:它所要发出的报文中的seq值应等于它所刚收到的报文中的ackseq的值,而它所要发送报文中ackseq的值应为它所收到报文中seq的值加上该报文中所发送的TCP净荷的长度。【实验内容】 2号机 Telnet到3号机,实验在1号机上劫持2号机到3号机上的Telnet报文。3.总结通过这一次内
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 自然香水课程设计图
- 研学旅行课程设计感受
- 路基路面课程设计集
- 铸造振动落砂机课程设计
- 运用微课程设计教学案例
- 采矿学课程设计采区模板
- 网络数据流量课程设计
- 筛板塔苯-氯苯课程设计
- 钩冲压课程设计
- 稳压恒流电源课程设计
- 2020小升初复习-小升初英语总复习题型专题训练-完形填空15篇
- 2023年浙江省公务员考试面试真题解析
- GB/T 5796.3-2022梯形螺纹第3部分:基本尺寸
- GB/T 16407-2006声学医用体外压力脉冲碎石机的声场特性和测量
- 简洁蓝色科技商业PPT模板
- 钱素云先进事迹学习心得体会
- 道路客运车辆安全检查表
- 宋晓峰辣目洋子小品《来啦老妹儿》剧本台词手稿
- 附录C(资料性)消防安全评估记录表示例
- 噪音检测记录表
- 推荐系统之协同过滤算法
评论
0/150
提交评论