您的漏洞扫描程序无法发现的五种第三方风险
Cyber Threats & Attacks

您的漏洞扫描程序无法发现的五种第三方风险

经过 Cyber Lad Team·

漏洞扫描器擅长他们的工作。他们会发现未打补丁的 Apache 实例、开放的 S3 存储桶、配置错误的 TLS 密码套件。他们抓取您的攻击面、匹配 CVE、评分严重性、归档票据。

但它们都有一个相同的盲点:它们扫描您控制的基础设施。一旦风险源自其他人拥有的系统,您的扫描仪就无法探测任何内容。没有目标,没有发现,没有门票。

这不是任何一款产品的功能差距。这是扫描工作方式的结构性限制。扫描仪需要主机、端口、证书、代码库。第三方可用性和信任失败不会以这种方式呈现。它们表现为您的组织使用但无法检测的服务中的行为异常。

以下是完全位于扫描仪视野之外的五类第三方风险。

供应商 DNS 劫持和��域接管

您的扫描仪会检查您的 DNS 记录。也许它会标记指向已取消配置的云资源的悬空 CNAME。好的。但是您的支付处理商的 DNS 呢?您的身份提供商的子域?您的 CDN 的源拉域名?这些不在范围内。

针对您所依赖的供应商的 DNS 劫持不会让您的扫描仪崩溃,因为该域名不是您的。攻击者接管 auth.vendor.com,建立一个凭据收集页面,并且您的 SSO 集成会愉快地将用户重定向到该页面。从基础设施的角度来看,没有任何变化。 CNAME 仍然可以解析。 TLS 握手完成(攻击者通过被劫持域上的 ACME 质询提供证书)。您的日志显示成功的重定向。

这里的检测窗口是几分钟,而不是几天。如果您没有监控关键第三方端点的 DNS 解析链(包括 CNAME 目标、NS 委托和 SOA 记录),那么您完全依赖供应商来首先注意到。

实际有效的方法:针对应用程序集成的每个第三方域的已知良好基线进行持续的 DNS 记录监控。当 auth.vendor.com 突然解析为新 IP 或其 NS 记录发生变化时,这是一个值得唤醒某人的信号。最重要的记录类型是 A/AAAA、CNAME 目标、NS 委托和 SOA 序列。其中任何意外的变化都值得警惕。

第三方证书过期级联到您的身份验证链

您的扫描仪会验证您的证书。它知道 api.yourcompany.com 在 30 天后何时到期并提交续订票证。但是login.identityprovider.com上的证书呢?在 api. paymentgateway.io 上?在为面向客户的 JavaScript 包提供服务的 CDN 边缘节点上?

当第三方证书过期时,故障模式是欺骗性的。你的系统没有改变。您的监控发现您的端点返回错误,但根本原因是您不拥有的服务上游三跳证书已过期。更糟糕的是,某些故障模式是部分的:具有更严格的证书固定的移动客户端会失败,而桌面浏览器会显示用户点击的降级警告。

2024 年,一家主要��份提供商发生了这种情况。他们的中间证书于周六到期。每个依赖其 OIDC 流的下游 SaaS 应用程序开始向最终用户返回 502。 SaaS 供应商自己的扫描仪显示绿色。他们自己的证书很好。扫描仪没有“我对 IDP 的 HTTPS 调用另一端的证书”的概念。事件响应团队花了几个小时通过自己的负载均衡器和应用程序代码跟踪 502,然后才有人考虑检查上游证书链。

修复方法是监控依赖链中每个 TLS 端点的证书过期情况,而不仅仅是您自己的端点。监视叶证书、中间体和根证书。在 14 天发出警报,而不是 7 天。并单独跟踪中间 CA 到期时间,因为这是供应商自己忘记的。

返回 200 OK

的支付和身份验证提供商降级这个是微妙且昂贵的。

您的正常运行时间检查会向 api. paymentprovider.com/v1/health 发送请求。他们得到了 200。绿色。但在该健康端点后面,提供商的事务处理队列会备份 40 秒。真正的收费已经超时。从技术上讲,您的结帐流程是有效的:它发送请求,(最终)获得响应,并且响应显示“待处理”。您的扫描仪看到 200。您的综合显示器看到 200。您的用户看到旋转的轮子 45 秒并放弃购买。

漏洞扫描器从根本上无法对此进行建模。他们测试二进制可达性:我可以连接吗?服务是否以非错误代码响应?但第三方性能下降对您的业务来说是一种风险,表现为损失而不是违规。收入损失、用户信任损失以及对期望亚秒级结账的客户违反 SLA。

检测这一点需要在真实条件下针对第三方端点测量响应时间和响应主体语义。不是“是否正常”,而是“它是否在我的应用程序假设的范围内执行”。如果您的支付 API 过去在 400 毫秒内响应,而今天需要 12 秒,那么无论状态代码是否为 200,这都是操作事件。

