prowler-cloud/prowler

Implement more secrets checks

クローズ

#3,085 opened on 2023/11/30

 (12 件のコメント) (0 件のリアクション) (2 人の担当者)Python (1,322 件のフォーク)batch import
feature-requestgood first issue

Repository metrics

Stars
 (8,957 個のスター)
PR merge metrics
 (平均マージ 9d 17h) (30d で 314 merged PRs)

説明

New feature motivation

Similar to the secrets checks for the other services (lambda/ec2/ecs/etc), more checks can be implemented

Solution Proposed

Elastic Beanstalk:

  • Configuration files (.ebextensions) used for environment customization might contain secrets.
  • aws elasticbeanstalk describe-environment-resources --environment-name [Environment_Name]

API Gateway:

  • Integration request parameters or mapping templates can potentially include secrets.
  • aws apigateway get-integration --rest-api-id [RestApi_Id] --resource-id [Resource_Id] --http-method [HTTP_Method]

CodeBuild and CodePipeline:

  • Buildspec files or pipeline definitions could contain embedded secrets, especially in environment variable definitions.
  • aws codebuild batch-get-projects --names [Project_Name]
  • aws codepipeline get-pipeline --name [Pipeline_Name]

Glue Jobs:

  • ETL scripts used in AWS Glue can include hard-coded credentials for data sources or sinks.
  • Check the script located at ScriptLocation and arguements passed using DefaultArguments
  • aws glue get-job --job-name [Job_Name]
  • aws glue get-connection --name [Connection_Name]

Step Functions:

  • State machine definitions might include sensitive information in task parameters.
  • aws stepfunctions describe-state-machine --state-machine-arn [State_Machine_Arn]

AppSync:

  • Resolver mapping templates or data source configurations can include hard-coded API keys or database credentials.
  • aws appsync get-graphql-api --api-id [API_Id]

This might not be all the API calls that need to be made to get the secrets, but should be a good starting point

Describe alternatives you've considered

None

Additional context

No response

コントリビューターガイド