Como escanear o repositório GitHub em busca de credenciais?

Descubra se o seu repositório GitHub contém informações confidenciais, como senha, chaves secretas, informações confidenciais, etc.

O GitHub é usado por milhões de usuários para hospedar e compartilhar códigos. É fantástico, mas às vezes você/desenvolvedores/proprietários de código podem despejar acidentalmente informações confidenciais em um repositório público, o que pode ser um desastre.

Existem muitos incidentes em que dados confidenciais vazaram no GitHub. Você não pode eliminar o erro humano, mas pode tomar medidas para reduzi-lo.

Como você garante que seu repositório não contém uma senha ou chave?

Resposta simples – não armazene.

Como prática recomendada, deve-se usar um software de gerenciamento de segredos para armazenar todas as informações confidenciais.

Mas, na realidade, você não pode controlar o comportamento de outras pessoas se estiver trabalhando em equipe.

BTW, se você usar o Git para inicializar e implantar seu aplicativo, ele cria a pasta .git e, se acessível pela Internet, pode expor uma confirmação confidencial – o que você não deseja e deve considerar o bloqueio do URI .git.

As soluções a seguir ajudam você a encontrar erros em seu repositório.

Escaneamento Secreto

O recurso de verificação secreta do GitHub é uma ferramenta poderosa que detecta segredos acidentais escondidos em seu código, protegendo contra vazamentos e comprometimento de dados. Ele funciona perfeitamente para repositórios públicos e privados, vasculhando meticulosamente cada canto e recanto para descobrir quaisquer segredos escorregadios.

Mas suas capacidades continuam. Depois que um segredo é descoberto, o GitHub toma medidas proativas alertando os respectivos provedores de serviços, solicitando que mitiguem rapidamente quaisquer riscos potenciais. Em relação aos repositórios privados, o GitHub vai além ao notificar os proprietários ou administradores da organização, garantindo que as pessoas certas em sua equipe sejam imediatamente informadas da situação.

Para fornecer visibilidade contínua, os avisos são exibidos com destaque no repositório, servindo como um sinal claro para você e sua equipe tomarem medidas imediatas. O recurso de verificação secreta do GitHub atua como seu aliado vigilante, trabalhando diligentemente para garantir que nenhum segredo passe despercebido e que seus projetos permaneçam seguros.

Abrace o poder da digitalização secreta e do código com confiança, sabendo que suas informações confidenciais estão protegidas.

Segredos do Git

Deixe-me apresentar a você o git-secrets, uma ferramenta que pode nos salvar do constrangimento de adicionar segredos acidentalmente aos nossos repositórios Git. Ele verifica confirmações, mensagens de confirmação e mesclagens para evitar vazamento de segredos em nosso código.

Para começar no Windows, basta executar o script install.ps1 do PowerShell. Ele copia os arquivos necessários para um diretório de instalação e os adiciona ao nosso usuário PATH. Isso torna o git-secrets facilmente acessível de qualquer lugar em nosso ambiente de desenvolvimento.

Uma vez instalado, o git-secrets se torna nosso guardião vigilante, verificando se algum histórico de confirmação, mensagem de confirmação ou mesclagem corresponde aos nossos padrões proibidos configurados. Se detectar uma correspondência, ele rejeita a confirmação, evitando que informações confidenciais passem despercebidas.

Podemos adicionar padrões de expressão regular a um arquivo .gitallowed no diretório raiz do repositório para ajustar git-secrets. Isso ajuda a filtrar quaisquer linhas que possam acionar um aviso, mas são legítimas, atingindo o equilíbrio certo entre segurança e conveniência.

  Como modernizar o Ubuntu com o tema Flattiance GTK

Ao verificar um arquivo, o git-secrets extrai todas as linhas que correspondem a padrões proibidos e fornece informações detalhadas, incluindo caminhos de arquivo, números de linha e as linhas correspondentes. Ele também verifica se as linhas correspondentes correspondem aos nossos padrões permitidos registrados. A confirmação ou mesclagem é considerada segura se os padrões permitidos cancelam todas as linhas sinalizadas. No entanto, git-secrets bloqueia o processo se alguma linha correspondente não corresponder a um padrão permitido.

Ao usar git-secrets, precisamos ser cautelosos. Os padrões proibidos não devem ser muito amplos e os padrões permitidos não devem ser muito permissivos. Testar nossos padrões usando chamadas ad-hoc para git secrets –scan $filename garante que funcionem conforme o esperado.

Se você está ansioso para mergulhar mais fundo no git-secrets ou deseja contribuir para seu desenvolvimento, encontrará o projeto no GitHub. É um projeto de código aberto que incentiva as contribuições da comunidade. Junte-se à comunidade e faça a diferença!

Com o git-secrets, podemos codificar com confiança, sabendo que segredos acidentais não prejudicarão nossos projetos. Vamos abraçar esta ferramenta e manter nossas informações confidenciais seguras.

Supervisor de recompra

