Encontrando credenciais vazadas com Google Chrome

245 views
2 mins read
MOSTRAR: Aviso importante: Uso Ético e Profissional do Conteúdo

Todo o conteúdo fornecido neste post destina-se exclusivamente a fins educacionais, de estudo e desenvolvimento profissional e pessoal. As informações aqui apresentadas são para serem utilizadas de forma ética e profissional, em conformidade com todas as leis e regulamentos aplicáveis.


Uma forma de bug bounty bem interessante é encontrar credenciais vazadas dentro do código do site. Credenciais como chaves de API, chaves da AWS e Google por exemplo.

Google Chrome (e Brave)

Uma forma interessante para procurar credenciais vazadas é utilizando o próprio Google Chrome.

  1. Abra as ferramentas de desenvolvimento do Google Chrome (Control + Shift + I em sistemas Windows e Linux)
  2. Vá para aba Network
  3. Ative a opção de Regex Search clicando no ícone na barra de filtros
  4. Atualize a página para carregar novas solicitações.
  5. Aplique o Regex abaixo
((access_key|access_token|admin_pass|admin_user|algolia_admin_key|algolia_api_key|alias_pass|alicloud_access_key|amazon_secret_access_key|amazonaws|ansible_vault_password|aos_key|api_key|api_key_secret|api_key_sid|api_secret|api.googlemaps AIza|apidocs|apikey|apiSecret|app_debug|app_id|app_key|app_log_level|app_secret|appkey|appkeysecret|application_key|appsecret|appspot|auth_token|authorizationToken|authsecret|aws_access|aws_access_key_id|aws_bucket|aws_key|aws_secret|aws_secret_key|aws_token|AWSSecretKey|b2_app_key|bashrc password|bintray_apikey|bintray_gpg_password|bintray_key|bintraykey|bluemix_api_key|bluemix_pass|browserstack_access_key|bucket_password|bucketeer_aws_access_key_id|bucketeer_aws_secret_access_key|built_branch_deploy_key|bx_password|cache_driver|cache_s3_secret_key|cattle_access_key|cattle_secret_key|certificate_password|ci_deploy_password|client_secret|client_zpk_secret_key|clojars_password|cloud_api_key|cloud_watch_aws_access_key|cloudant_password|cloudflare_api_key|cloudflare_auth_key|cloudinary_api_secret|cloudinary_name|codecov_token|config|conn.login|connectionstring|consumer_key|consumer_secret|credentials|cypress_record_key|database_password|database_schema_test|datadog_api_key|datadog_app_key|db_password|db_server|db_username|dbpasswd|dbpassword|dbuser|deploy_password|digitalocean_ssh_key_body|digitalocean_ssh_key_ids|docker_hub_password|docker_key|docker_pass|docker_passwd|docker_password|dockerhub_password|dockerhubpassword|dot-files|dotfiles|droplet_travis_password|dynamoaccesskeyid|dynamosecretaccesskey|elastica_host|elastica_port|elasticsearch_password|encryption_key|encryption_password|env.heroku_api_key|env.sonatype_password|eureka.awssecretkey)[a-z0-9_ .\-,]{0,25})(=|>|:=|\|\|:|<=|=>|:).{0,5}['\"]([0-9a-zA-Z\-_=]{8,64})['\"]|AIza[0-9A-Za-z\\-_]{35}

6. Revise manualmente e procure por possíveis vazamentos


Burpsuite

Você pode aplicar uma regex semelhante, caso utilize o Burpsuite

(?i)((access_key|access_token|admin_pass|admin_user|algolia_admin_key|algolia_api_key|alias_pass|alicloud_access_key|amazon_secret_access_key|amazonaws|ansible_vault_password|aos_key|api_key|api_key_secret|api_key_sid|api_secret|api.googlemaps AIza|apidocs|apikey|apiSecret|app_debug|app_id|app_key|app_log_level|app_secret|appkey|appkeysecret|application_key|appsecret|appspot|auth_token|authorizationToken|authsecret|aws_access|aws_access_key_id|aws_bucket|aws_key|aws_secret|aws_secret_key|aws_token|AWSSecretKey|b2_app_key|bashrc password|bintray_apikey|bintray_gpg_password|bintray_key|bintraykey|bluemix_api_key|bluemix_pass|browserstack_access_key|bucket_password|bucketeer_aws_access_key_id|bucketeer_aws_secret_access_key|built_branch_deploy_key|bx_password|cache_driver|cache_s3_secret_key|cattle_access_key|cattle_secret_key|certificate_password|ci_deploy_password|client_secret|client_zpk_secret_key|clojars_password|cloud_api_key|cloud_watch_aws_access_key|cloudant_password|cloudflare_api_key|cloudflare_auth_key|cloudinary_api_secret|cloudinary_name|codecov_token|config|conn.login|connectionstring|consumer_key|consumer_secret|credentials|cypress_record_key|database_password|database_schema_test|datadog_api_key|datadog_app_key|db_password|db_server|db_username|dbpasswd|dbpassword|dbuser|deploy_password|digitalocean_ssh_key_body|digitalocean_ssh_key_ids|docker_hub_password|docker_key|docker_pass|docker_passwd|docker_password|dockerhub_password|dockerhubpassword|dot-files|dotfiles|droplet_travis_password|dynamoaccesskeyid|dynamosecretaccesskey|elastica_host|elastica_port|elasticsearch_password|encryption_key|encryption_password|env.heroku_api_key|env.sonatype_password|eureka.awssecretkey)[a-z0-9_ .\-,]{0,25})(=|>|:=|\|\|:|<=|=>|:).{0,5}['\"]([0-9a-zA-Z\-_=]{8,64})['\"]|AIza[0-9A-Za-z\\-_]{35}

Sou um profissional apaixonado pela área de Segurança da Informação. Sou certificado em ISO 27001, ISO 27005, LGPD e GDPR, o que me torna um Data Protection Officer (DPO) certificado. Também sou certificado CC e SSCP pelo (ISC)², bem como um AWS Practitioner. Além do meu trabalho, sou um orgulhoso pai de três filhos, um nerd, um cinéfilo, um leitor voraz e um eterno aprendiz.

Deixe um comentário

Your email address will not be published.

Previous Story

Script PowerShell de resposta a incidentes

Next Story

PHP.info | Divulgação de dados

Latest from BugBounty

API Pentesting

Por que a segurança da API é importante? A segurança da API envolve a segurança dos

Git Exposed

Introdução A questão da segurança na era digital tornou-se rapidamente um tema quente. Todos nós já