
PyExfil — kit de herramientas de Python 3 para investigar y probar bajo estrés técnicas de exfiltración de datos a través de canales de red, físicos y esteganográficos. Para simulación de red team y pruebas de detección de DLP.
Pruebas de estrés de detección y creatividad

PyExfil nació como una PoC y una especie de campo de juegos y creció hasta convertirse en algo un poco más. A mi parecer, sigue siendo una PoC desordenada que necesita mucho más trabajo y pruebas para volverse estable. El propósito de PyExfil es establecer tantas técnicas de exfiltración, y ahora también de comunicación, que PUEDEN ser utilizadas por varios actores de amenazas/malware para eludir diversas herramientas y técnicas de detección y mitigación. Puedes seguir los cambios en la página oficial de GitHub.
En términos simples, está pensado para ser utilizado como una herramienta de prueba más que como una herramienta real de Red Team. Aunque la mayoría de las técnicas y métodos deberían poder portarse y compilarse fácilmente a varios sistemas operativos, algunos estables y otros experimentales, el mecanismo de transmisión debería ser estable en todas las técnicas. Clónalo, despliégalo en un nodo de tu organización y mira qué sistemas pueden detectar qué técnicas.
Para usar pip (no necesariamente la versión más actualizada):
pip install --user PyExfil
Para código fuente:
git clone https://www.github.com/ytisf/PyExfil
cd PyExfil
pip install --user -r requirements.txt
Recomendamos instalar también py2exe para poder compilar varios módulos a un binario y facilitar el transporte. Puedes hacerlo con:
pip install py2exe
Ve a la misma carpeta donde se clonó PyExfil y ejecuta:
pip setup.py --user install
Para el uso de cada módulo, consulta el archivo USAGE.
Aunque esta herramienta se creó inicialmente como un juego y luego se convirtió en una herramienta orientada a Red Team, al final del día un uso principal de PyExfil es probar varios sistemas DLP (Protección contra Fugas de Datos) así como la detección de intrusiones. Para facilitar esta última misión, hemos creado un pequeño módulo para generar datos falsos con una estructura que coincide con conjuntos de datos PII y PCI. Estos están diseñados para activar alertas mientras se transmiten fuera de la red.
Así es como se usa:
from pyexfil.includes import CreateTestData
c = CreateTestData(rows=1000, output_location="/tmp/list.csv")
c.Run()
Después de esto, puedes usar cualquier módulo de PyExfil que desees para intentar exfiltrar el conjunto de datos creado. De esta manera, puedes probar tu detección sin arriesgar la exfiltración de datos valiosos.
Aceptamos contribuciones, desde pruebas y corrección de errores hasta canales encubiertos completamente nuevos.
NetworkModule, CommModule, PhysicalModule, StegaModule) con detalles de la API y ejemplos.Si quieres ayudar, empieza con CALL_TO_ACTION.md; cada elemento allí tiene una ruta de archivo e instrucciones claras.
Para detalles sobre la versión, consulta las etiquetas en este repositorio.
DOCUMENTATION.md y README.md en dos archivos diferentes.CALL_TO_ACTION.md para asistencia de la comunidad.tests para algunas pruebas básicas de humo. Se añadirán más pruebas orientadas a módulos más adelante.names.braille.