TEAVOXAI
Entrega · Consultoria em IA

Auditoria de Segurança em Repos GitHub

Antes de instalar skills, repos ou códigos de terceiros: dois fluxos complementares — scan tático e arquitetura estratégica — para reduzir o risco antes que vire incidente.

Defesa em camadas
Publicado em 21 mai 2026 Versão v1.0 Entregue

Por que isso importa

Repos públicos, skills de terceiros e códigos copiados podem trazer junto credenciais expostas. Rodar um scan rápido antes do uso é uma camada barata que filtra a maioria dos problemas grosseiros — e evita que um token vazado vire um incidente seu.

ADireto no Claude Code (GitHub MCP)

PRÉ-REQ
Você precisa de: Claude Code instalado e acesso ao GitHub MCP Server.
Opção A · Recomendada
Escaneie sem sair do Claude Code
Ideal para quem já usa Claude Code no dia a dia e quer validar skills e repos no fluxo natural de conversa.
1

Configurar o servidor MCP do GitHub

No arquivo de config do Claude Code (ex.: claude_code_settings.json), adicione o servidor:

json
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
  "X-MCP-Toolsets": "secret_protection",
  "X-MCP-Tools": "run_secret_scanning"
}
2

Reiniciar o Claude Code

Feche e abra de novo para que os servidores MCP sejam recarregados.

3

Confirmar que o tool apareceu

No Claude Code, peça:

Liste as ferramentas do servidor GitHub MCP.

Confirme que existe um tool chamado run_secret_scanning.

4

Fluxo de uso no dia a dia

  • Abra o arquivo da skill ou repo que quer checar (ou copie o conteúdo).
  • Cole no Claude Code e peça:
Use o run_secret_scanning do GitHub MCP para escanear esse conteúdo por segredos e me mostrar arquivos e linhas problemáticos.

Corrija qualquer achado antes de fazer fork ou usar a skill.

BSó via CLI (GitHub Copilot CLI)

PRÉ-REQ
Você precisa de: GitHub CLI (gh) e Copilot CLI instalados. Não depende de Claude Code.
Opção B · Pura linha de comando
Escaneie via terminal, sem cliente gráfico
Bom para CI, servidores headless ou para quem prefere ficar 100% no terminal.
1

Instalar e autenticar a GitHub Copilot CLI

Siga as instruções oficiais e autentique com:

bash
gh auth login
2

Habilitar secret scanning via MCP no CLI

Rode o comando abaixo para habilitar o tool run_secret_scanning:

bash
copilot mcp --toolsets=secret_protection --tools=run_secret_scanning
3

(Opcional) Instalar plugin Advanced Security

Para melhor UX — opcional, mas recomendado:

bash
copilot /plugin install advanced-security@copilot-plugins
4

Rodar o scan no repositório ou nas alterações

Dentro do repo local, inicie o chat:

bash
copilot chat

E use um destes prompts:

Scan my current changes for exposed secrets and show me the files and lines I should update before I commit.
Run secret scanning on this repository and summarize any high-confidence findings.

Como tratar os findings

Se apontar segredos

Corrija antes de qualquer coisa. Não faça fork, não use a skill, não rode o código. Trate todo segredo encontrado como já vazado — rotacione a credencial se for sua.

Se não apontar nada

Use como filtro inicial, não como garantia absoluta. Continue desconfiando de payloads ofuscados, dependências obscuras e scripts postinstall.

Aviso importante

Secret scanning não detecta backdoors, código malicioso ofuscado, typosquatting nem prompt injection escondido em comentários. É uma camada — não a única.

Para skills e repos desconhecidos, combine com revisão manual de dependências, leitura de scripts de instalação e execução em ambiente isolado. Veja a aba Arquitetura & Checklist.

O modelo mental

Não existe bala de prata via prompt engineering. Segurança real contra prompt injection (direto ou indireto) e skills maliciosas é sistêmica — baseada em Zero Trust e isolamento de privilégios. Três camadas: ambiente, contexto de LLM e governança de código.

A Regra de Ouro

Trate toda skill externa como código de terceiros rodando com privilégio de administrador na sua máquina — até que se prove o contrário.

01Defesa em camadas

Camada 1
Isolamento de execução (sandbox radical)

Se o agente for comprometido, ele não pode ter o que roubar nem para onde enviar.

  • Containers efêmeros Docker isolado ou Firecracker, destruído e recriado a cada execução relevante.
  • Egress filtering Firewall permitindo HTTP apenas para domínios estritamente necessários. Bloqueia o curl pro servidor do atacante.
  • Volume mínimo Nunca monte ~ inteiro. Só a pasta do projeto. Mantenha .env e tokens fora do container.
Camada 2
Dual-LLM Pattern

Para mitigar prompt injection indireto (instruções escondidas em arquivos, PRs, SKILL.md), divida o fluxo em dois modelos com privilégios diferentes:

Untrusted
Dados externos
Web, PRs, e-mails, SKILL.md de terceiros
Baixo privilégio · Analista
Privilege-LLM
Lê e resume os dados. Sem acesso a tools de escrita ou execução.
Output sanitizado
JSON estruturado
Alto privilégio · Executor
Execution-LLM
Decide e executa. Recebe só o JSON — nunca o texto bruto do atacante.

Se o Analista sofrer injection, o impacto morre no output de texto. O Executor nunca toca no dado bruto.

Camada 3
Validação estrita de inputs

Mesmo quando dados externos precisam ir direto pro prompt:

  • XML tags com hash Delimite o input com tags geradas em runtime (ex.: <user_input_a8f92b>) — o atacante não consegue fechar a tag.
  • Human-in-the-Loop Aprovação manual (y/n) para qualquer tool destrutiva: escrita em disco, chamadas de rede, leitura de config.

02A Tríade Letal

Avalie se a skill combina os três poderes
Clique nos que se aplicam. Se os três acenderem, o risco é crítico — a skill pode ler segredos, ser instruída por terceiros e mandar tudo pra fora.
[fs]
Acesso a dados privados
Lê filesystem além da pasta do projeto, env vars, configs
[ext]
Exposição a conteúdo externo
Lê web, e-mails, issues, PRs ou outros inputs de terceiros
[net]
Exfiltrador (saída de rede)
Faz HTTP, webhooks ou consegue mandar dados pra fora
Selecione os poderes presentes na skill

03Checklist de homologação

0/0 verificados
01 Reputação e origem Quem fez?
02 Análise da Tríade Letal O que ela pode fazer?
03 Auditoria de código Pontos críticos no código-fonte
grep watchlist · filesystem
fs · os · path apontando para ~/.ssh · ~/.aws · ~/.config · .env
grep watchlist · execução
child_process.exec · spawn · subprocess · chamadas diretas a bash / sh / powershell
grep watchlist · rede
fetch · axios · curl apontando para IPs diretos, domínios desconhecidos ou serviços de paste (pastebin, etc.)
04 Configuração da IA Instruções em linguagem natural
05 Isolamento de execução Antes de soltar em produção

04Referências

Defesa em camadas, não em promessas

Scanner é só o primeiro filtro. A defesa real é arquitetural — isolamento de execução, dual-LLM e validação estrita de inputs. Rode os dois fluxos juntos antes de instalar qualquer skill ou repo no seu ambiente.