prowler-cloud/prowler

Implement more secrets checks

Chiusa

#3085 aperta il 30 nov 2023

 (12 commenti) (0 reazioni) (2 assegnatari)Python (1322 fork)batch import
feature-requestgood first issue

Metriche repository

Star
 (8957 stelle)
Metriche merge PR
 (Merge medio 9g 17h) (314 PR mergiate in 30 g)

Descrizione

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

Guida contributor