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
miasma-toolkit — Kit de detecção e remediação para o worm Miasma / Shai-Hulud e CVE-2026-35603 (injeção de configuração de agente de IA/IDE) | Kitploit
Ferramentas/GitHubGitHub/jchable/miasma-toolkit
Gerenciamento de Indicadores de Comprometimento (IOC)Análise de VulnerabilidadesAnálise ForenseAnálise de MalwareDevSecOpsDetecção de SegredosInteligência de AmeaçasSegurança da Cadeia de SuprimentosAprendizado e EducaçãoResposta a Incidentes
GitHubjchable/miasma-toolkit
há 1 mêsAinda 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

miasma-toolkit

Kit de detecção e remediação para o worm Miasma / Shai-Hulud e CVE-2026-35603 (injeção de configuração de agente de IA/IDE)

Ver Repositório

Kit de ferramentas Miasma / Shai-Hulud

License: MIT PowerShell 7+ Miasma CI guard

Ferramentas de análise de incidentes + detecção/remediação para o worm Miasma (uma variante Mini Shai-Hulud) que injeta payloads de execução automática em configurações de agentes de IA / IDEs e repositórios npm/GitHub.

⚠️ Aviso legal — sem garantia. Este é um kit de ferramentas defensivo da comunidade fornecido "como está", sem garantia de qualquer tipo (consulte LICENSE). O scanner e as regras YARA são somente leitura, mas o purge-history.sh reescreve o histórico do git e os hooks .claude/ movem arquivos para quarentena — ambos podem alterar um repositório. Faça backup primeiro, revise o que cada ferramenta faz e execute por sua conta e risco. Uma varredura limpa não é garantia de segurança: os indicadores evoluem e novas variantes surgem. Use apenas em sistemas e contas que você está autorizado a inspecionar. Encontrou uma lacuna ou um bug? Consulte SECURITY.md e CONTRIBUTING.md.

Conteúdo

Pré-requisitos

Instale o YARA (Windows): winget install VirusTotal.YARA — ou choco install yara / scoop install yara. No Linux/macOS: apt install yara / brew install yara. Verifique com yara --version.

Uso rápido

Observação: o -Mode Local por padrão varre apenas $env:USERPROFILE. Passe -CodeRoots para cobrir repositórios em outros locais, ex.: -CodeRoots E:\Sources,D:\work.

root@kitploit:~
# Scan local machine + local repos (+ CVE-2026-35603 ProgramData)
pwsh -File Scan-Miasma.ps1 -Mode Local
pwsh -File Scan-Miasma.ps1 -Mode Local -CodeRoots E:\Sources,D:\work

# Scan remote GitHub repos (authenticate on the target account first for private repos/secrets)
gh auth login
pwsh -File Scan-Miasma.ps1 -Mode Remote -Owners your-org,your-user -OutReport report.md

# Everything + JSON + Markdown report
pwsh -File Scan-Miasma.ps1 -OutJson findings.json -OutReport report.md

Código de saída 1 se houver qualquer achado INFECTED (amigável para CI).

root@kitploit:~
# Purge history of an infected repo (review PATHS in the script first)
./purge-history.sh /path/to/repo
# then, after reviewing the verification:
git push origin --force --all && git push origin --force --tags
root@kitploit:~
# YARA scan
yara -r setup-js.yar /path/to/scan
root@kitploit:~
# Linux/macOS: local scan (bash port — defaults to $HOME; pass roots to widen)
./scan-miasma.sh
./scan-miasma.sh ~/src /opt/work
root@kitploit:~
# Statically deobfuscate a captured dropper (read-only — never runs it)
pwsh -File Expand-MiasmaPayload.ps1 -Path .github/setup.js   # writes layers + iocs.txt to <Path>.deob/
pwsh -File Expand-MiasmaPayload.ps1 -SelfTest                # verify the decode/decrypt engine

O desofuscador desempacota a onda do empacotador p,a,c,k,e,d, decodifica a onda de códigos de caractere, detecta automaticamente e reverte o deslocamento Caesar (substitua com -Shift), depois descriptografa cada blob AES-128-GCM embutido (_b bootstrapper, _p stealer) e varre o código recuperado em busca de URLs, IPs e contas de dead-drop.

root@kitploit:~
# After eradication: generate a prioritized secret-rotation checklist (revokes nothing)
pwsh -File Invoke-MiasmaRotation.ps1                       # detects creds reachable here
pwsh -File Invoke-MiasmaRotation.ps1 -OutReport rotation.md

Proteção de CI (recusar a compilação se o dropper/launcher estiver presente)

Use a ação composta incluída como primeira etapa de qualquer workflow:

root@kitploit:~
# In another repo (pin to a tag/SHA for supply-chain safety):
- uses: actions/checkout@v4
- uses: jchable/miasma-toolkit/.github/actions/miasma-guard@main
  # with:
  #   full-scan: 'true'   # also run Scan-Miasma.ps1 -Mode Local (needs pwsh)

Este kit executa a mesma proteção em si mesmo via .github/workflows/miasma-ci.yml (referenciando a ação por caminho relativo). A proteção é independente de variante e restrita aos arquivos de configuração do launcher do worm, portanto nunca gera falsos positivos em documentos que apenas mencionam a string de IOC.

Hooks do Claude Code (.claude/)

Proteção em tempo real para máquinas que executam o Claude Code neste repositório. Os hooks reutilizam iocs.psd1 (sem indicadores duplicados) e estão configurados em .claude/settings.json:

  • A quarentena é reversível: os arquivos infectados são movidos para .miasma-quarantine/<timestamp>/… (ignorados pelo git) e registrados em .miasma-quarantine/quarantine.log — restaure com Move-Item. Nada é excluído permanentemente.
  • Autoexclusão (Test-MiasmaExcluded em Miasma.Common.ps1): os próprios arquivos do kit contêm legitimamente strings de IOC (iocs.psd1, Scan-Miasma.ps1, scan-miasma.sh, Expand-MiasmaPayload.ps1, Invoke-MiasmaRotation.ps1, purge-history.sh, setup-js.yar, content/, , , ) e nunca são bloqueados/colocados em quarentena.

