
PyExfil — Kit de ferramentas Python 3 para pesquisar e testar sob estresse técnicas de exfiltração de dados através de canais de rede, físicos e esteganográficos. Para simulação de red team e teste de detecção DLP.
Teste de Estresse de Detecção e Criatividade

PyExfil nasceu como uma Prova de Conceito (PoC) e uma espécie de playground e cresceu para ser algo um pouco maior. Aos meus olhos, ainda é uma PoC bagunçada que precisa de muito mais trabalho e teste para se tornar estável. O objetivo do PyExfil é disponibilizar o maior número possível de técnicas de exfiltração, e agora também de comunicação, que podem ser usadas por vários atores de ameaças/malwares para contornar diversas ferramentas e técnicas de detecção e mitigação. Você pode acompanhar as alterações na página oficial do GitHub.
De forma simples, é destinado a ser usado como uma ferramenta de teste, em vez de uma ferramenta real de Red Team. Embora a maioria das técnicas e métodos possa ser facilmente portada e compilada para vários sistemas operacionais, alguns estáveis, outros experimentais, o mecanismo de transmissão deve ser estável em todas as técnicas. Clone-o, implante em um nó da sua organização e veja quais sistemas conseguem capturar quais técnicas.
Para usar pip (não necessariamente a versão mais atualizada):
pip install --user PyExfil
Para a fonte:
git clone https://www.github.com/ytisf/PyExfil
cd PyExfil
pip install --user -r requirements.txt
Recomendamos também instalar py2exe para que você possa compilar vários módulos em um binário para facilitar o transporte. Você pode fazer isso com:
pip install py2exe
Vá para a mesma pasta onde PyExfil foi clonado e:
pip setup.py --user install
Para uso por módulos, consulte o arquivo USAGE.
Embora esta ferramenta tenha sido inicialmente criada como um jogo e depois se tornado uma ferramenta orientada a Red Team, no final das contas, um uso importante do PyExfil é testar vários sistemas DLP (Proteção contra Vazamento de Dados), bem como a detecção de intrusão. Para tornar essa última missão mais simples, criamos um pequeno módulo para gerar dados falsos com uma estrutura que corresponde a conjuntos de dados PII e PCI. Eles são destinados a disparar alertas enquanto são transmitidos para fora da rede.
Aqui está como usá-lo:
from pyexfil.includes import CreateTestData
c = CreateTestData(rows=1000, output_location="/tmp/list.csv")
c.Run()
Depois disso, você pode usar qualquer módulo do PyExfil que desejar para tentar exfiltrar o conjunto de dados criado. Dessa forma, você pode testar sua detecção sem arriscar exfiltrar dados valiosos.
Aceitamos contribuições — desde testes e correções de bugs até novos canais ocultos.
NetworkModule, CommModule, PhysicalModule, StegaModule) com detalhes da API e exemplos.Se quiser ajudar, comece com CALL_TO_ACTION.md — cada item lá tem um caminho de arquivo e instruções claras.
Para detalhes sobre versões, veja as tags neste repositório.
DOCUMENTATION.md e README.md em dois arquivos diferentes.CALL_TO_ACTION.md para assistência da comunidade.tests para alguns testes básicos de fumaça. Adicionarei mais testes orientados a módulos posteriormente.names.braille.