跳转到帖子

国际威胁情报动态:CVE-2024-3400 边界设备入侵链复盘与日志排查

精选回复

发布于

2024 年 4 月,Palo Alto Networks 披露 PAN-OS GlobalProtect 命令注入漏洞 CVE-2024-3400。该漏洞在公开披露前已被用于真实攻击,风险重点不只是设备本身失陷,还包括配置泄露、凭据获取以及由边界设备向内网横向移动。

本文不提供攻击载荷,而是从授权验证和蓝队排查角度,说明如何确认暴露面、检查相关日志,并处理边界设备失陷后的权限边界问题。虽然事件披露已有一段时间,但仍建议检查历史日志和旧版本设备,尤其是长期运行、补丁窗口较少的 VPN 节点。

事件背景与影响范围

CVE-2024-3400 是 PAN-OS GlobalProtect 功能中的未授权命令注入漏洞,CVSS 评分为 10.0。历史受影响分支主要包括 PAN-OS 10.2、11.0 和 11.1,是否实际受影响还取决于具体版本和 GlobalProtect 配置。Panorama、Cloud NGFW 等产品不能仅凭名称推定受影响,应以厂商安全公告中的产品矩阵为准。

厂商最初发布的修复版本包括 10.2.9-h1、11.0.4-h1、11.1.2-h3,后续还发布了多个维护版本。生产环境不宜把“达到最低修复版本”当成最终状态,应升级到对应分支当前受支持的最新维护版本,并再次核对官方公告。

仅升级版本不能证明设备此前没有被利用。若攻击者已经取得设备执行权限,补丁只能阻止同一路径再次进入,不能自动撤销已泄露的口令、令牌、证书和内网访问权限。

典型内网攻防链路

阶段常见行为应检查的数据
外部入口扫描 GlobalProtect 门户或网关并尝试利用Threat、System、GlobalProtect、上游流量日志
设备控制执行系统命令、写入持久化文件或启动异常进程技术支持包、文件完整性、进程和任务信息
凭据访问读取配置、认证信息、证书或会话相关数据配置导出记录、管理员操作、AAA 与 IdP 日志
横向移动从设备接口地址访问 AD、SSH、RDP、虚拟化或备份系统东西向防火墙、Windows 安全日志、Linux auth 日志
外传与维持建立反向连接、代理通道或新增管理入口DNS、NetFlow、出口代理、管理面登录日志

排查时需要注意源地址差异:攻击者从 VPN 用户终端进入时,流量通常来自 VPN 地址池;如果命令直接在防火墙设备上执行,后续流量可能来自设备的数据接口或管理接口地址。只查询 VPN 地址池会漏掉后一类活动。

授权验证:先确认版本和暴露面

不建议在生产设备上直接发送公开利用载荷。对于边界设备,优先采用版本、配置和日志三项交叉验证,既能确认风险,也不会产生额外命令执行或设备稳定性问题。

在设备 CLI 中记录系统版本,并确认 GlobalProtect 门户或网关是否启用。不同 PAN-OS 版本的配置层级可能有差异,以下命令主要用于资产核对:

show system info
show config running | match global-protect
show admins all
show jobs all

外部只能做低影响的端口与证书确认,目标必须属于授权范围。该检查不能证明漏洞存在,只用于识别互联网暴露节点和资产归属:

nmap -Pn -sT -p 443 --script ssl-cert,http-title vpn.example.org
openssl s_client -connect vpn.example.org:443 -servername vpn.example.org </dev/null 2>/dev/null | openssl x509 -noout -subject -issuer -serial -dates

资产清单至少应包含公网地址、域名、序列号、HA 节点、PAN-OS 版本、GlobalProtect 配置状态、管理接口开放范围和日志转发状态。HA 环境要分别检查主备节点,不能只看当前 Active 设备。

日志定位与时间线构建

首先从厂商控制台或集中日志平台检索威胁特征 ID 95187。该特征用于发现相关利用活动,但没有命中不代表安全:签名可能在事件发生后才更新,也可能未启用对应订阅或未完成日志转发。

在 PAN-OS 的 Monitor、Threat 页面可使用类似过滤条件:

( threatid eq 95187 )

如果日志已经进入 Microsoft Sentinel,可根据实际字段映射调整以下查询。部分采集器会把特征编号写入 DeviceEventClassID,另一些则写入 Activity 或 AdditionalExtensions:

let start_time = datetime(2024-03-01);
CommonSecurityLog
| where TimeGenerated >= start_time
| where DeviceVendor has 'Palo Alto'
| where DeviceEventClassID == '95187'
    or Activity has '95187'
    or AdditionalExtensions has '95187'
| project TimeGenerated, DeviceName, SourceIP, DestinationIP,
          DeviceAction, Activity, Message, AdditionalExtensions
| order by TimeGenerated asc

随后以命中时间前后至少 24 小时为窗口,检查设备地址发起的内网连接。若没有命中记录,则建议从漏洞公开前数周开始回溯,具体范围取决于日志保留周期:

let firewall_ips = dynamic(['10.10.0.1','10.10.0.2']);
CommonSecurityLog
| where TimeGenerated between (datetime(2024-03-01) .. datetime(2024-05-01))
| where SourceIP in (firewall_ips)
| where DestinationPort in (22,88,135,139,389,445,636,3389,5985,5986)
| summarize FirstSeen=min(TimeGenerated), LastSeen=max(TimeGenerated),
            Sessions=count() by SourceIP, DestinationIP, DestinationPort, DeviceAction
| order by FirstSeen asc

重点关注以下异常:

  • 边界设备首次访问域控制器、备份服务器、虚拟化管理端或运维跳板机。
  • 设备地址发起 SMB、RDP、WinRM、SSH、LDAP 或 Kerberos 请求。
  • 非维护时段出现配置导出、管理员登录、HA 切换或服务重启。
  • 设备直接解析新注册域名,或连接历史上从未出现的云主机地址。
  • 补丁安装后仍存在周期性外联,特别是固定间隔的小流量连接。

关联 Windows 与身份认证日志

若防火墙能够访问域控或服务器管理网,需要关联 Windows 事件 4624、4672、4768、4769。事件 4624 中的源地址尤其关键,应同时查询防火墙接口地址、VPN 地址池和可疑外部地址。

$start = Get-Date '2024-03-25 00:00:00'
$end   = Get-Date '2024-04-20 23:59:59'
Get-WinEvent -FilterHashtable @{
    LogName   = 'Security'
    Id        = 4624,4672,4768,4769
    StartTime = $start
    EndTime   = $end
} | Where-Object {
    $_.Message -match '10\.10\.0\.(1|2)'
} | Select-Object TimeCreated, Id, MachineName, Message

如果发现防火墙地址对应的网络登录,需进一步确认登录类型、目标账户和目标主机。常见高风险组合包括:4624 登录类型 3 后紧跟 4672;服务账户从未见过的源地址申请 Kerberos 票据;设备地址访问管理共享后出现计划任务、服务创建或远程管理事件。

设备侧取证注意事项

不要为了寻找 IOC 直接在生产防火墙上随意执行底层 Shell 命令。PAN-OS 设备的底层操作通常需要厂商支持权限,不受控的文件遍历、删除或重启可能破坏证据,也可能影响转发业务。

更稳妥的处理流程是:

  • 记录当前时间、设备序列号、HA 状态、软件版本和配置版本。
  • 生成技术支持包,并保存到受控取证目录,记录文件哈希。
  • 导出 Threat、System、Config、GlobalProtect 和管理员审计日志。
  • 保留上游路由器、交换机 NetFlow、DNS、代理和身份平台日志。
  • 由厂商支持或具备设备取证经验的人员检查异常进程、启动项、计划任务及文件变更。

可以在取证工作站上对导出的文件进行哈希固定:

mkdir -p case-CVE-2024-3400/evidence
sha256sum techsupport.tgz exported-logs.zip | tee case-CVE-2024-3400/evidence/SHA256SUMS
stat techsupport.tgz exported-logs.zip > case-CVE-2024-3400/evidence/file-metadata.txt