Modelo de severidade (Scan-Miasma.ps1)

  • INFECTED — DROPPER, INJECT, FORGED, BADDEP, WORKFLOW, RUNNER, PAYLOAD, BUN-DROP, PROGRAMDATA
  • REVIEW — NPM-AUDIT, SECRETS (inventário de rotação), SIGNATURE, PERSIST, PROGRAMDATA-CFG

Bugs conhecidos já corrigidos (tenha em mente ao retrabalhar)

  • gh api <404> --jq despeja o corpo do erro no stdout → nunca confie na veracidade da saída; verifique $LASTEXITCODE + valide o formato (tamanho numérico, nome exato do branch).
  • O GitHub mantém um redirecionamento master→main após a renomeação → branches/master retorna 200; aceite um branch somente se o nome retornado == nome solicitado.
  • O npm audit deve permanecer com --package-lock-only (sem npm install, sem scripts executados).

TODO / backlog de retrabalho

O backlog original (porte em bash, selos de severidade, desofuscação da onda do empacotador, helper de rotação) está concluído. Ideias futuras:

  1. scan-miasma.sh: adicionar o modo remoto/GitHub (atualmente apenas local).
  2. Desofuscador: tratar variantes ROT-4/ROT-9 multibyte e não AES-128-GCM se forem observadas.
  3. Helper de rotação: modo opcional --revoke (protegido, com confirmação) para gh/npm/aws.

Referências

  • The bot that never was — icflorescu (dev.to)
  • Miasma worm: AI coding agent config injection — safedep.io
  • CVE-2026-35603: AI coding tools privilege escalation — Cymulate
Baixar ferramenta
ArquivoO que é
content/incident-report.fr.md / content/incident-report.en.mdRelatório completo: como funciona, desofuscação do payload, IOCs, erradicação
Scan-Miasma.ps1Scanner unificado (local + remoto), relatório JSON estruturado + Markdown por repositório — use este
iocs.psd1Indicadores compartilhados (hashes, assinaturas, pacotes maliciosos, configurações) carregados pelo scanner — edite os IOCs aqui
Expand-MiasmaPayload.ps1Desofuscador estático para setup.js — remove as camadas do empacotador/códigos de caractere → Caesar → AES-128-GCM e extrai o C2/IOCs (nunca executa o payload)
Invoke-MiasmaRotation.ps1Checklist de rotação de segredos — detecta quais credenciais estão acessíveis aqui e imprime os comandos de revogação (somente leitura; não revoga nada)
scan-miasma.shPorte em Bash da varredura local para Linux/macOS (subconjunto multiplataforma)
purge-history.shRemove arquivos maliciosos de todo o histórico do git (filter-repo → filter-branch) + backup
setup-js.yarRegras YARA para o dropper + configurações do launcher
.github/actions/miasma-guard/Ação composta do GitHub Actions reutilizável — recusa a compilação se o dropper/launcher estiver presente
.claude/Hooks do Claude Code — proteção/quarentena em tempo real + comando /miasma-scan (veja abaixo)
FerramentaNecessária paraObrigatória?
PowerShell 7+ (pwsh)Scan-Miasma.ps1, Expand-MiasmaPayload.ps1, Invoke-MiasmaRotation.ps1obrigatório (essas ferramentas)
bash + coreutils (sha256sum/shasum, awk, find)scan-miasma.sh (Linux/macOS)apenas o porte em bash
gitverificação de histórico de repositórios locais, purge-history.shobrigatório
GitHub CLI (gh, autenticado)Scan-Miasma.ps1 -Mode Remoteapenas varredura remota
npmnpm audit remoto (apenas lockfile)opcional (ignorado automaticamente se ausente)
git-filter-reporeescrita de histórico preferida (recorre ao git filter-branch integrado)opcional
YARA (yara)varredura setup-js.yaropcional
HookEventoAção
Guard-Write.ps1PreToolUse (Write/Edit/MultiEdit)Bloqueia uma escrita que injetaria um IOC do worm (cancela a chamada da ferramenta)
Guard-Bash.ps1PreToolUse (Bash)Bloqueia a execução do worm — node .github/setup.js, bun/bunx, um instalador do bun.sh via pipe
Scan-Write.ps1PostToolUse (Write/Edit/MultiEdit)Alerta e coloca em quarentena um arquivo infectado após a gravação
Session-Sweep.ps1SessionStartVarredura rápida do repositório; relata qualquer infecção pré-existente no contexto
/miasma-scancomandoWrapper sob demanda para Scan-Miasma.ps1
.claude/hooks|commands
.github/actions/miasma-guard/
.github/workflows/
  • O Guard-Bash visa a execução, não a menção: seus padrões (iocs.psd1 → CmdSigs) são ancorados à posição do comando, portanto comandos de triagem que apenas mencionam um IOC (grep "node .github/setup.js", yara -r setup-js.yar, cat setup.js) não são bloqueados — apenas a execução real de node …/setup.js / bun / um pipe de instalação do bun.sh é. Observação: a invocação de bun/bunx é bloqueada por completo (o runtime do worm); adicione à allowlist via CmdSigs se você realmente precisar do Bun.
  • ⚠️ Diferentemente do Scan-Miasma.ps1 (somente leitura), estes hooks modificam a árvore (quarentena). Eles são opcionais: o Claude Code solicita aprovação dos hooks na primeira vez que carrega .claude/settings.json.