Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
gato — Ferramenta de Enumeração e Ataque de Pipelines do GitHub Actions | Kitploit
Ferramentas/GitHubGitHub/praetorian-inc/gato
ReconhecimentoScanners de VulnerabilidadesExploraçãoColeta de InformaçõesPós-ExploraçãoTestes de PenetraçãoDevSecOpsDetecção de SegredosSegurança da Cadeia de SuprimentosRed TeamingArchived
GitHub
91há 3 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
praetorian-inc/gato

gato

Ferramenta de Enumeração e Ataque de Pipelines do GitHub Actions

Ver Repositório

[!WARNING]

Este repositório está obsoleto e arquivado

O Gato foi substituído pelo Trajan, ferramenta multiplataforma da Praetorian para detecção de vulnerabilidades e automação de ataques em CI/CD. O Trajan consolida as capacidades de ataque em CI/CD do GitHub Actions (Gato) e do GitLab (Glato) em um único projeto mantido ativamente.

Por favor, migre para o Trajan: https://github.com/praetorian-inc/trajan

Nenhuma atualização adicional, correção de bugs ou patches de segurança serão feitos neste repositório.


Supported Python versions

Gato (Kit de Ataque ao GitHub)

gato

Gato, ou Kit de Ataque ao GitHub, é uma ferramenta de enumeração e ataque que permite tanto a profissionais de blue team quanto de segurança ofensiva identificar e explorar vulnerabilidades de pipeline em repositórios públicos e privados de uma organização no GitHub.

A ferramenta possui recursos de pós-exploração para usar um token de acesso pessoal comprometido, além de recursos de enumeração para identificar vulnerabilidades de execução de pipeline envenenado e segredos em artefatos de actions em repositórios públicos.

O GitHub recomenda que runners auto-hospedados sejam utilizados apenas em repositórios privados; no entanto, existem milhares de organizações que utilizam runners auto-hospedados. As configurações padrão costumam ser vulneráveis, e o Gato usa uma combinação de análise de arquivos de workflow e análise de logs de execução para identificar repositórios potencialmente vulneráveis em escala.

Versão 1.7

A versão 1.7 do Gato apresenta o Actions Artifacts Secrets Scanner.

O Actions Artifacts Secrets Scanner enumera segredos em artefatos de workflow do GitHub Actions.

Pesquisadores da Praetorian usaram o scanner para identificar vulnerabilidades críticas em diversos projetos proeminentes de código aberto. Os detalhes dessas vulnerabilidades serão divulgados assim que os processos de divulgação forem concluídos. Este trabalho foi inicialmente inspirado por pesquisa da Palo Alto Networks.

O Actions Artifacts Secrets Scanner executa as seguintes ações:

  1. Faz o download dos artefatos de workflow do GitHub Actions do repositório alvo
  2. Extrai recursivamente os artefatos baixados
  3. Escaneia os artefatos em busca de segredos com o NoseyParker
  4. Relata os resultados

NoseyParker deve estar instalado no $PATH do sistema que executa o Actions Artifacts Secrets Scanner.

Segredos em artefatos de workflow públicos podem conter muitos falsos positivos. Por padrão, o Actions Artifacts Secrets Scanner exclui regras e resultados associados a falsos positivos comuns. Para incluir todos os resultados da varredura de segredos, você pode usar a flag --include_all_artifact_secrets.

Aqui está um exemplo de comando que executa o Actions Artifacts Secrets Scanner em uma lista de organizações do GitHub, desabilita a enumeração de runners auto-hospedados, inclui todos os resultados de segredos de artefatos e exibe a saída em um arquivo JSON.

root@kitploit:~
gato e --enum_wf_artifacts --include_all_artifact_secrets --skip_sh_runner_enum -O testorgs.txt  -oJ testorgoutput.json

Por padrão, o Actions Artifacts Secrets Scanner impõe as seguintes limitações para reduzir o tempo gasto em um único repositório:

  • Baixa apenas um artefato por nome
  • Baixa no máximo 50 artefatos por repositório
  • Baixa no máximo 10 arquivos maiores que 536 MB
  • Não baixa nenhum arquivo maior que 2,68 GB

Essas restrições foram otimizadas para que o Actions Artifacts Secrets Scanner possa escanear as 200 principais organizações do GitHub em 48 horas. Se você quiser modificar essas restrições, pode atualizá-las na função scan_wf_artifacts() do arquivo gato/enumerate/repository.py.

Novos Recursos

  • Adicionado o Actions Artifacts Secrets Scanner
  • Suporte para executar módulos em uma lista de organizações do GitHub
  • Capacidade de desabilitar a enumeração de runners auto-hospedados
  • Opção para desabilitar a pausa (sleep)
  • Diferencia entre repositórios públicos e privados na saída
  • Várias correções de bugs
  • Suporte de enumeração para tokens de instalação de aplicativos do GitHub

