Skip to content

Repository files navigation

🔐 Pentesting Suite

Python License Tests Educational

Toolkit de sécurité offensive à visée pédagogique : une CLI Python modulaire pour la reconnaissance réseau, structurée pour être étendue (moteur d'exploitation, génération de rapports).

⚠️ Projet d'apprentissage. Voir État actuel pour ce qui est réellement implémenté vs. ce qui reste à construire.


🎯 Ce que fait l'outil

pentesting-suite expose une interface en ligne de commande (basée sur Click) regroupant plusieurs modules de test de sécurité. L'architecture est volontairement modulaire pour servir de base d'apprentissage et d'extension.

🔍 État actuel

Module Statut Détail
Port scanner ✅ Fonctionnel Scan TCP connect (socket), parsing de plages (1-1000) et de listes (80,443,8080)
Network scanner ✅ Fonctionnel Énumération des hôtes d'un réseau en notation CIDR (192.168.1.0/24)
CLI ✅ Fonctionnel Commandes scan, exploit, full-scan, report, help avec sortie colorée
Report generator 🟡 Basique Export JSON / texte des données collectées
Exploit engine 🟡 Squelette Registre extensible (register_exploit) — aucun exploit fourni par défaut

🗺️ Roadmap

  • Modules d'exploitation concrets (SQLi, XSS, brute force) branchés sur l'ExploitEngine
  • Détection de liveness réelle (ping/ARP) dans le NetworkScanner
  • Identification de services sur les ports ouverts (banner grabbing)
  • Rapports HTML/PDF mis en forme (ReportLab est déjà en dépendance)
  • Couverture de tests étendue

🧰 Stack technique

  • Langage : Python 3.9+
  • CLI : Click + Colorama (sortie colorée)
  • Réseau : socket, ipaddress (stdlib), Scapy & Requests en dépendances
  • Qualité : pytest, black, flake8, isort, mypy
  • CI : GitHub Actions
  • Packaging : pyproject.toml / setup.py, image Docker fournie

📦 Installation

Depuis les sources

git clone https://github.com/sfrayan/PENTESTING-SUITE.git
cd PENTESTING-SUITE
pip install -e ".[dev]"

Avec Docker

docker build -t pentesting-suite:latest .
docker run -it pentesting-suite:latest

Voir docs/installation.md et docs/docker-deployment.md pour le détail.


🚀 Démarrage rapide

# Scan de ports sur une cible (fonctionnel)
pentest-suite scan --target 192.168.1.10 --ports 1-1000

# Aide
pentest-suite help
pentest-suite scan --help

Les commandes exploit et full-scan sont présentes mais s'appuient sur des modules encore au stade squelette (voir État actuel).

Plus d'exemples : docs/quickstart.md.


🏗️ Architecture

PENTESTING-SUITE/
├── src/pentesting_suite/
│   ├── cli/
│   │   └── cli_main.py          # Point d'entrée CLI (Click)
│   ├── scanner/
│   │   ├── port_scanner.py      # Scan TCP connect
│   │   └── network_scanner.py   # Énumération CIDR
│   ├── exploit/
│   │   └── exploit_engine.py    # Registre d'exploits (extensible)
│   ├── reporting/
│   │   └── report_generator.py  # Export JSON / texte
│   ├── config/
│   │   └── settings.py
│   └── utils/
│       └── logger.py
├── tests/                       # Tests pytest
├── docs/                        # installation, quickstart, docker
├── .github/workflows/           # CI (tests.yml)
└── Dockerfile / docker-compose.yml

🧪 Tests

pip install -e ".[dev]"
pytest

⚖️ Avertissement légal & éthique

⚠️ À lire avant toute utilisation.

  • Autorisé uniquement sur des systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation écrite explicite.
  • Illégal : tout accès ou test non autorisé sur des systèmes tiers.
  • Divulgation responsable : signalez les failles découvertes de manière responsable.
  • Conformité : respectez les lois en vigueur dans votre juridiction.

Ce projet est destiné exclusivement à des fins éducatives et à des tests sur systèmes autorisés. L'auteur décline toute responsabilité en cas d'usage abusif.


🤝 Contribution

Les contributions sont les bienvenues — voir CONTRIBUTING.md.


📄 Licence

Sous licence MIT — voir LICENSE.


👤 Auteur

Rayan Said Farah

💼 LinkedIn @rayan-said-farah
🐙 GitHub @sfrayan

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages