未认证的API端点可能让你损失数百万!请参考Twilio的案例

作者:API传播员 · 2026-01-22 · 阅读时间:6分钟

是一款广泛使用的多因素身份验证应用程序,它提供双因素Linux兼容,并将代码存储在云端,确保用户即使丢失手机也能始终访问他们的2FA。

然而,最近的漏洞暴露了Authy系统中的一个严重安全隐患。威胁行为者可以利用不安全的API端点输入大量电话号码,进而获取与Authy帐户关联的号码及其他敏感信息。这一漏洞导致3300万个电话号码被泄露,给用户带来了极大的安全风险。尽管Authy采取了强有力的安全措施,但此次事件对其声誉造成了严重影响。


什么是未经验证的API端点?

未经身份验证的API路由或URL。这意味着任何人都可以向这些端点发送请求并接收响应,而无需验证其身份。

未经验证的API端点可能带来以下安全风险:

  1. 未经授权的访问:任何人都可以访问端点,可能导致敏感信息泄露。
  2. 数据利用:恶意行为者可利用端点收集大量数据,例如Twilio/Authy案例中所示。
  3. 服务滥用:端点可能被滥用,导致系统请求过载,引发拒绝服务(DoS)攻击。

尽管这些威胁显而易见,但为了简化开发流程,许多开发者在初期阶段往往忽略了安全性,导致未经验证的端点普遍存在。


如何保护未经验证的API端点

为了在不影响开发效率的情况下保护API端点,可以采取以下策略:

1. 实现身份验证和授权

  • 身份验证:确保API端点需要正确的身份验证机制,例如OAuthAPI密钥或令牌。这样可以确保只有经过验证的用户或系统才能访问API。
  • 授权:在身份验证的基础上,进一步确保用户具有访问特定资源或执行操作的权限。

2. 速率限制和节流

  • 速率限制:限制用户或系统在一定时间内向API发出的请求数量,以防止滥用和DoS攻击。
  • 节流:控制请求处理的速率,管理系统负载,确保服务的可用性。

3. 使用HTTPS

始终使用HTTPS对传输中的数据进行加密,防止敏感信息被窃听或遭受中间人攻击。

4. 使用API可观测性工具

借助工具(如Treblle),获取API请求和响应的详细日志、指标和跟踪数据,快速监控和调试可疑活动。

5. API网关和Web应用程序防火墙(WAF)

  • API网关:管理和保护API流量,实施安全策略、速率限制和身份验证。
  • WAF:过滤和监控API的HTTP流量,防止常见的Web攻击。

6. 使用强API密钥和令牌

确保API密钥和令牌复杂、唯一且定期轮换。避免在应用程序中硬编码密钥或将其暴露在公共存储库中。


经过身份验证的API端点与未经身份验证的端点的区别

经过身份验证的API端点需要适当的身份验证和授权,而未经身份验证的端点则无需任何验证即可访问。以下是两者的主要区别:

特性 经过身份验证的端点 未经身份验证的端点
访问权限 需要身份验证和授权 无需身份验证和授权
安全性
潜在风险 较小

保护API的四大工具

以下是保护API安全的四款推荐工具:

1. Graylog用于日志监控

Graylog提供强大的日志管理和警报功能,可通过详细日志实现更高效的威胁检测。

2. OAuth测试工具

专门用于测试OAuth认证的工具,确保身份验证机制的安全性。

3. Datadome用于API端点限制

Datadome通过限制API端点的访问,防止滥用和潜在攻击。

4. Treblle:一体化API管理平台

Treblle提供主动API安全监控功能,对每个API请求执行多达15次安全检查,并根据威胁级别(低、中、高)进行分类。它还通过自动IP信誉检查评估流量峰值时的潜在威胁,有效防止SQL注入等攻击。Treblle可无缝集成到现有工作流程中,提升API管理效率


结论

Twilio API漏洞事件再次提醒我们,保护API安全至关重要。Twilio的Authy多因素身份验证应用程序因不安全的API端点而导致数百万用户的电话号码泄露,使用户面临短信钓鱼和SIM交换攻击的风险。

数据泄露、未经授权的访问以及严重的声誉损失。

通过使用如Treblle等工具,组织可以主动管理API安全,防止类似Twilio事件的发生,确保数字服务的完整性和可靠性。保护API安全不仅是技术需求,更是维护用户信任的重要环节。

原文链接: https://blog.treblle.com/unauthenticated-api-endpoint-costs-millions-ask-twilio/