Vulnerabilidades
Ataques de Contaminação de Cache em Sistemas RAG
Para otimizar o desempenho e reduzir a latência, muitas arquiteturas de Geração Aumentada por Recuperação (RAG) implementam uma camada de cache. A ideia é armazenar os resultados de buscas vetoriais para perguntas frequentes, de modo que, se outro usuário fizer uma pergunta semelhante, o sistema possa recuperar os documentos relevantes do cache em vez de realizar uma nova e custosa busca no banco de dados vetorial. Embora eficaz para a performance, essa camada de cache introduz uma nova e sutil vulnerabilidade: o ataque de contaminação de cache.
Neste ataque, um ator malicioso explora o mecanismo de cache para 'envenenar' os resultados para futuros usuários. O ataque ocorre em duas etapas. Primeiro, o atacante faz uma pergunta cuidadosamente elaborada, projetada para que o sistema RAG recupere um documento malicioso ou desinformação que ele mesmo plantou em uma fonte de dados pública ou que conseguiu acessar. O sistema então armazena em cache a associação entre a pergunta (ou seus embeddings) e o documento malicioso.
Na segunda etapa, quando um usuário legítimo faz uma pergunta semelhante e benigna, o sistema, em vez de realizar uma nova busca, encontra uma correspondência no cache e serve o documento malicioso para o LLM. O LLM, por sua vez, usa essa informação envenenada para formular uma resposta para o usuário legítimo, que pode conter desinformação, links para sites de phishing ou outras cargas maliciosas. O atacante usou o cache como um vetor para um ataque de envenenamento de dados indireto.
A defesa contra a contaminação de cache requer políticas de segurança de cache robustas. Isso inclui a implementação de políticas de invalidação de cache de curta duração (Time-to-Live - TTL), a verificação da integridade e da proveniência dos documentos antes de serem inseridos no cache, e a segmentação do cache por usuário ou por nível de permissão, para que os resultados de um usuário não possam contaminar os de outro. Otimizar a performance não pode vir ao custo da integridade das informações.