zoukankan      html  css  js  c++  java
  • 第五课 实践验收

    第五课 实践验收

    验收内容

    请在网络攻防实验环境(以SEED_VM作为攻击机,Linux Metasploitable/Windows Metasploitable作为靶机)中完成TCP/IP协议栈重点协议的攻击实验,具体包括:

    • ARP缓存欺骗攻击

    • ICMP重定向攻击

    • SYN Flood攻击

    • TCP RST攻击

    • TCP会话劫持攻击。

    要求:有攻击成功的截图,描述每次攻击的原理。

    使用的虚拟机

    镜像类型 镜像名称 用户名 密码 su/su - 提权密码 IP地址
    linux攻击机 kali kali kali - 192.168.200.2
    windows攻击机 windowsXP Attacker - mima1234 - 192.168.200.3
    linux攻击机/靶机 SEEDUbuntu seed dees dees 192.168.200.4
    Linux靶机 Metasploitable2-Linux msfadmin msfadmin - 192.168.200.125
    windows靶机 win2kServer administrator mima1234 - 192.168.200.124
    蜜罐网关 roo roo honey honey 192.168.200.8

    实验

    ARP缓存欺骗攻击

    实验过程

    打开蜜网网关方便实验,通过su -提权,运行命令tcpdump -i eth0 icmp

    打开靶机A:Metasploitable2-Linux,和靶机B:win2kServer,用 A ping B:ping 192.168.200.124

    发现AB是联通的

    查看一下A的MAC地址ifconfig

    A的MAC地址为00:0c:29:1a:16:9e

    欺骗A,所以在攻击机当中执行以下命令···sudo netwox 33 -b -(A的mac地址) -g -(B的ip地址) -h -(A的mac地址) -i -(A的ip地址)···

    即在SEEDUbuntu中使用命令sudo netwox 33 -b 00:0c:29:1a:16:9e -g 192.168.200.124 -h 00:0c:29:1a:16:9e -i 192.168.200.125

    查看到攻击机地址为00:0c:29:b3:48:4c

    欺骗前后分别用arp -a查看A中arp缓存内容

    对比攻击前后两次内容可发现B的MAC地址已改为攻击机的MAC地址,达到欺骗A的目的。

    实验原理

    ARP协议是将IP地址映射为MAC地址的协议,其在协议上使用ARP请求及ARP应答报文来实现。

    arp -a是显示ARP缓存的命令命令,它可以显示电脑上所有的ARP缓存条目。

    ARP欺骗(ARP Spoofing),有时候也被称为ARP下毒(ARP Poisoning),是指攻击者在有线以太网或无线网络上发送伪造ARP消息,对特定IP所对应的MAC地址进行假冒欺骗,从而达到恶意目的的攻击技术。

    ARP欺骗攻击的根源在于,ARP协议在设计时认为局域网内部的所有用户都是可信的,是遵循协议设计规范的,但事实上并非如此,局域网内可以存在内部攻击者,或者已渗透进入局域网的外部攻击者或恶意代码。

    实验中,使用netwox进行ARP欺骗。Netwox中的33号工具可以构造任意的以太网ARP数据报,80号工具可以周期性地发送ARP应答报,因此可以利用这两个工具来实施ARP欺骗攻击。在本实验中使用了33号工具···sudo netwox 33 -b -(A的mac地址) -g -(B的ip地址) -h -(A的mac地址) -i -(A的ip地址)···

    镜像代号 镜像名称 用户名 密码 su/su - 提权密码 IP地址 MAC地址
    靶机A Metasploitable2-Linux msfadmin msfadmin - 192.168.200.125 00:0c:29:1a:16:9e
    靶机B win2kServer administrator mima1234 - 192.168.200.124
    攻击机C SEEDUbuntu seed dees dees 192.168.200.4 00:0c:29:b3:48:4c

    C分别向A、B发送伪造的应答(或者请求)数据包进行欺骗,使得A、B的ARP缓存表中的映射关系分别是IP(B)MAC(C),IP(A)MAC(C)。

    上图的关键部分“this address : 00:0c:29:b3:48:4c 192.168.200.124" 使得目标主机A保存这对映射关系而达到欺骗的目的,同理可进行对B的欺骗。完成对A、B的欺骗之后,再让B对A进行FTP访问,同时将A、B、C三者之间的通信数据包记录下来。

    ICMP重定向攻击

    镜像代号 镜像名称 用户名 密码 su/su - 提权密码 IP地址
    攻击机A kali kali kali - 192.168.200.2
    靶机B SEEDUbuntu seed dees dees 192.168.200.4
    靶机C windowsXP Attacker - mima1234 - 192.168.200.3

    实验过程

    查看WinXP的路由表信息netstat -rn

    在kali中输入命令sudo netwox 86 -f "host 192.168.200.3 " -g 192.168.200.2 -i 192.168.200.1

    然后我们来看一下wireshark捕到的包

    可以看出被攻击机WinXP一直在被发送icmp路由重定向攻击。

    再次在WinXP中查看路由表,发现kali的IP地址已经出现(若没有出现,则先在WinXP打开随便什么网站,再查看路由表)

    实验原理

    ICMP路由重定向攻击是指攻击者伪装成路由器发送虚假的ICMP路由路径控制报文,使得受害主机选择攻击者指定的路由路径,从而进行嗅探或假冒攻击的一种技术。

    ICMP重定向攻击就是利用ICMP路由重定向报文来改变主机的路由表,向目标机器发送重定向消息,自己则可以伪装成为路由器,使目标机器的数据报发送至攻击机从而加强监听。

    利用Netwox的第86号工具,可以进行ICMP重定向攻击实验,其工作原理是嗅探网络中的数据包,每嗅探到一个符合要求的数据包,就向该IP地址发送一个ICMP重定向报文,让该IP的主机重定向至预先设定的IP地址,例如本实验中的:

    sudo netwox 86 -f "host 192.168.200.3 " -g 192.168.200.2 -i 192.168.200.1-f代表靶机地址,-g代表靶机的下一跳地址,-i代表伪造的身份

    意思就嗅探到数据包的源或目的IP地址192.168.200.3时,就以192.168.200.1的名义向数据包的源地址发送一个ICMP重定向报文,使之使用192.168.200.2作为默认的路由。

    攻击机为192.168.200.2,受害机为192.168.200.3,网关为192.168.200.1,攻击机使用Netwox86号工具进行欺骗。当使用后Netwox便进入监听状态。

    在受害主机访问任意网页之后,受害主机在其路由表中添加了两条路由项,对发往网页的IP数据包,使用攻击机IP(192.168.200.2)作为其网关,而非事先配置的192.168.200.1。使用Wireshark对整个攻击过程的监听情况分析,从受害机给那个网页发送数据时,但是实际MAC地址是指向攻击机的;紧接着攻击机发现自己并非最优路由,于是发送给受害机一条ICMP重定向,告知其他使用正确的路由;接下来由攻击机转发受害机发送的数据,再接下来攻击机冒充路由发送的ICMP重定向报文。这样,攻击者便完全监听到了受害机的会话。

    SYN Flood攻击

    镜像名称 用户名 密码 su/su - 提权密码 IP地址 本实验中用途
    kali kali kali - 192.168.200.2 攻击机A
    Metasploitable2-Linux msfadmin msfadmin - 192.168.200.125 靶机B
    windowsXP Attacker - mima1234 - 192.168.200.3 靶机C

    实验过程

    使用WinXP登录靶机B,telnet 192.168.200.125

    输入用户名msfadmin,密码msfadmin,登陆成功

    在攻击机kali上使用Netwox中的76号工具,对靶机B的23号端口进行SYN Flood攻击sudo netwox 76 -i 192.168.200.125 -p 23

    打开Wireshark查看,可以看到攻击机向靶机发送了大量的虚假ip发出的SYN连接请求

    再次使用WinXP登录靶机B,telnet 192.168.200.125,发现已失去和主机的联系。

    实验原理

    TCP SYN Flood拒绝服务攻击,又称SYN洪泛攻击。利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的连接队列资源,从而不能够为正常用户提供服务。

    当客户端尝试与服务器建立TCP连接时,正常情况下客户端与服务器端会进行“TCP三次握手”过程。

    在SYN Flood攻击中,攻击主机向受害主机发送大量伪造源地址的TCP SYN报文,受害主机分配必要的资源,然后向源地址返回SYN/ACK包,并等待源端返回ACK包。由于大部分伪造源地址是非活跃的,这种情况下源端永远都不会返回ACK报文,受害主机继续不断地发送大量的SYN/ACK包,并将半开连接放入端口的积压队列中。由于端口的半连接队列的长度是有限的,半开连接队列就会很快填满,服务器也就拒绝新的连接,导致该端口无法响应其他机器进行的正常连接请求,最终使受害主机被拒绝服务。

    Netwox中的76号工具可实现SYN Flood拒绝服务攻击,netwox 76 -i ip -p port [-s spoofip]

    • 各参数含义如下:

      • -i --dst-ip ip目标IP地址,此处攻击靶机B,故IP地址为192.168.200.125

      • -p --dst-port port目标端口号,实验中对靶机23号端口进行SYN Flood攻击

      • -s --spoofip spoofipIP欺骗初始化类型,实验中本部分省略

    实验中,使用的命令为sudo netwox 76 -i 192.168.200.125 -p 23

    TCP RST攻击

    镜像名称 用户名 密码 su/su - 提权密码 IP地址 本实验中用途
    kali kali kali - 192.168.200.2 攻击机A
    Metasploitable2-Linux msfadmin msfadmin - 192.168.200.125 靶机B
    windowsXP Attacker - mima1234 - 192.168.200.3 靶机C

    实验过程

    使用WinXP登录靶机B,telnet 192.168.200.125

    输入用户名msfadmin,密码msfadmin,登陆成功

    在攻击机kali上使用Netwox的78号工具“Reset every TCP packet”来实现TCP RST攻击sudo netwox 78 -i 192.168.200.125

    打开攻击机中的Wireshark查看抓包情况,可以看到第16号数据Metasploitable2-Linux向windowsXP发送了RST

    此时回到WinXP再次尝试登录靶机B,发现已失去和主机的联系(如果刚刚没关窗口,回车即可)

    实验原理

    TCP RST攻击,也被称为伪造TCP重置报文攻击,是指一种假冒干扰TCP通信连接的技术方法。TCP协议头的标志位中拥有一个reset比特位,绝大部分数据包中该标志位都置为0,而一旦该标志位置为1,则接收该数据包的主机将立即断开这个TCP会话连接,不再利用该连接进行数据包发送和接收。

    在Netwox中,可以选择78号工具来实现TCP RST攻击。假设IP地址为192.168.200.125的主机B已经与IP地址为192.168.200.3的主机C建立了TCP连接,IP 地址为192.168.200.2的主机A企图对当前建立TCP连接进行RST攻击。在主机A中使用Netwox78号工具sudo netwox 78 -i 192.168.200.125,并输入主机B的IP地址作为攻击目标。此时,当主机C再向主机B发送信息时,主机A将监听到此信息,分析数据包的端口号、SEQ号后,假冒A的名义向B发送带有RST标志的分组,从而断开B与C的TCP连接。

    TCP会话劫持攻击

    镜像名称 用户名 密码 su/su - 提权密码 IP地址 本实验中用途
    kali kali kali - 192.168.200.2 攻击机A
    Metasploitable2-Linux msfadmin msfadmin - 192.168.200.125 靶机B(受害者)
    windowsXP Attacker - mima1234 - 192.168.200.3 靶机C(telnet 服务器)

    实验过程

    结合ARP欺骗来进行TCP会话劫持攻击。这里使用的ettercap是执行ARP欺骗嗅探的工具,通常用它来施行中间人攻击。

    在kali中打开节点的IP转发功能:

    sudo su
    
    cat /proc/sys/net/ipv4/ip_forward
    
    echo 1 > /proc/sys/net/ipv4/ip_forward
    
    cat /proc/sys/net/ipv4/ip_forward
    

    kali中,执行命令ettercap -G打开Ettercap工具,选择“eth0”作为嗅探监听接口

    点击左上角第三个图标,进入···Host List···

    点击左上角第二个按钮,Scan for hosts扫描局域网内攻击目标

    分别添加windowsXP的IP192.168.200.3和Metasploitable2-Linux的IP地址192.168.200.125为target1和target2

    选择菜单右上角第一个图标MITM menu中的 ARP poisoning 进行ARP欺骗

    并选择Sniff remote connections

    分别在两靶机中执行arp -a查看MAC地址缓存,发现ARP欺骗攻击已经成功。

    回到kali的Ettercap,选择菜单右上角第三个图标Ettercap Menu菜单栏上选择【View】-【Connections】

    在WinXP上执行telnet 192.168.200.125,发现失去联系

    回到kali可以看到Ettercap已经截获了telnet登录的两个主机的信息

    双击上方的会话连接,可进一步显示截获的数据,此时WinXP那边没有登录,没有截获到账号密码

    又重新telnet了一次,登录,返回可看到截获的账号密码

    查看kali中wireshark的抓包,发现了很多Tcp Dup ACK XXX#XTcp Retransmission,劫持成功!其中TCP Dup ACK XXX#X是重复应答#前的表示报文到哪个序号丢失,#后面的是表示第几次丢失,TCP Retransmission是超时引发的数据重传。也就是书上说的ACK风暴。

    实验原理

    TCP会话劫持,其目标是劫持通信双方已建立的TCP会话连接,假冒其中一方(通常是客户端)的身份,与另一方进行进一步通信。通常一些网络服务会在建立TCP会话之后进行应用层的身份认证,客户端在通过身份认证之后,就可以通过TCP会话连接对服务端进行控制或获取资源,期间不再需要再次进行身份认证。

    Victim 主机与telnet 服务器进行连接,并通过身份认证建立起会话;

    telnet 服务器将会向Victim 发送响应包,并包含服务器当前序列号(记为SVR_ SEQ),以及期望客户端发送的下一个序列号(记为SVR_ _ACK);

    攻击者通过ARP欺骗实施中间人攻击,可以嗅探获得Victim和telnet服务器间的通信内容,然后就假冒Victim的IP地址及身份,向telnet服务器发送数据包,宣称自己就
    是Victim。而攻击者发送数据包中的序列号(记为CLT_ SEQ)必须满足条件: SVR_ ACK<=CLT_ SEQ<= SVR_ ACK+SVR_ WND,其中SVR_ WND为服务器的接收窗口,telnet服务器才会接收该数据包,如此,攻击者就劫持了Victim 与telnet 服务器间的会话,并以Victim已经验证的身份执行任意命令;

    靶机B仍然会继续维持与winXP之间的连接会话,但由于与winXP之间的ACK值互相不再匹配产生出“ACK风暴”,即在攻击机kali注入数据包后,B在接收到winXP的响应包后,将会发现ACK值不正确,并向winXP发回含有它所期望ACK值的ACK包,期望重新建立起同步状态,而winXP收到靶机B的ACK包后,也会发现它并不符合它的接收条件,因此它再次返回了一个ACK包,这样就构成了死循环,在网络上来回发送ACK,直到其中一个ACK由于网络拥塞或其他原因丢失为止。

  • 相关阅读:
    SpringBoot2.0 整合 QuartJob ,实现定时器实时管理
    SpringBoot2.0 整合 Swagger2 ,构建接口管理界面
    SpringBoot 2.0 整合sharding-jdbc中间件,实现数据分库分表
    基于 CODING 轻松搞定持续集成
    CODING 受邀参与 DevOps 标准体系之系统和工具&技术运营标准技术专家研讨会
    CODING 受邀参加《腾讯全球数字生态大会》
    CODING 告诉你硅谷的研发项目管理之道系列(6)
    CODING 告诉你硅谷的研发项目管理之道(3)
    CODING 告诉你硅谷项目经理的项目管理之道(2)
    CODING 签约天津大学,助力高校“产学”接轨
  • 原文地址:https://www.cnblogs.com/qianxiaoxu/p/12620924.html
Copyright © 2011-2022 走看看