Aller au contenu

Zen-AI-Pentest

Cadre de test de pénétration alimenté par l’IA qui orchestre 20+ outils de sécurité via LLM pour la reconnaissance automatisée, l’analyse des vulnérabilités, l’exploitation et la création de rapports.

# Cloner le référentiel
git clone https://github.com/SHAdd0WTAka/zen-ai-pentest.git
cd zen-ai-pentest

# Installer les dépendances
pip install -r requirements.txt

# Copier et configurer l'environnement
cp .env.example .env

# Éditer .env avec vos clés API et paramètres
nano .env
# Déploiement en une seule commande avec tous les outils de sécurité pré-installés
docker-compose up -d

# Vérifier que les conteneurs s'exécutent
docker-compose ps

# Afficher les journaux
docker-compose logs -f
# Charger tous les alias de commande k-*
source tools/setup_aliases.sh

# Vérifier l'installation
k-recon --help
k-exploit --help
CommandeDescription
k-recon "Target: example.com"Exécuter la reconnaissance guidée par l’IA sur une cible
k-exploit "Target: 192.168.1.1"Lancer l’agent d’exploitation contre la cible
k-reportGénérer un rapport de test de pénétration
k-auditExécuter les opérations d’audit de sécurité
source tools/setup_aliases.shCharger tous les alias d’outils CLI
docker-compose up -dDémarrer le cadre avec Docker
docker-compose logs -fSuivre les journaux des conteneurs
docker-compose downArrêter tous les conteneurs
AgentObjectif
k-reconReconnaissance — collecte d’informations, énumération des sous-domaines, analyse des ports
k-exploitExploitation — validation des vulnérabilités, livraison de payload
k-reportRapports — compiler les résultats en rapports de test de pénétration structurés
k-auditAudit — vérifications de conformité, examen de la configuration
k-socialIngénierie sociale — simulation de phishing, évaluation du prétexte
k-networkAnalyse réseau — inspection du trafic, analyse de protocole
k-mobileSécurité mobile — test d’applications Android/iOS
k-redteamOpérations red team — simulation d’adversaire, mouvement latéral
k-icsICS/SCADA — évaluation de la sécurité des systèmes de contrôle industriel
k-cloudSécurité cloud — analyse de mauvaise configuration AWS, Azure, GCP
k-cryptoAnalyse cryptographique — évaluation des suites de chiffrement, vérification des certificats
CommandeDescription
k-recon "Target: example.com"Analyse de reconnaissance complète
k-recon "Subdomain enumeration: example.com"Énumérer les sous-domaines
k-recon "Port scan: 192.168.1.0/24"Analyser la plage réseau pour les ports ouverts
k-recon "DNS enumeration: example.com"Découverte des enregistrements DNS
k-recon "Technology fingerprint: example.com"Identifier les technologies web
k-recon "OSINT gather: target_org"Collecte de renseignements à source ouverte
k-recon "SSL analysis: example.com"Analyser la configuration SSL/TLS
CommandeDescription
k-exploit "Vuln scan: example.com"Analyse automatisée des vulnérabilités
k-exploit "Web app test: https://example.com"Test de sécurité des applications web
k-exploit "SQL injection: https://example.com/login"Test d’injection SQL
k-exploit "XSS scan: https://example.com"Détection des attaques par scripts inter-sites
k-exploit "API test: https://api.example.com"Évaluation de la sécurité API
k-exploit "Auth bypass: https://example.com/admin"Test de contournement d’authentification
OutilCatégorieUtilisé par
NmapAnalyse réseauk-recon, k-network
SQLMapInjection SQLk-exploit
MetasploitCadre d’exploitationk-exploit, k-redteam
Burp SuiteTest d’application webk-exploit
GobusterForçage brut de répertoiresk-recon
NucleiAnalyse basée sur les modèlesk-exploit
BloodHoundActive Directoryk-redteam
NiktoAnalyse de serveur webk-recon
HydraCraquage de mot de passek-exploit
John the RipperCraquage de hashk-exploit
AmassÉnumération de sous-domainesk-recon
SubfinderDécouverte de sous-domainesk-recon
ffufFuzzer webk-exploit
ResponderEmpoisonnement réseauk-network
ImpacketProtocoles réseauk-network, k-redteam
CommandeDescription
k-reportGénérer un rapport de test de pénétration complet
k-report --format jsonExporter les résultats en JSON
k-report --format junitExporter en JUnit XML (intégration CI/CD)
k-report --format sarifExporter en SARIF (intégration GitHub/GitLab)
k-report --compliance pciGénérer un rapport de conformité PCI-DSS
k-report --compliance hipaaGénérer un rapport de conformité HIPAA
k-report --compliance gdprGénérer un rapport de conformité RGPD
# .github/workflows/pentest.yml
name: Security Scan
on: [push]
jobs:
  pentest:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: SHAdd0WTAka/zen-ai-pentest@v2
        with:
          target: ${{ secrets.SCAN_TARGET }}
          mode: recon
          output: sarif
# .gitlab-ci.yml
security_scan:
  image: shadd0wtaka/zen-ai-pentest:latest
  script:
    - k-recon "Target: $SCAN_TARGET"
    - k-report --format junit
  artifacts:
    reports:
      junit: report.xml
VariableDescriptionExemple
OPENAI_API_KEYClé API OpenAI pour le raisonnement LLMsk-...
ANTHROPIC_API_KEYClé API Anthropic (LLM alternatif)sk-ant-...
SCAN_TARGETCible par défaut pour les analysesexample.com
REPORT_FORMATFormat de rapport par défautjson, sarif, junit
MAX_THREADSNombre maximum de fils d’analyse concurrente10
TIMEOUTDélai d’expiration de l’analyse en secondes3600
PROXYProxy pour le trafic d’analysehttp://127.0.0.1:8080
ModeDescription
InteractiveEngagement continu avec des décisions guidées par l’IA
One-shotExécution unique avec paramètres prédéfinis
PipelineIntégration CI/CD avec codes de sortie et rapport d’état
AutonomousAnalyse entièrement pilotée par l’IA avec interaction humaine minimale
  • Toujours obtenir l’autorisation appropriée avant d’analyser une cible
  • Commencer par la reconnaissance avant l’exploitation
  • Utiliser le drapeau --proxy pour acheminer le trafic via Burp Suite pour examen manuel
  • Examiner les décisions de l’IA en mode interactif avant de permettre l’exploitation autonome
  • Générer des rapports de conformité pour les exigences réglementaires
  • Utiliser le déploiement Docker pour la cohérence des versions d’outils entre les membres de l’équipe
  • Configurer la limitation du débit pour éviter de surcharger les systèmes cibles
  • Stocker les résultats d’analyse dans le contrôle de version pour les pistes d’audit