Para quem é?

  • Engenheiros de segurança que desejam entender o nível de acesso que um PAT clássico comprometido poderia fornecer a um atacante
  • Blue teams que desejam criar detecções para ataques a runners auto-hospedados
  • Red teamers
  • Caçadores de bugs que desejam tentar provar RCE em organizações que utilizam runners auto-hospedados

Funcionalidades

  • Enumeração de privilégios de PAT clássico do GitHub
  • Enumeração baseada na API de pesquisa de código do GitHub
  • Enumeração de pesquisa do SourceGraph
  • Análise de logs de execução do GitHub Actions para identificar runners auto-hospedados
  • Recursos de clone esparso em lote de repositórios
  • Análise de workflows do GitHub Actions
  • Criação automatizada de fork PR para execução de comandos
  • Criação automatizada de workflow para execução de comandos
  • Exfiltração automatizada de segredos de workflow
  • Suporte a proxy SOCKS5
  • Suporte a proxy HTTPS
  • Varredura de segredos em artefatos de workflow do GitHub Actions

Começando

Instalação

O Gato suporta OS X e Linux com pelo menos Python 3.7.

Para instalar a ferramenta, basta clonar o repositório e usar pip install. Recomendamos fazer isso em um ambiente virtual.

root@kitploit:~
git clone https://github.com/praetorian-inc/gato
cd gato
python3 -m venv venv
source venv/bin/activate
pip install .

O Gato também requer que o git versão 2.27 ou superior esteja instalado e no PATH do sistema. Para executar o módulo de ataque fork PR, o sed também deve estar instalado e presente no PATH do sistema.

Branch de Desenvolvimento

Mantemos uma branch de desenvolvimento que contém recursos mais novos do Gato que ainda não foram adicionados à main. Há uma chance maior de você encontrar bugs; no entanto, ainda executamos nosso conjunto de testes de integração na branch dev, portanto não deve haver bugs evidentes.

Se quiser usar a branch dev, basta fazer checkout dela antes de executar o pip install - é só isso!

Se você encontrar algum bug para seu caso de uso específico, fique à vontade para abrir uma issue!

Uso

Após instalar a ferramenta, ela pode ser iniciada executando gato ou praetorian-gato.

Recomendamos visualizar os parâmetros da ferramenta base usando gato -h, e os parâmetros de cada um dos módulos executando os seguintes comandos:

  • gato search -h
  • gato enum -h
  • gato attack -h

A ferramenta requer um token clássico do GitHub ou de instalação de aplicativo para funcionar. Para criar um, faça login no GitHub e vá para GitHub Developer Settings e selecione Generate New Token e depois Generate new token (classic).

Após criar este token, defina a variável de ambiente GH_TOKEN no seu shell executando export GH_TOKEN=<YOUR_CREATED_TOKEN>. Alternativamente, armazene o token em um gerenciador de senhas seguro e insira-o quando o aplicativo solicitar.

Se estiver criando um token de instalação de aplicativo do GitHub, o aplicativo precisa ter pelo menos Actions:read e Contents:read para executar os módulos de enumeração.

Para solução de problemas e detalhes adicionais, como instalação em modo desenvolvedor ou execução de testes unitários, consulte a wiki.

Documentação

Consulte a wiki para documentação detalhada, bem como as considerações de OpSec para os diversos módulos da ferramenta!

Bugs

Se você acredita ter identificado um bug no software, por favor abra uma issue contendo a saída da ferramenta, juntamente com as ações que você estava tentando realizar.

Se não tiver certeza se o comportamento é um bug, use a seção de discussões!

Contribuindo

Contribuições são bem-vindas! Por favor, revise nossa metodologia de design e padrões de codificação antes de trabalhar em um novo recurso!

Além disso, se você estiver propondo mudanças significativas na ferramenta, por favor abra uma issue para iniciar uma conversa sobre a motivação das mudanças.

Licença

O Gato é licenciado sob a Apache License, Version 2.0.

root@kitploit:~
Copyright 2023 Praetorian Security, Inc

Licenciado sob a Apache License, Versão 2.0 (a "Licença");
você não pode usar este arquivo exceto em conformidade com a Licença.
Você pode obter uma cópia da Licença em

    http://www.apache.org/licenses/LICENSE-2.0

A menos que exigido por lei aplicável ou acordado por escrito, o software
distribuído sob a Licença é distribuído "COMO ESTÁ", SEM GARANTIAS OU CONDIÇÕES DE QUALQUER TIPO, expressas ou implícitas.
Veja a Licença para as permissões específicas e limitações sob a Licença.
Baixar ferramenta