现在需要知道一台路由器中保存的拨号账号密码,但是不知道路由器的管理密码,显然也不能重置路由器来重置管理密码。因此,尝试使用抓包的方式来抓取路由器拨号时使用的账号密码。
Reference: PPPoE密码嗅探 (zhufan.net)
安装一台Ubuntu虚拟机。我之前使用VirtualBox,但开启了Hyper-V之后的VirtualBox性能极其低下,因此改用VMware。
在Ubuntu虚拟机里安装一个虚假的PPPoE服务器,配置pap明文登录模式,让路由器对这个虚假服务器进行拨号,方便我们进行抓包。
1
2
3
4
5
6
7
8
9
10
11sudo su
#以下命令使用root用户执行
## 安装pppoe并创建用户
apt update
apt install -y pppoe tshark
touch /etc/ppp/pppoe-server-options
echo "require-pap" > /etc/ppp/pppoe-server-options
echo "lcp-echo-interval 10" >> /etc/ppp/pppoe-server-options
echo "lcp-echo-failure 2" >> /etc/ppp/pppoe-server-options
echo "* * * *" > /etc/ppp/pap-secrets将虚拟机的网卡桥接物理机有线网卡。
将物理机有线网卡连接网线,另一头插入目标路由器的wan口。
启动目标路由器,等待路由器进行拨号。
执行以下命令启动抓包。
1 | ## 启动服务与抓包,需要配置$iface为真实网卡 |
profit。执行tshark的终端会显示出不同验证方式的密码数据(因为路由器会尝试多种方式拨号),找其中共同的部分就是拨号账号密码。
1
2
3
4
5
6
7
8
9
10
11
12# 输出结果范例,用户名和密码用USERNAME和PASSWORD替代。
2:2u9xv5mogc7 w PASSWORD
^^USERNAME E196D0A59DAAB28B
\r0#.\_.A3dUSERNAME PASSWORD
\r\n#.\_.Aa9USERNAME PASSWORD
USERNAME PASSWORDd471eff555fbbc0
~lUSERNAME @w PASSWORD
a:5s5uAvTJfA9BIUuBgzs6DJ48vbSg0HX::USERNAME PASSWORD
USERNAME PASSWORD
2:2u9xv5mogc7 w PASSWORD
^C^^USERNAME E196D0A59DAAB28B
1 | # 如果运行完以后虚拟机的网络功能不见了,无法联网,可以尝试: |
由于Valine存在安全问题,我们不会记录您的IP地址。您所填入的内容,和您的User-Agent信息将明文公开存储。