## PostHog SSRF 到 RCE:24 小时研究
在团队评估 PostHog 用于自托管产品分析时,一位安全研究人员对该平台的内部机制进行了 24 小时的深入研究。这导致发现了一个关键漏洞链,能够实现远程代码执行 (RCE)。
研究人员发现,虽然 PostHog 提供了广泛的外部集成,但其 webhook 功能缺乏适当的 SSRF 保护。一个看似经过验证的 webhook 端点允许绕过限制,从而能够向内部服务发送请求。具体而言,ClickHouse 的 PostgreSQL 表函数中的一个缺陷,加上不正确的转义,导致了 SQL 注入。
通过串联这些漏洞——一个被遗忘的 webhook 验证、Rust worker 中的 SSRF、ClickHouse 转义错误以及 PostgreSQL 的 `FROM PROGRAM` 功能——研究人员以 `postgres` 用户的身份实现了 RCE。攻击涉及触发一个 webhook,在 PostgreSQL 服务器上执行 shell 命令。
这些漏洞 (CVE-2024-9710, CVE-2025-1522, CVE-2025-1521) 已通过 Zero Day Initiative (ZDI) 负责任地披露给 PostHog,并且已得到解决。这强调了在供应商选择期间进行彻底、实践的安全研究的价值,即使是开源解决方案也是如此。