# GitLeak

Gitleaks é uma ferramenta de código aberto projetada para escanear seu repositório Git em busca de informações sensíveis, como senhas, chaves de API e outros dados confidenciais. Ao integrar o Gitleaks em seu fluxo de trabalho de desenvolvimento, você pode proativamente prevenir a exposição acidental de informações sensíveis dentro de sua base de código.

## O passo a passo abaixo é referente ao linux, para o Windows, podem usar o homebrew

Segue link: <https://www.jit.io/resources/appsec-tools/the-developers-guide-to-using-gitleaks-to-detect-hardcoded-secrets>

## **Passos para Adicionar o GitLeaks no Projeto:**

1. **Instalar o Python**\
   Primeiro, instale o Python se ainda não o tiver instalado no seu sistema:

   ```bash
   sudo apt install python3
   ```
2. **Instalar o Pip**\
   Em seguida, instale o `pip` para gerenciar pacotes Python:

   ```bash
   sudo apt install python3-pip
   ```
3. **Instalar o Pipx**\
   Instale o `pipx`, que é uma ferramenta para executar pacotes Python de forma isolada:

   ```bash
   sudo apt install pipx
   ```
4. **Instalar o Pre-commit**\
   Use o `pipx` para instalar o **pre-commit**, que irá gerenciar os hooks de Git:

   ```bash
   pipx install pre-commit
   ```
5. **Criar o arquivo de configuração do Pre-commit**\
   Na raiz do projeto, crie o arquivo de configuração chamado `pre-commit-config.yaml`:
6. **Adicionar o conteúdo no arquivo `pre-commit-config.yaml`**\
   Abra o arquivo `pre-commit-config.yaml` e adicione o seguinte conteúdo:

   ```yaml
   repos:
     - repo: https://github.com/gitleaks/gitleaks
       rev: v8.23.1  # Especifica a versão do Gitleaks
       hooks:
         - id: gitleaks
   ```
7. **Instalar o pre-commit no repositório**\
   Para configurar o `pre-commit` no repositório, execute esse comando dentro da raiz do projeto:

   ```bash
   pre-commit install
   ```
8. **Testar a configuração**\
   Faça um commit para testar a configuração do hook:

   ```bash
   git commit -m "Teste do GitLeaks"
   ```

   O **GitLeaks** irá rodar automaticamente durante o commit e verificar se há **segredos** no código (como senhas e chaves de API).

Artigo Medium: <https://medium.com/@ketanpradhan/secure-your-git-repository-with-gitleaks-and-pre-commit-hooks-5f37bb03429b>

Como instalar o "pre-commit": <https://pre-commit.com/#install>

Repositorio do gitleaks: <https://github.com/gitleaks/gitleaks?tab=readme-ov-file>