Tenho uma notícia empolgante: o Repo-supervisor é uma ferramenta poderosa que detecta segredos e senhas em seu código. É muito fácil instalá-lo — basta adicionar um webhook ao seu repositório GitHub. O repo-supervisor oferece dois modos: escanear solicitações pull no GitHub ou escanear diretórios locais a partir da linha de comando. Escolha o modo que melhor lhe convier.

Para embarcar em sua jornada git-secrets, basta visitar o repositório GitHub e baixar a versão mais recente. Lá, você descobrirá pacotes personalizados para implantação do AWS Lambda e um modo CLI amigável. Com o modo CLI, você pode mergulhar de cabeça sem nenhuma configuração extra, enquanto o modo pull request requer a implantação no AWS Lambda. Escolha a opção que atende às suas necessidades e comece a aproveitar o poder do git-secrets para reforçar a segurança de sua base de código!

No modo CLI, forneça um diretório como um argumento e o Repo-supervisor verifica os tipos de arquivo suportados, processando cada arquivo com um tokenizer específico para seu tipo. Ele executa verificações de segurança em strings extraídas e fornece relatórios claros em texto simples ou formato JSON.

Para o modo de solicitação pull, o supervisor Repo processa cargas úteis de webhook, extrai arquivos modificados e executa verificações de segurança nas strings extraídas. Se forem encontrados problemas, ele define o status do IC como erro, vinculando-o ao relatório. Nenhum problema significa um status de IC bem-sucedido.

Repo-supervisor é um incrível inspetor de código que mantém nossos segredos e senhas seguros. Ele garante a integridade de nossa base de código, que é crucial em nossas vidas profissionais.

Experimente o Repo-supervisor! Instale-o, configure o webhook e deixe-o verificar segredos e senhas. Aproveite a camada extra de segurança!

porco trufado

Permita-me apresentar-lhe uma ferramenta incrível chamada Truffle Hog. Considere-o seu fiel companheiro de código, farejando diligentemente qualquer traço de informação sensível escondida em seus repositórios. Truffle Hog é um mestre em se aprofundar na história do seu projeto, verificando meticulosamente possíveis vazamentos de segredos valiosos, como chaves de API e senhas.

Com seu arsenal de verificações de alta entropia e padrões regex, esta ferramenta está preparada para descobrir esses tesouros escondidos e garantir que seu código permaneça seguro. Diga adeus aos vazamentos secretos e abrace a proteção vigilante do Truffle Hog!

  Como atualizar o HomePod mini ou HomePod

E aqui está a melhor parte: a versão mais recente do Truffle Hog está repleta de novos recursos poderosos. Ele agora possui mais de 700 detectores de credenciais que verificam ativamente suas respectivas APIs. Ele também suporta a varredura do GitHub, GitLab, sistemas de arquivos, S3, GCS e Circle CI, tornando-o incrivelmente versátil.

Além disso, o TruffleHog agora tem suporte nativo para verificação instantânea de chaves privadas em milhões de usuários do GitHub e bilhões de certificados TLS usando sua tecnologia de ponta Driftwood. Ele pode até escanear binários e outros formatos de arquivo, garantindo que nenhuma pedra seja deixada sobre pedra.

Além do mais, o TruffleHog está disponível como uma ação do GitHub e um gancho de pré-confirmação, integrando-se perfeitamente ao seu fluxo de trabalho de desenvolvimento. Ele foi projetado para ser conveniente e fácil de usar, fornecendo uma camada extra de segurança sem causar complicações desnecessárias.

Com o Truffle Hog em seu kit de ferramentas, você pode proteger seu código com confiança contra exposições acidentais e manter seus segredos guardados. Portanto, experimente o Truffle Hog e deixe-o fazer sua mágica para proteger seus projetos.

Git Hound

O GitHound vai além das limitações de outras ferramentas, aproveitando a pesquisa de código do GitHub, a correspondência de padrões e a pesquisa de histórico de confirmação. Ele pode pesquisar todo o GitHub, não apenas repositórios, usuários ou organizações específicos. Quão legal é isso?

Agora, vamos mergulhar em seus recursos fantásticos. O Git Hound utiliza a pesquisa de código GitHub/Gist, permitindo identificar informações confidenciais espalhadas pela vasta extensão do GitHub, carregadas por qualquer pessoa. É como ter um mapa do tesouro para descobrir possíveis vulnerabilidades.

Mas o GitHound não para por aí. Ele detecta dados confidenciais empregando correspondência de padrões, informações contextuais e entropia de string. Ele ainda se aprofunda no histórico de commits para encontrar segredos excluídos indevidamente, garantindo que nenhuma pedra seja deixada sobre pedra.

Para simplificar sua vida, o GitHound incorpora um sistema de pontuação que filtra os falsos positivos comuns e otimiza sua busca por escavações intensivas em repositórios. Ele foi projetado para economizar tempo e esforço.

