Amazon API Gateway - 故意攻击以提高成本

问题描述 投票:0回答:4

我是 AWS 新手,想在 Amazon Web Services 上部署微服务。函数代码应位于 AWS Lambda 中,并且该函数应通过 AWS API Gateway 触发。

我的 lambda 函数本身通过授权受到保护。此外,授权请求的数量在免费套餐内。

现在我的问题:

  • 对 Amazon API Gateway 的未经授权的攻击会让成本激增吗?
  • 我可以防止我的 Amazon API Gateway 遭受此类攻击吗?
  • 如果账单过高,我可以设置费用限制并关闭 API 吗?
  • 故意 API 攻击常见吗?

谢谢

amazon-web-services aws-lambda aws-api-gateway
4个回答
5
投票

对 Amazon API Gateway 的未经授权的攻击会让成本激增吗?

是的。这可能会发生。

我可以防止我的 Amazon API Gateway 遭受此类攻击吗?

您可以使用 Web 应用程序防火墙来减少这些使用 AWS WAF 的恶意攻击。

  • 在 API 网关前面设置与 AWS WAF 集成的 AWS CloudFront。
  • 在 API Gateway 中启用 API Key,以便在没有 API Key 的情况下无法直接访问 API Gateway。您可以在 CloudFront 中的 Origin 标头中创建使用 API 密钥,以便转发到 API Gateway 的请求在标头中使用此 API 密钥。

我可以设置费用限制并关闭 API,以防费用过高 账单?

您可以启用限制,以便 API Gateway 限制非常高的流量峰值,从而降低成本峰值(这样做的负面影响是影响真实用户的服务质量)。但是,如果您需要实现根据请求速率关闭API,API Gateway 不直接支持。您需要为此进行自定义实现。

故意 API 攻击常见吗?

到目前为止,我还没有看到针对我部署的 API 的太多攻击。话虽如此,根据您的业务性质等,它可能非常主观。但是,我更经常看到基于机器人的调用。当您使用 AWS WAF 时,您可以轻松实施 Honey Pot 来防止这些问题。 Github for Bad Bot Blocking 中的 AWS 实验室提供了示例代码,用于与 WAF 连接。


4
投票

对 Amazon API Gateway 的未经授权的攻击会让成本激增吗?

如果您在 API 网关层启用任何类型的授权(IAM、自定义、Cognito),API Gateway 将不会向您收取未经授权的请求费用。但是,支持自定义授权方的 Lambda 函数仍按正常 Lambda 调用计费。

如果您在 API 上启用了速率限制,这同样适用于受限制的请求。


1
投票

我想在这里发表评论,因为这是您搜索该主题时的最热门结果之一,并且它有来自 AWS 的官方来源。我与 AWS Support 交谈,他们确认您“不”为 APIGW 级别的未经身份验证的请求付费,但您确实为运行验证代码的授权者 lambda 付费: 澄清一下:

请求进入API网关
  1. 请求转发至 Lambda 自定义授权者
  2. 请求失败自定义授权者
  3. API 网关拒绝此请求 <-- You are charged for this lambda invocation
  4. 在 APIGW 级别为此付费<-- You

0
投票
身份源

如果调用者没有发送指定的标头/查询键,则授权者 lambda 将不会被执行,并且不会产生任何成本。 只需确保标题/查询键不是常见的,即

Authorizaion

apiKey
    

© www.soinside.com 2019 - 2024. All rights reserved.