风险处置与修复建议

  • 立即升级到对应分支当前受支持的安全版本,不要长期停留在最早的 hotfix。
  • 确认 Threat Prevention 内容已更新,并检查特征 95187 的启用、动作和日志转发状态。
  • 将 GlobalProtect 暴露面限制到确有需要的地址范围;管理接口禁止直接暴露互联网。
  • 边界设备到内网采用最小权限策略。设备本身通常不应主动访问域控 SMB、服务器 RDP 或虚拟化管理端。
  • 轮换本地管理员、LDAP 绑定账户、RADIUS/TACACS 共享密钥、API Key、SNMP 凭据及可能存储在配置中的其他秘密。
  • 如存在设备控制或配置泄露迹象,撤销并重新签发相关证书和令牌,仅修改登录密码通常不够。
  • 检查 IdP 中 GlobalProtect 应用的异常登录、MFA 变更和会话复用情况,必要时使现有会话全部失效。
  • 确认失陷时,不应只做原地升级。应根据厂商建议执行私有数据重置、恢复已知可信配置,严重情况下重建或恢复设备。
  • 对漏洞窗口内从设备地址访问过的内网主机开展二次排查,重点检查新增账户、服务、计划任务、SSH 密钥和远程管理记录。

验证修复是否真正闭环

修复完成后,应至少验证四个方面:所有 HA 节点版本一致;配置中不存在临时放开的管理策略;凭据和证书已经轮换;设备到内网的异常连接不再出现。建议继续保持 7 至 14 天的增强监控,观察设备地址的 DNS、外联和管理协议流量。

这类事件的核心问题不是单个漏洞编号,而是边界设备同时处于互联网入口和内网高信任位置。处置时必须把“漏洞是否修复”和“是否已经发生入侵”分开判断:前者依靠版本与配置确认,后者依靠设备、身份和东西向日志共同还原。只打补丁、不查历史行为,无法完成真正的风险闭环。

服务器与云环境安全示意图
服务器、云资产与权限边界梳理示意
安全事件影响分析示意图
安全动态、影响面和处置建议示意

这类事件排查建议不要只盯着 CVE 告警,重点是确认“是否被利用、是否落地持久化、是否向内网扩展”。CVE-2024-3400 影响的是 PAN-OS GlobalProtect 网关,日志时间线最好按以下顺序串起来:

  1. GlobalProtect gateway / portal 访问日志:查异常请求、异常 URI、短时间大量 5xx,以及请求头或 Cookie 中出现命令注入特征。
  2. 系统日志、配置变更日志:确认是否新增管理员、修改认证配置、创建计划任务或变更安全策略。
  3. 流量日志:重点看防火墙主动访问外部 IP、DNS、HTTP/HTTPS、SSH,以及从管理面到内网服务器的异常连接。
  4. 下游主机日志:如果网关存在出站连接或凭据泄露迹象,要继续查 AD、VPN 用户、跳板机和关键服务器登录记录。

从集中日志中可以先做一轮低成本筛选,下面的关键词不要直接当作 IOC 定性,需结合源 IP、时间和响应码确认:

grep -Eai \
'SESSID|GlobalProtect|/ssl-vpn|/global-protect|curl|wget|bash|sh -c|python|perl|nc |netcat|/tmp/|/var/tmp/|cron|;[[:space:]]*id|\\|[[:space:]]*(id|whoami|uname)' \
panos-*.log

如果日志已经进入 Elasticsearch,可以优先按 GlobalProtect 入口筛选,再看同一源 IP 的行为:

event.dataset:"panos" AND
(message:"globalprotect" OR url.path:"/ssl-vpn/*" OR url.path:"/global-protect/*")
| stats count(), values(http.response.status_code), values(user_agent)
  by source.ip, bin(@timestamp, 5m)

几个容易漏掉的点:

  • 不要只检查攻击者公网 IP。攻击者可能通过代理、VPN 或被入侵的主机转发请求,源 IP 只能作为线索。
  • 检查设备是否存在异常出站 DNS/HTTP 连接,以及是否出现不符合日常管理行为的 DNS 查询。
  • 导出完整的技术支持文件和相关日志后再清理,不要直接重启或恢复配置,否则可能丢失内存和时间线信息。
  • 若设备在受影响版本且存在可疑访问,应按“已失陷”处理:升级到厂商修复版本、隔离管理面、轮换管理员/VPN/API 凭据,并审计这些凭据在内网的使用情况。
  • 确认日志时间是否统一为 NTP 时间,尤其要核对防火墙、认证服务器和终端的时区,否则很容易把利用请求和后续横向行为错开。

最后建议把 GlobalProtect 的异常请求、配置变更和出站流量做成关联规则:同一源 IP 在短时间内出现异常 URI,随后设备产生非管理类出站连接或配置变更时,直接提升为高优先级事件。

最近浏览 0

  • 没有会员查看此页面。