O AWS Security Hub contém um tipo de descoberta semelhante a:
"[Lambda.1] Lambda function policies should prohibit public access" ("As políticas de funções do Lambda [Lambda.1] devem proibir o acesso público")
Como posso resolver esse tipo de descoberta?
Breve descrição
Essa resposta de controle falhará se a função do AWS Lambda for:
- Acessível ao público.
- Invocada do Amazon Simple Storage Service (Amazon S3) e a política não incluir uma condição para AWS:SourceAccount.
Resolução
Realize uma das seguintes ações:
Atualize a política para remover as permissões de acesso público.
-ou-
Adicione a condição AWS:SourceAccount à política.
Observação:
Siga as instruções para visualizar a política baseada em recursos de uma função usando o console do Lambda. Dependendo do caso de uso, você pode remover ou atualizar permissões para a função do Lambda.
Para remover permissões da função do Lambda, execute o comando remove-permission da CLI da AWS semelhante ao seguinte:
$ aws lambda remove-permission --function-name <function-name> --statement-id <statement-id>
Para atualizar as permissões para a função do Lambda, execute o comando add-permission da AWS CLI semelhante ao seguinte:
$ 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>
Para verificar se as permissões foram removidas ou atualizadas, repita as instruções para visualizar a política baseada em recursos de uma função usando o console do Lambda.
A política baseada em recursos agora deve estar atualizada.
Observação: se houver apenas uma declaração na política, a política estará vazia.
Para obter mais informações, consulte AWS Foundational Security Best Practices controls (Controles de práticas recomendadas de segurança básica da AWS).
Informações relacionadas
lambda-function-public-access-prohibited