持续的 Web Shell 攻击导致 900 多个 Sangoma FreePBX 实例被攻破

2026-02-28 21:31:32 1 887

Shadowserver 基金会透露 ,超过 900 个 Sangoma FreePBX 实例仍然受到 web shell 感染,这是从 2025 年 12 月开始利用命令注入漏洞发起的攻击的一部分。



Shadowserver 基金会透露 ,超过 900 个 Sangoma FreePBX 实例仍然受到 web shell 感染,这是从 2025 年 12 月开始利用命令注入漏洞发起的攻击的一部分。

其中,美国有 401 例 ,巴西有 51 例,加拿大有 43 例,德国有 40 例,法国有 36 例。

该非营利实体表示,这些攻击很可能是通过利用 CVE-2025-64328(CVSS 评分:8.6)实现的,这是一个高危安全漏洞,可以实现身份验证后的命令注入。

FreePBX 在 2025 年 11 月发布的漏洞公告中表示 :“任何有权访问 FreePBX 管理面板的用户都可以利用此漏洞在底层主机上执行任意 shell 命令。攻击者可以利用此漏洞以 asterisk 用户身份远程访问系统。”

该漏洞影响 FreePBX 版本高于 17.0.2.36(含 17.0.2.36)的版本。该漏洞已在 17.0.3 版本中修复。作为缓解措施,建议添加安全控制,以确保只有授权用户才能访问 FreePBX 管理员控制面板 (ACP),限制来自恶意网络的访问,并将文件存储模块更新到最新版本。

该漏洞此后在实际攻击中遭到积极利用,促使美国网络安全和基础设施安全局 (CISA) 在本月初将其添加到其已知被利用漏洞 (KEV) 目录中。



在上个月底发布的一份报告中,Fortinet FortiGuard Labs 透露,代号为 INJ3CTOR3 的网络欺诈行动背后的威胁行为者从 2025 年 12 月初开始利用 CVE-2025-64328 漏洞,提供代号为 EncystPHP 的 Web Shell。

这家网络安全公司指出:“通过利用 Elastix 和 FreePBX 管理环境,Web Shell 以提升的权限运行,从而能够在受感染的主机上执行任意命令,并通过 PBX 环境发起出站呼叫活动。”

建议 FreePBX 用户尽快将 FreePBX 部署更新到最新版本,以应对当前威胁。

关于作者

weak_hong41篇文章53篇回复

评论1次

要评论?请先  登录  或  注册
  • 1楼
    2026-2-28 21:43

    结论

    CVE-2025-64328 是 FreePBX 管理面板的命令注入漏洞,攻击者通过验证后的低权限用户接口(文件存储模块)执行xi统命令植入 Web Shell。核心风险在于攻击者能够以 asterisk 用户权限运行任意命令,需优先升级版本并阻断未授权访问路径。


    分析路径(T00ls 方法论)

    L1 攻击面识别

    1. 漏洞触发点:FreePBX 管理面板(ACP)的文件存储模块,具体为 admin/filemanager/upload 等接口。
    2. Source-Sink 路径
      • 输入源:用户提供的文件路径或参数(如 destinationfilename)。
      • 危险汇点:未过滤的命令执行函数(如 exec()system()),直接拼接用户输入构造命令。
    3. 攻击面范围:所有未升级到 17.0.3 的 FreePBX 实例,且存在低权限用户或暴露于公网的 ACP 接口。

    L2 假设与验证

    1. 假设 1:目标xi统运行受影响版本(≥17.0.2.36)。
      • 验证:
        grep 'FreePBX Version' /var/www/html/admin/includes/version.php  

        或通过 HTTP 请求检查响应头或页面指纹。

    2. 假设 2:xi统存在未清理的 Web Shell(如 EncystPHP)。
      • 验证:
        find /var/www/html -name "*.php" | xargs grep 'eval\(base64_decode'  

        或检查日志中异常的 wget/curl 命令(如 /var/log/asterisk/full/)。

    L3 边界/异常场景

    1. 最小权限利用:即使低权限用户也能触发漏洞,需验证是否通过 asterisk 用户执行命令。
    2. 横向移动风险:攻击者可能通过 PBX 环境发起出站呼叫(如 chan_sip 模块滥用)。
    3. 防御规避:攻击者可能绕过基础日志记录(如在内存中执行命令或使用无文件攻击)。

    L4 防御反推与修复

    1. 漏洞修复
      • 升级到 FreePBX 17.0.3 及以上版本。
      • 更新文件存储模块到最新版本,确保输入过滤和命令白名单机制生效。
    2. 防御加固
      • 访问控制:限制 FreePBX 管理面板(ACP)仅允许可信 IP 访问,禁用公网暴露。
      • WAF 规则:部署规则拦截 admin/filemanager/upload 接口中的 |;&& 等命令分隔符。
      • 文件监控:定期扫描 Web 根目录(如 /var/www/html/)中异常 PHP 文件。
    3. 应急响应
      • 清理已植入的 Web Shell 并重置受污染账户。
      • 检查xi统日志(/var/log/auth.log/var/log/secure)中异常 SSH 登录或 cron 任务。

    验证步骤

    1. 版本检测
      curl -s http://<target>/admin/modules.php | grep -i FreePBX  
    2. 漏洞 PoC 测试(需授权):
      curl -X POST -d "destination=`id > /tmp/test.txt`" http://<target>/admin/filemanager/upload  

      检查 /tmp/test.txt 是否生成,确认命令执行是否生效。

    3. Web Shell 检测
      strings /var/www/html/admin/*.php | grep -E 'base64_decode|eval\(system\('  

    修复建议

    1. 立即升级:强制升级到 17.0.3,优先处理暴露于公网的实例。
    2. 最小权限原则
      • 限制 FreePBX 用户权限(如移除 asterisk 用户的 shell 访问)。
      • 使用 Fail2ban 阻断异常登录尝试。
    3. 监控与响应
      • 配置入侵检测规则(如 Suricata)监控 CVE-2025-64328 特征流量。
      • 定期检查 asterisk 用户的 cron 任务和网络连接(netstat -anp | grep asterisk)。

    关键点:此漏洞的核心是输入未过滤的命令注入,修复需从代码过滤、访问控制和应急响应三方面同步推进。