Day 29 Sniffing & Spoofing 监听与欺骗 (dnschef)

前言

今天要体验的工具位於Kali的09-Sniffing & Spoofing分类,这类的工具主要用於拦截资讯,然後窜改後欺骗目标使其误认沟通对象或是混淆来源。

工具介绍

dnschef是用於DNS代理,可以伪造域名进行拦截,比如说把往google.com的流量都拦截下来,不转发到真实的主机,而是转发到攻击者自己架设的主机。在介绍工具之前,先介绍一下测试环境

主机 角色 IP位址
Windows PC 使用者端 192.168.1.70
Kali Linux dnschef代理DNS 192.168.1.76
靶机 自架假网站 192.168.1.86

接下来目标是让使用者端用浏览器前往google时,会去到我们自行架设的假网站


Kali Linux设置

首先要在Kali设定dnschef,用法如下

dnschef --fakeip 192.168.1.86 --fakedomains google.com --interface=192.168.1.76

fakedomains可以用逗号隔开,表示这些域名都会被fakeip192.168.1.86所取代,而interface是指定DNS listener,这里指的就是Kali这台的介面

执行结果如下,可以看到几个重点

  • DNSChef192.168.1.76上运行
  • 符合google.com的流量将会被导向192.168.1.86指定的假主机IP位址
          _                _          __  
         | | version 0.4  | |        / _| 
       __| |_ __  ___  ___| |__   ___| |_ 
      / _` | '_ \/ __|/ __| '_ \ / _ \  _|
     | (_| | | | \__ \ (__| | | |  __/ |  
      \__,_|_| |_|___/\___|_| |_|\___|_|  
                   [email protected]  

(10:30:23) [*] DNSChef started on interface: 192.168.1.76
(10:30:23) [*] Using the following nameservers: 8.8.8.8
(10:30:23) [*] Cooking A replies to point to 192.168.1.86 matching: google.com

运行後也要记得修改/etc/resolv.conf,在最上方加入一笔

nameservers 192.168.1.76

然後用ping google.com测试一下,可以确定目前google.com认到的IP已经变成了我们指定的假IP了

PING google.com (192.168.1.86) 56(84) bytes of data.
64 bytes from 192.168.1.86 (192.168.1.86): icmp_seq=1 ttl=64 time=0.762 ms
64 bytes from 192.168.1.86 (192.168.1.86): icmp_seq=2 ttl=64 time=0.644 ms

靶机设置

靶机的建立可以参考Day2靶机建立这篇流程,如果建立过,那直接开启VM就可以了,主要是提供HTTP网站,在这个测试情境里扮演攻击者的假网站。


Windows PC 使用者端设置

Windows只要设定好DNS服务器,指定为dnschef正在运行的DNS代理
https://ithelp.ithome.com.tw/upload/images/20211014/20140317Dyz7wciz14.png

设定完成後,可以用命令提示字元ping google.com确认

Ping google.com [192.168.1.76] (使用 32 位元组的资料):
回覆自 192.168.1.76: 位元组=32 时间<1ms TTL=64
回覆自 192.168.1.76: 位元组=32 时间<1ms TTL=64
回覆自 192.168.1.76: 位元组=32 时间<1ms TTL=64
回覆自 192.168.1.76: 位元组=32 时间<1ms TTL=64

用浏览器前往google.com可以发现不是平常熟悉的搜寻页面,而是靶机上所架设的网站
https://ithelp.ithome.com.tw/upload/images/20211014/20140317frWnOVBLNx.png


结语

dnschef除了可以模拟DNS欺骗之外,在某些测试情境下也特别好用,例如在手机网路环境测试时,如果想要暂时修改hosts去连测试站台时,可能需要经过root才有办法,在某些模拟器环境也是,即使能够模拟root,但也因为唯读而无法去修改hosts文件,这些状况就可以利用DNS代理的方式来进行测试。


<<:  Day 30 - 永丰银行付款外挂发布、铁人赛总结

>>:  [第三十天]从0开始的UnityAR手机游戏开发-另一个物体碰到小龙时会扣血的脚本和後记

day16 coroutine job 的那些状态,job state

前言 今天东西不多,算是给前面做一个补充资讯,明天开始会讲Flow了,又是会是超长的文章 正文 想不...

[PoEAA] Data Source Architectural Pattern - Data Mapper

本篇同步发布於个人Blog: [PoEAA] Data Source Architectural P...

Day 22 - 物件导向与向量3 - class + mouseInpress 设定

接下来设定一些基本的设定需求 分别拆成 bullet 跟 ball(细胞)两个class的写法 cl...

[Day10] 学习笔记 - 使用 VS Code操作 Git & GitHub

事前准备 安装好 VS Code。 拥有 GitHub帐号,并开好一个练习用的 repository...

[Day07- React Native]建立 React Native 专案

React Native 官网 现在有许多可以建立双平台的工具,像是 Golang 的 Flutte...