Sobre o projeto

AIxploit é um framework automatizado de testes de segurança projetado para descobrir vulnerabilidades nativas de IA em sistemas agênticos. É útil para testes ofensivos contra um agente graybox e para desenvolvedores de modelos medirem e melhorarem as salvaguardas contra ataques de injeção reais de ponta a ponta. O framework aborda o perigo de agentes de IA receberem ferramentas reais (bancos de dados, sistemas de arquivos, shells, servidores MCP) e agirem sobre dados que não controlam. Ele automatiza a exploração de superfícies de ataque fazendo agentes gerarem injeções, que são então disparadas contra um alvo dentro de uma sandbox descartável, verificando se o agente foi manipulado. Ele inclui três cenários de ataque: - `ransom`: Um agente de suporte que faz triagem de tickets é convencido a criptografar e-mails de clientes via injeção de SQL. - `postgres`: Um agente em um banco de dados somente leitura é pressionado a escapar do modo somente leitura e copiar segredos. - `kyc`: Um ataque escondido dentro de uma tarefa de extração de passaporte despeja registros de outros clientes. Como funciona: - **Preparar**: Gere o corpus de injeções usando `prompt_explorer` (agentes leem resumos de prompts existentes para inventar novas técnicas). Configure contêineres Docker descartáveis, dados, instruções do agente e rotinas personalizadas para semear e verificar o sucesso. - **Executar**: `aixploit.py` inicia a sandbox, planta a injeção, deixa o agente rodar e coleta injeções bem-sucedidas. - **Coletar explorações**: Os resultados são salvos em `runs/` e os acertos confirmados em `exploits/`. Início rápido: Instale as dependências, configure as credenciais da API, construa os prompts e execute `python aixploit.py --cfg cfg/ransom.yaml`. A geração de prompts é automatizada por um agente Claude que lê apenas resumos de prompts existentes para gerar novos ao longo de cinco dimensões: enquadramento de autoridade, enquadramento de pré-condição, pressão de conformidade, especificação de ação e imitação técnica. Os usuários podem adicionar seu próprio agente e testar fornecendo modelos, dados, rotinas personalizadas, instruções, prompts e um YAML de configuração. Aviso: As configurações incluídas contêm credenciais codificadas apenas para uso interno; não use em produção.