zeroize-audit
Verifica se dados sensíveis em códigos C/C++/Rust são apagados corretamente. Ajuda a evitar vazamentos de informações importantes como senhas.
O que ela faz
Esta ferramenta verifica seu código de programação (C, C++, Rust) para garantir que informações sensíveis, como senhas ou chaves, sejam completamente apagadas após o uso. Ela procura por falhas onde esses dados podem vazar ou não ser removidos corretamente, mesmo quando o compilador tenta otimizar o código.
Quando usar
- ✓Ao revisar código que lida com dados confidenciais (senhas, chaves, etc.).
- ✓Para verificar se a limpeza de dados sensíveis é feita de forma segura em programas importantes.
- ✓Para auditar implementações de criptografia e sistemas de autenticação.
Exemplo do que pedir para a IA
“Verifique meu código C++ em busca de vazamentos de dados sensíveis e garanta que as senhas sejam apagadas corretamente.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta analisa o código em diferentes níveis, incluindo o código de máquina (assembly), para ver exatamente como os dados sensíveis são manipulados e se são apagados. Ela compara o código com e sem otimizações para encontrar problemas que só aparecem em versões mais rápidas.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill zeroize-auditOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/zeroize-audit/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Disponibilidade de Material de Apoio
Este texto do catálogo contém as orientações inline abaixo, mas não inclui os seguintes caminhos de suporte. Eles são pré-requisitos externos, não arquivos empacotados:
Solicite o material de suporte original ou uma instalação existente antes de usar uma etapa que dependa desses caminhos; este catálogo não identifica uma fonte de download verificada para eles. Resolva cada caminho em relação a essa instalação, inspecione seu conteúdo e verifique quaisquer licenças aplicáveis e pré-requisitos de execução. Não execute um comando ou afirme que um procedimento referenciado foi seguido até que seu arquivo necessário exista. Não fabrique os scripts ausentes nem trate um arquivo não relacionado com o mesmo nome como equivalente. Etapas independentes totalmente documentadas aqui podem prosseguir dentro do escopo autorizado do usuário; relate qualquer etapa dependente como indisponível.
⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.
Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista, extraia dados ou tente acesso a credenciais contra um alvo:
- Peça ao usuário para declarar o URL, IP, conta ou recurso exato do alvo.
- Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
- Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
- Aguarde a confirmação explícita na conversa atual.
Sem essa confirmação, permaneça apenas em modo de leitura e forneça apenas orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.
zeroize-audit — Habilidade Claude
Quando Usar
- Auditoria de implementações criptográficas (chaves, sementes, nonces, segredos)
- Revisão de sistemas de autenticação (senhas, tokens, dados de sessão)
- Análise de código que lida com PII ou credenciais sensíveis
- Verificação de limpeza segura em bases de código críticas para segurança
- Investigação de segurança de memória no manuseio de dados sensíveis
Quando NÃO Usar
- Revisão geral de código sem foco em segurança
- Otimização de desempenho (a menos que relacionada à limpeza segura)
- Tarefas de refatoração não relacionadas a dados sensíveis
- Código sem segredos identificáveis ou valores sensíveis
Propósito
Detectar a falta de zeroização de dados sensíveis no código-fonte e identificar zeroizações que são removidas ou enfraquecidas por otimizações do compilador (por exemplo, eliminação de dead-store), com evidências obrigatórias de LLVM IR/asm. As capacidades incluem:
- Análise em nível de assembly para transbordamento de registradores e retenção de pilha
- Rastreamento de fluxo de dados para cópias de segredos
- Avisos de segurança do alocador de heap
- Análise semântica de IR para desdobramento de loop e forma SSA
- Análise de grafo de fluxo de controle para verificação de cobertura de caminho
- Geração de teste de validação em tempo de execução
Escopo
- Somente leitura contra a base de código alvo (não modifica o código auditado; grava artefatos de análise em um diretório de trabalho temporário).
- Produz um relatório estruturado (JSON).
- Requer contexto de compilação válido (
compile_commands.json) e unidades de tradução compiláveis. - Descobertas "otimizadas" permitidas apenas com evidência do compilador (diferença IR/asm).
Entradas
Veja {baseDir}/schemas/input.json para o esquema completo. Campos principais:
| Campo | Obrigatório | Padrão | Descrição |
|---|---|---|---|
path |
sim | — | Raiz do repositório |
compile_db |
não | null |
Caminho para compile_commands.json para análise C/C++. Necessário se cargo_manifest não estiver definido. |
cargo_manifest |
não | null |
Caminho para Cargo.toml para análise de crate Rust. Necessário se compile_db não estiver definido. |
config |
não | — | YAML definindo heurísticas e limpezas aprovadas |
opt_levels |
não | ["O0","O1","O2"] |
Níveis de otimização para comparação de IR. O1 é o nível de diagnóstico: se uma limpeza desaparecer em O1, é uma DSE simples; O2 captura eliminações mais agressivas. |
languages |
não | ["c","cpp","rust"] |
Idiomas a serem analisados |
max_tus |
não | — | Limite de unidades de tradução processadas do banco de dados de compilação |
mcp_mode |
não | prefer |
off, prefer ou require — controla o uso do Serena MCP |
mcp_required_for_advanced |
não | true |
Rebaixa SECRET_COPY, MISSING_ON_ERROR_PATH e NOT_DOMINATING_EXITS para needs_review quando o MCP não estiver disponível |
mcp_timeout_ms |
não | — | Orçamento de tempo limite para consultas semânticas do MCP |
…
Perguntas frequentes
O que é 'zeroização'?
Zeroização é o ato de apagar dados sensíveis substituindo-os por zeros ou outros valores inofensivos, garantindo que não possam ser recuperados.
Por que o compilador pode remover a 'zeroização'?
Compiladores otimizam o código para torná-lo mais rápido. Se o compilador achar que os dados apagados não são mais necessários, ele pode remover a instrução de apagamento (zeroização) para economizar tempo de processamento, o que pode ser um risco de segurança.
Preciso ter permissão para usar esta ferramenta?
Sim, esta ferramenta é apenas para fins educacionais ou avaliações de segurança autorizadas. Você precisa de permissão explícita e por escrito do proprietário do sistema antes de usá-la.
Detalhes
Descrição original do autor
Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C/C++/Rust code handling secrets, keys, passwords, or other sensitive data.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4624
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC