20211907 刘昌赫 2021-2022-2 《网络攻防实践》第4次作业

实验原理
ARP 欺骗攻击:ARP 是个早期的网络协议,RFC826在 1980就出版了。早期的互联网采取的是信任模式,在科研、大学内部使用,追求功能、速度,没考虑网络安全。ARP 欺骗就是非法的宣称自己是某个 IP 的 MAC 地址,使询问者错误的更新 ARP 缓存表,这样被欺骗主机发送的数据就会发送到发起攻击的主机,而不是理想的目的 IP 主机。如果攻击者将目的主机也欺骗,就可以实现对两台主机之间数据传输的控制。仅能在以太网(局域网如机房、内网、公司网络等)进行。无法对外网(互联网、非本区域内的局域网)攻击。
ICMP重定向攻击:ICMP重定向信息是路由器向主机提供实时的路由信息,当一个主机收到ICMP重定向信息时,它就会根据这个信息来更新自己的路由表。由于缺乏必要的合法性检查,如果一个黑客想要被攻击的主机修改它的路由表,黑客就会发送ICMP重定向信息给被攻击的主机,让该主机按照黑客的要求来修改路由表。
YN Flood攻击概念
SYN Flood攻击是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,常用假冒的IP或IP号段发来海量的请求连接的第一个握手包(SYN包),被攻击服务器回应第二个握手包(SYN+ ACK包),因为对方是假冒IP对方永远收不到包且不会回应第三个握手包。导致被攻击服务器保持大量SYN RECV状态的“半连接”,并且会重试默认5次回应第二个握手包,塞满TCP等待连接队列,资源耗尽(CPU满负荷或内存不足) ,让正常的业务请求连接不进来。
TCP RST攻击;TCP重置报文会直接关闭一个TCP会话连接,恶意攻击者滥用TCP重置报文,对正常的网络通信造成严重的威胁

实验内容
任务:在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。
本次实验中使用的虚拟机:
A:kali虚拟机(攻击机)
B: windows本机(一号靶机)
C: SEED_Ubuntu虚拟机(二号靶机)

主机 IP地址 MAC地址
A 192.168.1.112 00:0c:29:74:18:3b
B 192.168.1.105 F0-77-C3-15-DE-E8
C 192.168.1.103 00:0c:29:cb:83:e2

ARP欺骗攻击

先ping一下看一下连通性.
本次实验使用netwox进行ARP欺骗,首先使用sudo apt-get install netwox命令安装。

注:Netwox可以使用33号工具 Spoof EthernetArp packet(构造任意的以太网ARP数据报),80号工具Periodically send ARP replies(周期性地发送ARP应答)。
之后,输入命令:netwox 80 00:0c:29:74:18:3b -i 192.168.1.103,成功的将攻击机伪装成Windows。

这样就完成ARP欺骗,我们打开wireshark,让seed靶机去ping Windows靶机,进而kali就可以监听到两个靶机之间的通信了。
ICMP重定向攻击
使用netwox 86 -f "host 192.168.1.103" -g 192.168.1.112 -i 192.168.1.1命令,这句话的意思是,嗅探网络中来自SEED靶机192.168.1.103的数据包时,以网关192.168.1.1(网关)的名义,向数据包的源地址发送一个ICMP重定向报文,使之使用192.168.1.112作为默认的路由.
之后用seed去ping Windows,得到下图的结果:

可以看到下一跳路由(nexthop)为攻击机192.168.1.112
TCP SYN Flood攻击
我们用Windows对SEED靶机发起telnet访问,命令为:telnet 192.168.1.103,使用SEED的用户名和密码登录(用户:seed 密码:dees),发现可以正常连接,输入exit退出

在kali打开wireshark抓包,并在终端使用netwox 76 -i 192.168.1.103 -p 23命令开始对SEED靶机进行SYN Flood攻击,在wireshark可以看到伪造源IP的SYN包

TCP RST攻击
我们打开kali,使用netwox 78 -i 192.168.1.103命令,这样就会发现在攻击后,Windows靶机失去了和seed靶机的链接。

TCP会话劫持攻击
在本次实验中,我们需要在kali中安装ettercap组件,安装过程如下:
sudo apt-get install ettercap-graphical
sudo su
ettercap -G
这样就安好了。
之后我们先用他来进行一次ARP欺骗,打开之后依次点击Sniff→选择网卡后点击确定 →Host→Scan for hosts→Host list→选择两台靶机分别为targer1和target2 →Mitm→ ARP poisoning。至此ARP欺骗自动完成。
之后,我们可以通过view查看所有的网络连接,选择我们的TCP.port==23的连接就可以找到我么们的telnet登录会话

回头去看wireshark抓到的包。会看到大片的红色错误报文,由两类报文组成:TCP Dup ACK XXXX和TCP Retransmission。其中TCP Dup ACK XXXX表示序号为XXXX的报文丢失,TCP Retransmission表示请求数据重传,这就说明劫持成功了。

学习中遇到的问题及解决

问题:开始时,Windows总是ping不到seed靶机,显示没响应。
解决:按照教程重装了一遍seed靶机,之后问题顺利解决。
学习感想和体会
在本次实验中,我为了图省事直接用本机Windows来当靶机,在网上查阅相关信息后发现这样会有信息泄露的风险,看来以后还是得按部就班的做,不能贪小便宜。

posted @ 2022-04-08 17:02  lch99722  阅读(13)  评论(0编辑  收藏  举报