Le pentesting (test d'intrusion) en Python s'appuie sur une multitude de modules couvrant la reconnaissance, le réseau, l'audit web, l'exploitation et l'analyse binaire.
Voici la liste non exhaustive des bibliothèques Python les plus utilisées par les pentesteurs, organisées par phase d'attaque.
1. Reconnaissance & OSINT (Recherche d'informations)
- dnspython : Manipulation et requêtes DNS poussées (résolution, transferts de zone, énumération de sous-domaines).
- shodan : API officielle du moteur de recherche Shodan pour identifier les objets connectés, serveurs exposés et vulnérabilités à distance.
- python-whois : Extraction des données WHOIS relatives à un nom de domaine ou une adresse IP.
- pygeoip / geoip2 : Géolocalisation d'adresses IP et identification des AS (Autonomous Systems).
- twint : Scraping Twitter/X avancé sans utiliser l'API officielle pour l'OSINT ciblé sur les réseaux sociaux.
2. Analyse Réseau & Balayage (Scanning)
- scapy : Le couteau suisse ultime. Permet de forger, injecter, capturer et décoder des paquets réseau sur-mesure (ARP, TCP, UDP, ICMP, DNS...).
- python-nmap : Wrapper permettant d'automatiser le scanneur Nmap, d'analyser ses résultats XML et de créer des scripts de découverte de réseau.
- pyshark : Wrapper Python au-dessus de TShark (Wireshark) pour capturer et analyser du trafic réseau en direct ou depuis des fichiers .pcap.
- netifaces : Récupération des interfaces réseau locales, adresses IP et passerelles de la machine de test.
- dpkt : Parsing bas niveau très rapide de paquets réseau et de fichiers de capture .pcap.
3. Audit Web & Exploitation d'API
- requests / httpx : Forge de requêtes HTTP/S personnalisées (gestion des cookies, en-têtes, proxies) pour auditer les applications web. httpx gère le HTTP/2 et l'asynchrone.
- BeautifulSoup4 / lxml : Parsing HTML/XML pour extraire automatiquement des formulaires, des liens cachés ou des métadonnées lors des audits web.
- selenium / playwright : Automatisation de navigateurs pour l'audit d'applications Single Page (SPA), l'injection XSS dynamique et le bypass de protections JS.
- urllib3 : Gestionnaire d'HTTP bas niveau, particulièrement utile pour manipuler finement les connexions réseau et les pools de sockets.
- websockets : Interaction et fuzzing sur les liaisons WebSocket des applications web modernes.
4. Attaque d'Infrastructure & Active Directory
- impacket : La référence absolue pour auditer les réseaux Windows/AD. Inclut les implémentations SMB, Kerberos, NTLM, MSRPC (moteur derrière Pass-the-Hash, Kerberoasting, Secretsdump).
- ldap3 : Interaction avec les serveurs Active Directory via LDAP pour énumérer les utilisateurs, groupes et permissions.
- pypsrp : Client Python pour PowerShell Remoting (WinRM), idéal pour exécuter du code à distance sur des serveurs Windows.
- paramiko : Implémentation du protocole SSHv2 pour la connexion automatique, l'exécution de commandes distantes et le tunneling.
5. Exploitation de Binaires & Reverse Engineering
- pwntools : Framework phare pour l'écriture d'exploits (CTF, buffer overflow, ROP chains, shellcode generation, interactions I/O).
- pefile : Analyse de la structure des exécutables Windows (fichiers PE : .exe, .dll).
- pyelftools : Analyse et extraction d'informations sur les fichiers binaires au format ELF (Linux) et DWARF.
- capstone : Engine de désassemblage multi-architecture (x86, ARM, MIPS...).
- keystone : Engine d'assemblage (convertit le code assembleur en octets binaires/shellcode).
- ropper / ROPgadget : Recherche automatique de gadgets ROP (Return-Oriented Programming) dans les fichiers binaires.
- angr : Suite d'analyse binaire complexe permettant l'exécution symbolique et la recherche automatique de chemins d'exploitation.
6. Post-Exploitation & Bruteforce
- cryptography / pycryptodome : Manipulations cryptographiques bas niveau pour déchiffrer des jetons capturés ou casser des protocoles maison.
- passlib / bcrypt : Utilitaires de manipulation et vérification de hachages (MD5, SHA, Argon2, bcrypt) pour la création de scripts de casse de mots de passe.
- faker : Génération de données factices (noms, adresses, cartes de crédit) pour alimenter des attaques d'ingénierie sociale ou tester des formulaires.
Auteur : Younes Derfoufi
Lieu de travail : CRMEF OUJDA
Site Web : www.tresfacile.net
Chaine YouTube : https://www.youtube.com/user/InformatiquesFacile
Me contacter : https://www.tresfacile.net/me-contacter/



