
Un script bash pour la reconnaissance et les attaques DOS
Un menu de sélection bash pour des reconnaissances réseau et des attaques DOS rapides et faciles
Sudo est implémenté lorsque cela est nécessaire. Testé sur Debian et Arch.
Les contributions et les pull requests sont les plus bienvenues !
bash
sudo
curl
netcat (doit supporter l'option '-k', la variante openbsd est recommandée)
hping3 (ou nping peut être utilisé comme substitut pour les attaques par inondation)
openssl
stunnel
nmap
whois (pas essentiel mais préféré)
nslookup (ou 'host')
ike-scan
bind-tools (souvent inclus dans le paquet 'bind', nécessaire pour "host" et "nslookup")
$ wget https://raw.githubusercontent.com/GinjaChris/pentmenu/master/pentmenu
$ chmod +x ./pentmenu
$ ./pentmenu
Sinon, téléchargez la dernière version depuis https://github.com/GinjaChris/pentmenu/releases, extrayez-la et exécutez le script. Ou utilisez git clone :
git clone https://github.com/GinjaChris/pentmenu
MODULES DE RECONNAISSANCE
Show IP - utilise curl pour effectuer une recherche de votre IP externe. Exécute ip a ou ifconfig (selon le cas) pour afficher les IP des interfaces locales.
DNS Recon - reconnaissance passive, effectue une recherche DNS (directe ou inverse selon la cible saisie) et une recherche whois de la cible. Si whois n'est pas disponible, il effectue une recherche sur ipinfo.io (fonctionne uniquement pour les IP, pas pour les noms d'hôtes).
Ping Sweep - utilise nmap pour effectuer une requête ICMP echo (ping) contre l'hôte ou le réseau cible.
Quick Scan - Scanner de ports TCP utilisant nmap pour détecter les ports ouverts avec un scan TCP SYN. Nmap n'effectue pas de ping sweep avant de lancer le scan TCP SYN. Ce module analyse les 1 000 ports les plus courants. Ce module peut bien sûr être utilisé pour scanner un seul hôte ou un réseau complet, mais il est conçu pour identifier les cibles sur une plage d'adresses IP. Ce scan peut prendre beaucoup de temps, veuillez patienter.
Detailed Scan - utilise nmap pour identifier les hôtes actifs, les ports ouverts, tente l'identification du système d'exploitation, récupère les bannières/identifie la version du logiciel en cours d'exécution. Nmap n'effectue pas de ping sweep préalable dans le cadre de ce scan. La chaîne User-Agent par défaut de nmap est remplacée par celle du navigateur Microsoft Edge dans ce mode, pour aider à éviter la détection via HTTP. Tous les ports TCP de la cible (nom d'hôte/IP/sous-réseau) sont scannés. Bien que ce module puisse scanner un seul hôte ou plusieurs hôtes, son utilisation prévue est de réaliser un scan de collecte d'informations sur un seul système. Ce scan peut prendre beaucoup de temps, veuillez patienter.
UDP scan - utilise nmap pour scanner les ports UDP ouverts. Tous les ports UDP sont scannés.
Check Server Uptime - estime la disponibilité de la cible en interrogeant un port TCP ouvert avec hping3. La précision des résultats varie d'une machine à l'autre ; cela ne fonctionne pas contre tous les serveurs.
IPsec Scan - tente d'identifier la présence d'un serveur VPN IPsec à l'aide de ike-scan et de diverses propositions Phase 1. Tout texte produit par ce module, qu'il s'agisse de "handshake" ou de "no proposal chosen", indique la présence d'un serveur VPN IPsec. Voir http://nta-monitor.com/wiki/index.php/Ike-scan_User_Guide pour un excellent aperçu de ike-scan et de la phase 1 VPN.
MODULES DOS
ICMP Echo Flood - utilise hping3 pour lancer une inondation ICMP Echo traditionnelle contre la cible. Sur un système moderne, vous ne réaliserez probablement pas grand-chose, mais c'est utile pour tester les pare-feu et observer leur comportement. Utilisez 'Ctrl C' pour arrêter l'inondation. L'adresse source des paquets d'inondation est configurable. Notez que la cible peut être une IP (ex : 127.0.0.1) ou un nom d'hôte (ex : localhost.localnet.com). N'incluez PAS le protocole dans la cible (ex : http://localhost.localnet.com).
ICMP Blacknurse Flood - utilise hping3 pour lancer une inondation ICMP contre la cible. Les paquets ICMP sont de type "Destination Unreachable, Port Unreachable". Cette attaque peut provoquer une utilisation élevée du CPU sur de nombreux systèmes. Utilisez 'Ctrl C' pour arrêter l'attaque. Voir http://blacknurse.dk/ pour plus d'informations. L'adresse source des paquets d'inondation est configurable.
TCP SYN Flood - envoie une inondation de paquets TCP SYN en utilisant hping3. Si hping3 n'est pas trouvé, il tente d'utiliser l'utilitaire nmap-nping à la place. Hping3 est préféré car il envoie les paquets aussi vite que possible. Des options sont fournies pour utiliser une IP source de votre interface, ou spécifier (usurper) une IP source, ou usurper une IP source aléatoire pour chaque paquet.
Optionnellement, vous pouvez ajouter des données au paquet SYN. Tous les paquets SYN ont le bit de fragmentation défini et utilisent le MTU virtuel de 16 octets de hping, garantissant la fragmentation.
Revenir à nmap-nping signifie envoyer X paquets par seconde jusqu'à ce que Y paquets soient envoyés et permet uniquement l'utilisation de l'IP de l'interface ou d'une IP source spécifiée (usurpée).
Une inondation TCP SYN est peu susceptible de faire tomber un serveur, mais c'est un bon moyen de tester l'infrastructure des commutateurs/routeurs/pare-feu et les tables d'état.
Notez que bien que hping indique l'interface et l'IP de sortie, ce qui pourrait vous faire penser que le script ne fonctionne pas comme prévu, l'IP source sera définie comme spécifié ; examinez une capture de paquets du trafic en cas de doute !
Étant donné que la source est définissable, il est simple de lancer une attaque LAND par exemple (voir https://en.wikipedia.org/wiki/LAND). La capacité de définir la source permet également, par exemple, d'envoyer des paquets SYN vers une cible et de forcer les réponses SYN-ACK vers une deuxième cible.
TCP ACK Flood - offre les mêmes options que l'inondation SYN, mais définit le drapeau TCP ACK (Acknowledgement) à la place. Certains systèmes passeront des cycles CPU excessifs à traiter de tels paquets. Si l'IP source est définie sur celle d'une connexion établie, il est possible qu'une connexion établie soit perturbée par cette inondation TCP ACK 'aveugle'. Cette attaque est considérée comme 'aveugle' car elle ne prend en compte aucun détail d'une connexion établie (comme les numéros de séquence ou d'accusé de réception).
TCP RST Flood - offre les mêmes options que l'inondation SYN, mais définit le drapeau TCP RST (Reset) à la place. Une telle attaque pourrait interrompre des connexions établies si l'IP source est définie sur celle d'une connexion établie. Voir https://en.wikipedia.org/wiki/TCP_reset_attack par exemple.
TCP XMAS Flood - similaire aux inondations SYN et ACK, avec les mêmes options, mais envoie des paquets avec tous les drapeaux TCP définis (CWR, ECN, URG, ACK, PSH, RST, SYN, FIN). Le paquet est considéré comme 'illuminé comme un arbre de Noël'. Théoriquement au moins, un tel paquet nécessite plus de ressources de la part du récepteur pour être traité qu'un paquet standard. Cependant, de tels paquets sont assez révélateurs d'un comportement inhabituel (comme une attaque) et sont généralement facilement identifiés par les IDS/IDP.