E adivinha? O Git Hound está equipado com recursos de detecção e decodificação de base64. Ele pode revelar segredos ocultos codificados no formato base64, dando a você uma vantagem extra em sua busca por informações confidenciais.

Além disso, o GitHound oferece opções para integrá-lo a sistemas maiores. Você pode gerar saída JSON e personalizar regexes de acordo com suas necessidades específicas. É tudo sobre flexibilidade e capacitar você para construir sobre sua base.

Agora, vamos falar sobre seus interessantes casos de uso. No mundo corporativo, o GitHound se torna inestimável na busca de chaves de API de clientes expostas. Ele ajuda a proteger informações confidenciais, garantindo o mais alto nível de segurança.

Para caçadores de recompensas de bugs, o Git Hound é um divisor de águas. Ele permite que você pesquise tokens de API de funcionários vazados, ajudando a descobrir vulnerabilidades e ganhar recompensas merecidas. O Git Hound não é incrível?

Gileaks

O Gitleaks foi projetado para facilitar sua vida. É uma solução completa e fácil de usar que detecta segredos, estejam eles enterrados no passado ou no presente do seu código. Diga adeus ao risco de expor senhas, chaves de API ou tokens em seus projetos.

  Como criar toques grátis diretamente no seu iPhone

Instalar o Gitleaks é muito fácil. Você pode usar Homebrew, Docker ou Go, dependendo de sua preferência. Além disso, oferece opções de implementação flexíveis. Você pode configurá-lo como um gancho de pré-confirmação diretamente em seu repositório ou aproveitar o Gitleaks-Action para integrá-lo perfeitamente em seus fluxos de trabalho do GitHub. É tudo uma questão de encontrar a configuração que melhor se adapta a você.

Agora, vamos falar sobre os comandos que o Gitleaks oferece. Primeiro, temos o comando “detectar”. Este poderoso comando permite verificar repositórios, diretórios e arquivos individuais. Seja trabalhando em sua própria máquina ou em um ambiente de CI, o Gitleaks oferece cobertura para você. Ele garante que nenhum segredo escape pelas rachaduras.

Mas isso não é tudo. O Gitleaks também fornece o comando “proteger”. Este comando verifica as alterações explicitamente não confirmadas em seus repositórios Git. Ele atua como sua última linha de defesa, evitando que segredos sejam cometidos inadvertidamente. É uma proteção que mantém seu código limpo e seguro.

Tines, um nome confiável na indústria, patrocina Gitleaks. Com o suporte deles, o Gitleaks continua a evoluir e melhorar, fornecendo a você os melhores recursos de detecção de segredos.

Portanto, meus jovens profissionais, não deixem que os segredos comprometam seus projetos. Instale-o, configure-o e deixe-o fazer o trabalho pesado de escanear e proteger seus repositórios

Repo Security Scanner

O scanner de segurança do repo é uma ferramenta de linha de comando inestimável projetada para ajudar na identificação de dados confidenciais comprometidos inadvertidamente, como senhas, tokens, chaves privadas e outros segredos, dentro do seu repositório Git.

Essa poderosa ferramenta permite que você detecte e resolva proativamente possíveis vulnerabilidades de segurança decorrentes da inclusão não intencional de informações confidenciais em sua base de código. Ao empregar o scanner de segurança do repositório, você pode garantir a integridade do seu repositório e proteger seus dados confidenciais contra acesso não autorizado.

O Repo Security Scanner investiga sem esforço todo o histórico do repositório, apresentando rapidamente resultados de varredura abrangentes. Ao realizar varreduras completas, ele permite que você identifique proativamente e resolva rapidamente possíveis vulnerabilidades de segurança que possam surgir de segredos expostos em software de código aberto.

Git Guardian

O GitGuardian é uma ferramenta que permite que desenvolvedores, equipes de segurança e conformidade monitorem a atividade do GitHub em tempo real e identifiquem vulnerabilidades devido a segredos expostos, como tokens de API, certificados de segurança, credenciais de banco de dados, etc.

O GitGuardian permite que as equipes imponham políticas de segurança em códigos privados e públicos e outras fontes de dados.

Os principais recursos do GitGuardian são;

  • A ferramenta ajuda a encontrar informações confidenciais, como segredos no código-fonte privado,
  • Identifique e corrija vazamentos de dados confidenciais no GitHub público.
  • É uma ferramenta de detecção secreta eficaz, transparente e fácil de configurar.
  • Cobertura mais ampla e banco de dados abrangente para cobrir quase todas as informações confidenciais em risco.
  • Técnicas sofisticadas de correspondência de padrões que melhoram o processo de descoberta e a eficácia.

Conclusão

Espero que isso lhe dê uma ideia de como encontrar dados confidenciais no repositório do GitHub. Se você estiver usando a AWS, confira este artigo para verificar a segurança e configuração incorreta da AWS. Fique atento para mais ferramentas interessantes que irão melhorar sua vida profissional. Codificação feliz e mantenha esses segredos trancados! 🔒