testing-prompt-injection-in-rag-pipelines
Faz seu agente testar sistemas de IA contra injeção de prompts. Ele procura por maneiras de enganar o sistema através de dados recuperados. Útil para garantir que chatbots e sistemas de Q&A sejam seguros.
O que ela faz
Esta ferramenta ajuda a testar a segurança de sistemas de IA que respondem perguntas com base em documentos. Ela procura por maneiras de enganar o sistema para que ele revele informações ou aja de forma inesperada, explorando como ele busca e usa os documentos.
Quando usar
- ✓Ao testar a segurança de um chatbot de IA antes de ele ser usado.
- ✓Para verificar se as proteções contra instruções maliciosas estão funcionando.
- ✓Quando você quer ter certeza de que documentos confidenciais não serão expostos.
Exemplo do que pedir para a IA
“Teste a segurança do nosso chatbot interno para ver se ele pode ser enganado a revelar informações de outros departamentos.”
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 usa outras ferramentas (garak, Promptfoo, PyRIT) para enviar 'instruções secretas' disfarçadas de documentos. Ela verifica se o sistema de IA as executa ou se as ignora.
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 mukul975/Anthropic-Cybersecurity-Skills --skill testing-prompt-injection-in-rag-pipelinesOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/testing-prompt-injection-in-rag-pipelines/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.
Testando Injeção de Prompt em Pipelines RAG
Aviso de uso autorizado: Esta habilidade descreve técnicas de teste ofensivas contra sistemas de Geração Aumentada por Recuperação (RAG). Execute essas sondas apenas contra aplicações que você possui ou tem autorização explícita por escrito para testar. Entradas adversárias que exfiltram documentos ou sequestram um modelo podem causar danos reais a sistemas de produção e usuários downstream. Sempre teste em um ambiente não produtivo primeiro e siga suas regras de engajamento (RoE).
Visão Geral
Pipelines de Geração Aumentada por Recuperação (RAG) combinam um modelo de linguagem grande (LLM) com uma camada de recuperação (um banco de dados vetorial como FAISS, Chroma, Pinecone, Milvus ou pgvector) para que o modelo possa responder a perguntas sobre documentos privados. A camada de recuperação é uma superfície de injeção: qualquer texto que o recuperador retorna é concatenado na janela de contexto do modelo e é tratado pelo modelo como autoritativo. Um atacante que pode influenciar o corpus de documentos (um PDF corrompido, uma edição maliciosa em uma wiki, um ticket de suporte plantado, um e-mail elaborado) pode inserir instruções que o modelo seguirá quando esse trecho for recuperado. Isso é injeção de prompt indireta entregue através do canal de recuperação, e corresponde ao AML.T0051 (Injeção de Prompt LLM) do MITRE ATLAS e ao LLM01:2025 Injeção de Prompt do OWASP.
Além da injeção em nível de texto, os pipelines RAG são vulneráveis na camada de embedding. Um atacante que entende o modelo de embedding pode criar texto que se posiciona perto de consultas de alto valor no espaço vetorial ("manipulação de embedding" / envenenamento de recuperação), garantindo que o trecho malicioso seja recuperado para uma consulta alvo, mesmo quando não é semanticamente relevante para um humano. Esta habilidade percorre a sondagem sistemática de ambas as superfícies usando o garak da NVIDIA, plugins de red-team do Promptfoo e o PyRIT da Microsoft, com comandos verificados e executáveis da documentação de cada ferramenta.
Quando Usar
- Ao testar a segurança de um chatbot RAG, assistente de conhecimento interno ou produto de Perguntas e Respostas sobre documentos antes ou depois do lançamento.
- Ao validar que os mecanismos de proteção de recuperação (filtragem de entrada/saída, sandboxing de contexto) realmente bloqueiam instruções injetadas.
- Durante um engajamento de red-team de IA com escopo para testar a camada de aplicação LLM (cobertura do OWASP LLM Top 10).
- Ao ingerir conteúdo controlável pelo usuário ou de terceiros em um banco de dados vetorial e precisar provar o raio de explosão de um documento corrompido.
- Como um portão de regressão em CI/CD: reexecute o conjunto de sondas a cada alteração de template de prompt ou recuperador.
Pré-requisitos
- Python 3.10-3.13 e um ambiente virtual.
- Acesso à rede para a aplicação RAG alvo (API HTTP ou um harness local que você controla).
- Autorização / RoE assinado para o alvo.
- Instale as ferramentas:
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
# NVIDIA garak — LLM vulnerability scanner
python -m pip install -U garak
# Microsoft PyRIT — Python Risk Identification Tool (Python 3.10-3.13)
pip install pyrit
# Promptfoo — declarative red-team / eval CLI (Node.js 18+)
npm install -g promptfoo
# or run ad hoc with: npx promptfoo@latest
- Para experimentos locais de envenenamento de embedding:
pip install sentence-transformers faiss-cpu numpy.
Objetivos
- Enumerar a superfície de recuperação do pipeline RAG alvo e identificar onde o conteúdo não confiável entra no corpus.
- Executar sondas de injeção automatizadas com garak (
promptinject,latentinjection,leakreplay) e capturar taxas de aprovação/falha. - Criar configurações de red-team do Promptfoo usando os plugins
indirect-prompt-injectionerag-document-exfiltration. - Conduzir campanhas de injeção multi-turno com orquestradores PyRIT contra o endpoint alvo.
- Demonstrar envenenamento de recuperação no espaço de embedding para que uma consulta de aparência benigna recupere de forma confiável um trecho de atacante.
- Produzir evidências (transcrições, trechos recuperados, saída do scorer) e mapear cada descoberta para OWASP LLM01 e ATLAS AML.T0051.
Mapeamento MITRE ATT&CK
Esta habilidade está ancorada no MITRE ATLAS (o companheiro específico de IA para o ATT&CK). Os nomes abaixo são os nomes oficiais das técnicas do ATLAS.
| ID | Nome Oficial | Relevância |
|---|---|---|
| AML.T0051 | Injeção de Prompt LLM | Técnica principal — instruções injetadas via contexto recuperado substituem a intenção do sistema |
| AML.T0051.001 | Injeção de Prompt LLM: Indireta | Injeção entregue através de documentos que o recuperador RAG ingere, não entrada direta do usuário |
…
Perguntas frequentes
O que é 'prompt injection'?
É quando alguém tenta dar uma instrução secreta para a IA, escondida em um texto normal, para fazê-la agir de forma diferente do esperado.
O que é RAG?
RAG significa 'Retrieval-Augmented Generation'. É uma técnica onde a IA busca informações em uma base de dados (documentos) antes de gerar uma resposta, tornando as respostas mais precisas e informadas.
Por que isso é importante?
Sistemas de IA podem ser usados para acessar informações importantes. Testar a segurança garante que eles não sejam usados para roubar dados ou executar ações indesejadas.
Detalhes
Descrição original do autor
Probes Retrieval-Augmented Generation pipelines for indirect prompt injection via poisoned retrieved documents and embedding-space manipulation, using NVIDIA garak, Promptfoo red-team plugins, and Microsoft PyRIT against vector stores like FAISS, Chroma, Pinecone, or pgvector. Use when security-testing a RAG chatbot or document-Q&A system, validating retrieval guardrails, or gating CI/CD on prompt
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #6234
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC