zoukankan      html  css  js  c++  java
  • 20169202 2016-2017-2《TCP/IP协议攻击》实验总结--十一周

    APR缓存中毒(ARP cache poisoning)

    实验原理

    ARP缓存是ARP协议的重要组成部分。ARP协议运行的目标就是建立MAC地址和IP地址的映射,然后把这一映射关系保存在ARP缓存中,使得不必重复运行ARP协议。因为ARP缓存中的映射表并不是一直不变的,主机会定期发送ARP请求来更新它的ARP映射表,利用这个机制,攻击者可以伪造ARP应答帧使得主机错误的更新自己的ARP映射表,这个过程就是ARP缓存中毒。
    这样的后果即使要么使主机发送MAC帧到错误的MAC地址,导致数据被窃听;要么由于MAC地址不存在,导致数据发送不成功。

    实验内容

    当发送方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的IP对应的MAC地址修改为自己的MAC地址,并将这个数据包发送给B。B在更新了ARP表之后,新的发往C的数据包就会被发送到B。 
    查询netwox说明后得知,33号工具用于伪造ARP包。使用命令查看该工具的详细使用方法。 
    netwox 33 --help2

    在进行攻击之前,先在三台主机上互相ping通

    用虚拟机A进行虚假ARP信息广播:

    sudo netwox 80 "00:0c:29:5f:1b:12" -i "192.168.232.130"    //告诉靶机B,靶机C192.168.232.130的MAC地址 00:0c:29:5f:1b:12
    

    然后使用arp –a命令查看ARP表

    • 1---互相ping通
    • 2---攻击机发送报文之后,被欺骗主机与通信对方连通时出错
    • 3---arp -a 查看结果,192.168.232.130的MAC地址被改为攻击机的MAC地址

    ICMP重定向攻击

    实验原理

    ICMP重定向攻击
    ICMP重定向信息是路由器向主机提供实时的路由信息,当一个主机收到ICMP重定向信息时,它就会根据这个信息来更新自己的路由表。由于缺乏必要的合法性检查,如果一个黑客想要被攻击的主机修改它的路由表,黑客就会发送ICMP重定向信息给被攻击的主机,让该主机按照黑客的要求来修改路由表。

    实验内容

    ICMP重定向信息是路由器向主机提供实时的路由信息,当一个主机收到ICMP重定向信息时,它就会根据这个信息来更新自己的路由表。由于缺乏必要的合法性检查,如果一个黑客想要被攻击的主机修改它的路由表,黑客就会发送ICMP重定向信息给被攻击的主机,让该主机按照黑客的要求来修改路由表。
    Machine 1 :(攻击者)
    MAC:00: 0c:29:5f:1b:12
    IP:192.168.232.139

    默认网关:
    IP:192.168.232.2

    Machine 3:(受害者)
    MAC:00:0c:29:7e:0f:57
    IP:192.168.232.137

    实施攻击

    现在Machine 1以默认网关的名义向Machine 3发送IMCP重定位信息,通知Machine 3,默认路由的地址已经改为Machine 1(192.168.232.139)。
    同时为了让Machine 1能够转发数据包,需要对Machine 1进行转发数据包的设置,可用下面的命令实现:
    sudo sysctl net.ipv4.ip_forward=1
    执行示意图如下:

    为了让虚拟机Machine 3认为默认网关已经被修改成了虚拟机Machine 1,需要不断广播ICMP重定向信息。为了实现这个广播,可以使用netwox命令sudo netwox 86 -d "Eth0" --gw "192.168.232.139" -i "192.168.232.2",这个命令代表广播ICMP重定向信息,把IP:192.168.232.2重定向为IP:192.168.232.139,前者为默认网关,后者为虚拟机Machine 1。


    此时 Machine 3再次访问192.168.232.2时,它会首先把数据包发送至新的路由 Machine 1,再由machine 1来转发数据包,从而达到Machine 3的路由表被更新的效果:
    示意图如下:

    参考资料

    TCP/IP协议攻击实验1
    TCP/IP协议攻击实验2
    基于TCP/IP的攻击实验

  • 相关阅读:
    IntelliJ Idea 常用快捷键列表
    IPv6地址存储
    一文看懂java的IO流
    AchartEngine的柱状图属性设置
    绘制图表改变其大小
    在Android上用AChartEngine轻松绘制图表
    Android 图表绘制 achartengine 示例解析
    封装一个类搞定90%安卓客户端与服务器端交互
    安卓图表引擎AChartEngine(三)
    AchartEngine 的学习
  • 原文地址:https://www.cnblogs.com/zhaohui801/p/6847383.html
Copyright © 2011-2022 走看看