您的 SOC 永远不会读取供应商状态页面事件

每个主要 SaaS 供应商都会发布一个状态页面。 AWS 有一个。奥克塔有一个。 Cloudflare、Stripe、Datadog、PagerDuty。他们发布事件,将组件标记为降级,并(最终)发布事后分析。

几乎没有 SOC 将这些纳入其监控循环中。

这些信息是公开的、机器可读的(大多数公开 JSON 或 RSS 源),并且与您环境的风险状况直接相关。如果您的日志托运商的供应商发布“美国东部地区的摄取管道降级”,则可以解释您的 SIEM 中的差距。如果您的身份验证提供商发布“/authorize 端点上的错误率升高”,这就是您刚刚触发的 4xx 峰值的根本原因。

差距是组织上的,而不是技术上的。安全团队不会查看状态页面,因为这感觉像是一个运营问题。运营团队可能会关注他们的前 2-3 个提供商,但不会关注长尾。结果:您的 SOC 花费 30 分钟来调查供应商在您注意到时 20 分钟前宣布的日志间隙。

操作起来很简单。订阅供应链中每个供应商的状态页面源。将事件纳入您的警报管道中。将入站供应商事件与您自己的警报时间表相关联。这不是扫描。它是一个订阅和关联引擎。

针对提供者端点默默失败的计划安全作业

您的备份代理每 6 小时将加密快照推送到云存储端点。您的日志传送程序转发到 SIEM 供应商的摄取 API。您的漏洞扫描器本身会将发现结果报告给中央 SaaS 控制台。您的证书续订机器人调用 ACME 提供商的 API。

所有这些都是计划作业,依赖于第三方端点是否可访问且正常运行。当该端点出现故障时,作业会默默失败。没有上传快照。没有转发日志。没有报告扫描结果。没有更新证书。

随着时间的推移,安全隐患会变得更加复杂。错过一个备份窗口,您可能就没事了。因为存储提供商悄悄弃用了某个 API 版本并且您的代理的请求开始返回 403,所以错过了一周?现在,您的 RPO 已被破坏,并且在���复测试之前没有人知道(如果您运行恢复测试)。您的合规状况假设持续备份。现实情况是,长达一周的差距只有在审计期间或更糟糕的是在实际恢复场景期间才会显现出来。

检测静默作业失败需要监视作业的输出工件,而不仅仅是作业的进程。快照真的落地了吗?原木托运人的目的地是否已确认收到?证书续订是否生成了具有更新到期日期的新证书文件?如果答案是“我们检查作业的退出代码”,这是不够的。如果远程端点通过 200 级响应和错误正文拒绝有效负载,则作业可以退出 0,但仍然什么也没完成。

实施第三方风险监控

所有五种风险的模式都是相同的:您的扫描仪无法找到它无法到达的内容,也无法到达您不拥有的系统。

缩小这些差距需要不同类别的仪器。不是扫描,而是对您所依赖的服务进行持续的外部监控。 DNS 解析链、上游端点上的 TLS 证书、针对第三方 API 的响应延迟和正文验证、状态页面源以及确认计划作业产生预期输出的综合检查。

您可以通过脚本化检查、cron 作业和警报路由的组合自行组装它。有些团队确实如此。复杂性不在于任何单一的检查。随着供应商列表的增长以及跨供应商的关联信号来维持覆盖范围。

Tools like 等工具DevHelm将其视为一流问题:监视应用程序所依赖的外部服务,在其行为发生变化时发出警报,并为您的 SOC 提供“供应商 X 降级”和“我们自己的警报在 3 分钟后触发”之间的关联。但无论您构建还是购买,架构点都是相同的:第三方风险监控是与漏洞扫描截然不同的功能。它属于您的安全程序,但不会来自您的扫描仪。

这种差距是结构性的,并非偶然

漏洞扫描器没有被破坏。他们致力于解决不同的问题。他们会发现您控制的系统中的弱点,以便您可以在攻击者利用它们之前修复它们。这是有价值且必要的。

但您的实际风险面包括您的应用程序信任的每个外部系统。每个 DNS 委托、每个上游 TLS 证书、每个支付 API、每个状态页面、您的 cron 作业所依赖的每个云端点。这些是信任关系,而信任关系的退化不会产生 CVE。

如果您的安全程序仅检测其所拥有的内容,那么它就会对实际会影响用户的一半故障模式视而不见。上述五种风险并不罕见。它们在整个行业每周都会发生。问题是您的团队是通过自己的监控还是从 45 分钟后的客户支持票中发现这一情况。

准备好受到保护了吗?

立即开始您的安全之旅

与我们的网络安全专家免费咨询。无需承诺。