服务器端请求伪造是什么?

服务器端请求伪造是什么?

服务器端请求伪造 (Server-Side Request Forgery, SSRF) 是 API 安全防护专业人员必须注意的一个重大漏洞。通过了解攻击场景并实施适当的抵御策略,企业可以保护其 API,并防止企业内部网络资源与敏感信息遭到未经授权的访问。

API 安全防护是现代 Web 应用程序的一个关键方面,对于 API 安全防护专业人员而言,及时了解最新漏洞至关重要。在本文中,我们将深入探讨 OWASP 十大 API 安全风险清单中的第七个风险 — 服务器端请求伪造

Diagram illustrating the process of server-side request forgery (SSRF).

当 API 调用其他服务(例如文件存储或外部资源)时,就会发生 SSRF。攻击者可以利用此漏洞篡改 API 的请求,未经授权访问通常受防火墙保护的企业内部网络资源。这些被篡改的请求通常会导致严重的安全漏洞,包括敏感元数据和其他内部资源的泄露。

了解攻击场景

为了解服务器端请求伪造,我们先设想这样一个场景:某企业的网络受防火墙保护。在这个网络中,可能有各种设备,包括计算机、个人设备和服务器。但是,Web 服务器同时连接到企业网络和互联网,充当两者之间的桥梁。

利用服务器端请求伪造

攻击者可以利用 Web 服务器或云服务器作为枢轴点,绕过防火墙,获取对企业内部网络资源的访问权限,从而利用 SSRF。这种未经授权的访问可能涉及文件读取、端口扫描,甚至远程代码执行等活动。

例如,攻击者可以篡改旨在从文件服务器检索头像的 API 请求,以访问存储在不同目录中的敏感业务或财务文档。同样,在云环境中,攻击者可能会通过利用服务器端请求伪造来访问云资源,例如 EC2 凭据。

SSRF 漏洞中的用户输入和参数

用户输入和参数在促成 SSRF 攻击中发挥关键作用。通常,当 API 接受未经验证的用户输入,或不正确地处理 HTTP 请求中的参数时,就会出现 SSRF 漏洞。攻击者可以篡改这些参数,将请求发送到非预定目的地,例如内部资源或企业网络的其他敏感部分。正确验证用户输入并清理参数,可以显著降低 SSRF 的风险,防止攻击者利用这些漏洞访问内部资源。

与 API 相关的风险

虽然 API 常被默认为安全的,但必须记住它们本质上仍然是 Web 应用程序。任何影响 Web 应用程序的漏洞也可能会影响 API。通过 API 获取外部资源会带来重大风险,使得 SSRF 成为 API 安全防护专业人员的一个重大问题。

通过安全的后端通信抵御 SSRF

保护 API 与后端服务之间的通信,是抵御 SSRF 的最有效方法之一。这包括实施严格的访问控制措施,确保内部资源不会暴露给未经授权的请求,以及仔细配置 DNS 设置以防止攻击者解析内部 IP 地址。此外,使用加密通道并确保 API 端点仅与受信任的后端服务通信,也可以大大降低 SSRF 攻击的风险。定期更新安全协议,并确保 API 设计与“OWASP 十大 API 安全风险清单”中的最佳实践保持一致,这一点也至关重要。

抵御服务器端请求伪造

为抵御 SSRF 风险,可以实施以下几项措施:

  • 白名单:实施白名单以限制可通过 API 获取的资源范围。通过指定某些资源,企业可以确保仅经过授权且安全的资源会被访问。
  • 隔离 Web 服务器:避免将 Web 服务器直接放置在企业内部网络上。考虑将它们部署在单独的网络分段或云端,以尽可能降低发生 SSRF 攻击的可能性。
  • 评估资源必要性:评估获取外部资源对于 API 的功能是否确实必要。减少对外部资源的依赖可以减小攻击面,并降低服务器端请求伪造的风险。
  • 防火墙保护:始终在企业网络中使用防火墙,为防止未经授权的访问和潜在的 SSRF 攻击提供额外的防御层。
  • 遵循 API 设计建议:了解 API 设计建议的最新信息,这些建议提供了开发可抵御 SSRF 攻击的 API 的最佳实践。

常见问题

了解服务器端请求伪造 (SSRF) 对于 Web 安全至关重要,因为它会对 Web 应用程序及其所依赖系统的机密性和完整性造成重大风险。

通过了解 SSRF 及其对 Web 应用程序安全的潜在影响,开发人员和安全防护专业人员可以实施适当的抵御措施,例如实施严格的访问控制和限制服务器端请求的目的地。而且,安全配置错误测试和漏洞评估也应包括 SSRF 漏洞检查,这样能在攻击者利用漏洞前,及时识别并修复相关隐患。

防范服务器端请求伪造 (SSRF) 攻击需要结合技术措施和意识培训。SSRF 攻击的防范策略包括:

  • 输入验证和白名单:对 URL 和 IP 地址实施严格的输入验证和白名单,以确保用户提供的输入只能访问允许的资源。
  • 安全意识培训:为开发人员、管理员和其他人员提供安全意识培训。让他们了解与 SSRF 攻击相关的风险、常见的攻击媒介以及防范 SSRF 漏洞的最佳实践。
  • 定期安全审核和测试:对 Web 应用程序进行定期安全测试和渗透测试,以识别和修复 SSRF 漏洞。

系统或应用程序遭 SSRF 攻击入侵后的常见迹象如下:

  • 异常的出站请求:监控出站网络流量是否存在异常模式或非预定目的地。
  • 敏感数据访问:检测对内部网络内敏感数据或资源的任何未经授权的访问尝试。
  • 对管理界面的请求:监控那些无法通过 Web 应用程序访问的管理界面或管理端点所收到的请求。
  • 日志和错误消息:查看应用程序日志、服务器日志和错误消息,以了解 SSRF 攻击的任何迹象。
  • API 漏洞:监控 API 性能和使用情况,以了解未经授权的访问尝试或异常的 API 请求。留意 API 身份验证、授权或使用模式中出现的任何异常,这些异常可能意味着存在针对 API 端点的潜在 SSRF 攻击。

安全防护专业人员可以利用 Burp Suite、OWASP ZAP 和 SSRFmap 等各种工具,自动扫描服务器端请求伪造漏洞。cURL 和 Postman 等手动测试工具也很有效。API 安全测试工具对于识别 SSRF 漏洞非常有用。

客户为什么选择 Akamai

Akamai 是一家致力于支持并保护在线商业活动的网络安全和云计算公司。我们卓越的安全解决方案、出色的威胁情报和全球运营团队可提供深度防御,保护各地的企业数据和应用程序。Akamai 全栈式的云计算解决方案依托全球广泛分布的平台,提供高性能且经济实惠的服务。全球多家企业坚信,Akamai 能够提供卓越的可靠性、扩展性和专业技术,助其从容拓展业务。

相关博文

PCI DSS v4:揭密针对支付集成发起的 Web 数据窃取攻击
探索 Web 数据窃取攻击和数据外泄如何对各种支付集成方法造成威胁。
豪华连锁酒店保护 API 安全所面临的挑战
豪华连锁酒店 Dan Hotels 在发现其合作伙伴遭到入侵后,其技术团队转为使用 Akamai API Security 获得相应保护。
借助 API Security 保护每一个 API
Akamai API Security 提供了企业级的监测能力,可对 API 活动执行行为分析并阻止攻击和滥用。

探索 Akamai 的所有安全解决方案

开始免费试用,了解全球规模超大且值得信赖的云交付平台带来的改变。