为什么 Security Hub 启动了调查发现“Lambda 函数策略应禁止公共访问”?

1 分钟阅读
0

AWS Security Hub 针对一个 AWS Lambda 函数返回了控制检查响应。

简短描述

Security Hub 包含类似于以下内容的调查结果类型:

"[Lambda.1] Lambda 函数策略应禁止公共访问"

由于以下原因,此控制响应失败:

  • 该 Lambda 函数可以公开访问。
  • 您从 Amazon Simple Storage Service(Amazon S3)调用该 Lambda 函数,并且此策略不包含针对 AWS:SourceAccount 的条件。

解决方法

要解决此问题,要么更新策略以删除允许公共访问的权限,要么在策略中添加 AWS:SourceAccount 条件。

注意:

使用 Lambda 控制台查看函数的基于资源的策略。根据您的用例,您可以删除或更新 Lambda 函数的权限。

要从该 Lambda 函数中删除权限,请运行 AWS CLI 命令 remove-permission,如下所示:

$ aws lambda remove-permission --function-name <function-name> --statement-id <statement-id>

要更新该 Lambda 函数的权限,请运行 AWS CLI 命令 add-permission,如下所示:

$ aws lambda add-permission --function <function-name> --statement-id <new-statement-id> --action lambda:InvokeFunction --principal s3.amazonaws.com --source-account <account-id> --source-arn <bucket-arn>

要验证权限是否已移除或已更新,请重复上述说明中的步骤以查看函数的基于资源的策略

**注意:**如果策略中只有一条语句,则该策略为空。

有关详细信息,请参阅 Security Hub 控件参考

相关信息

lambda-function-public-access-prohibited

如何使用 Security Hub 监控我的 AWS 环境的安全问题?

AWS 官方
AWS 官方已更新 1 年前