发现者: Firudin Davudzada & Musazada Aydan
披露日期: 2025年4月
CVE ID: CVE-2025-43919
严重性: 5.8 中等(CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N)
攻击类型: 远程
受影响软件: GNU Mailman 2.1.39(与 cPanel/WHM 捆绑)
与 cPanel 和 WHM 捆绑的 GNU Mailman 2.1.39 在 /mailman/private/mailman 端点中存在一个严重的目录遍历漏洞。由于 private.py CGI 脚本对输入验证不充分,未认证的攻击者可利用此漏洞读取服务器上的任意文件,例如 /etc/passwd 或 Mailman 配置文件。该漏洞会带来严重的信息泄露风险,并可能与其他漏洞结合,进一步发动攻击。
private.py CGI 脚本(处理私有归档认证)archive.py(归档处理逻辑)Mailman/Handlers/(核心邮件列表逻辑).mbox 归档文件/mailman/private/mailman 的 POST 请求中的 username 参数未进行清理,允许使用 ../ 序列遍历文件系统。以下命令演示了未授权访问 /etc/passwd:
curl -X POST -d "username=../../../../etc/passwd&password=x&submit=Let+me+in..." http://target/mailman/private/mailman
预期输出: /etc/passwd 或其他目标文件的内容,具体取决于服务器权限。
/mailman/private/mailman 发送未认证的 HTTP POST 请求,其中 username 参数包含 ../。/etc/passwd,若权限允许还可获取 /etc/shadow)。.mbox 归档,以提取用户数据或邮件内容。限制端点访问: 配置 Web 服务器阻止未经授权访问 /mailman/private:
<Location "/mailman/private">
Require ip 127.0.0.1
Deny from all
</Location>
或针对 Nginx:
location /mailman/private {
deny all;
return 403;
}
监控日志: 检查指向 /mailman/private/mailman 的可疑 POST 请求:
tail -f /var/log/httpd/access_log | grep "/mailman/private"
Firudin Davudzada 和 Musazada Aydan 在授权的渗透测试活动中负责任地披露了此漏洞。感谢 MITRE CVE 团队的协调。