目的
路由器管理员密码未知,根据已有字典爆破出管理员密码。
工具:burpsuite
脚本语言:python3.7+
1. 抓包分析
输入小米路由器管理员界面地址192.168.31.1
管理员密码未知
输入测试密码:123
使用burpsuite抓包2次 分别查看抓包结果
之一次抓包结果:
第二次抓包结果:
可以发现即使2次输入相同的密码123,向服务器发送的password和nonce字段也是不一样的。
由此可以判断所输入的密码经过了加密,且存在随机数。不能直接通过字典来爆破,需要将字典加密,并附带一个随机数nonce。
2. 源码读取
读取前端源码
f12选取页面中的元素,查看按钮id:btnRtSubmit
在调试器的web文件中查找按钮btnRtSubmit调用的 ***
发现 *** 为loginHandle
查看loginHandle源码
发现密码经过了Encrypt *** 加密
查看Encrpty.oldPwd *** 源代码
发现oldPwd *** 调用了目录中aes.js和sha1.js两个源文件
3. 编写脚本代码
所以计划通过python脚本调用js,将字典中数据加密,返回值为password和nonce。
*** 代码(Encrypt.js)做了如下修改:
1.修改function loginHandle()
传入值为前端文本框输入的值,输出值为经过oldPwd函数输出的值(抓包中的password值)和Encrypt *** 初始化时生成的nonce(抓包中的nonce值)
2.将oldPwd所用到的Encrypt *** 和Crypto *** *** 写在同一个js文件中,代码截图如下
Python脚本如下
生成2个字典adobe_top100_pass_creative.txt和adobe_top100_pass_creative_random.txt
分别存放password和nonce。
截图如下
4. 爆破
以上步骤完成后,生成所需字典完毕,开始使用burpsuite攻击
将所抓的包发送至Intruder
选择Pitchfork,需要爆破的字段为password和nonce。
在Payloads中加载2个字典
点击Start attack开始攻击
攻击完成后点击length长度排序,发现异常长度
查看该请求包的回应包
code字段为0,分发了token,表明密码正确。
释放修改password和nonce字段为Payload1和Payload2,释放数据包。
成功取得管理员权限!
源代码
https://github.com/h2so0o4/Admin_Intruder
参考资料
https://blog.csdn.net/x1t02m/article/details/81949572
https://t0data.gitbooks.io/burpsuite/content/chapter8.html
大三信安学生的之一篇文章,多多指教!
贴面膜让自身的皮肤变好以后,很多人好像是着了迷一样,对补水面膜真是是欲罢不能,每一天都贴面膜,那样对自身的肌肤确实好么?下边我产生:补水面膜必须每一天都敷吗 一天敷一次补水面膜好么。 补水面膜必须...
本文导读目录: 1、腾讯官网的网址是什么 2、qq网页登录的网址是多少啊 3、QQ官方网站的网址是多少 4、手机网页版qq统一登录的网址 5、电脑版QQ登录网页版的网址是多少? 6...
这个好像是没有隐藏英雄的攻略的话一般uuu9论坛上都有我现在就能单通正常模式,菜鸟一个说下我玩的过程:一波怪:先做美味鸡汤然后做杀螃蟹任务—。 拿到霜之哀伤的话,只要杀了海上奸商(寺僧)获得紫罗兰就会...
本文目录一览: 1、陈禹的国籍 2、sunwear为什么叫日娃 3、日娃sunwear是什么级别? 陈禹的国籍 中华人民共和国 陈禹,男,中华人民共和国公民,1962.10出生于广西,...
谈起这一降头术,很多人很有可能都很了解这个词,由于大家常常在影片里见到降头术,而大家很多人毫无疑问也看了周润发的《传奇与卫斯理的传奇》里的影片剧情。被减少了,我能依照被减少者的意向去办事,有的会出...