Icmp-reset
Jump to navigation
Jump to search
icmp-reset
Description
Icmp-reset est un outil qui permet d'envoyer des messages d'erreur ICMP dans le but de fermer des sessions distantes. Le schéma suivant montre la typologie de l'attaque type : une connexion est établie entre un client et un serveur. Un attaquant envoie des messages d'erreur ICMP (à l'aide de icmp-reset) vers le serveur afin de fermer la session distante.
(CLIENT) (SERVEUR) +----------------+ ??? 21 +----------------+ | 172.16.196.128 | <-------------> | 172.16.196.129 | +----------------+ conn FTP +----------------+ ^ | _________________/ / attaque | +----------------+ | 192.168.1.10 | +----------------+ (ATTAQUANT)
Site officiel : http://www.gont.com.ar/tools/icmp-attacks/
Installation
Pré-requis
Installation à partir des sources
# cd /usr/local/src/ # wget http://www.securityfocus.com/data/vulnerabilities/exploits/icmp-reset.tar.gz # tar xzvf icmp-reset.tar.gz # cd icmp-reset/ # make
Utilisation
La syntaxe de base est la suivante :
# ./icmp-reset -c CLIENT_IP[:PORT] -s SERVER_IP[:PORT] [-t client|server] [-n | -f SOURCE_ADDRESS] [-r RATE | -d DELAY] [-D PAUSE] [-l IP_TTL] [-L IPP_TTL] [-o IP_TOS] [-O IPP_TOS] [-z IP_SIZE] [-q TCP_SEQ]
Note
Il est important de spécifier au moins un port ou une plage de ports réduite pour le client et/ou le serveur. Effectivement, dans l'éventualité où aucun
port n'est précisé, le nombre de combinaisons testées sera de 65536*65536.
où
-c <client_ip>[:port] Représente l'adresse IP du client, éventuellement accompagnée du numéro de port. Il est possible de spécifier une plage de port comme suit : 1024-1100. Plus la plage est réduite, et plus l'attaque sera rapide (dans la mesure où moins de ports devrons être testés). -s <server_ip>[:port] Représente l'adresse IP du serveur, éventuellement accompagnée d'un port ou d'une plage de ports. -t client|server Spécifie qui, du client ou du serveur, sera destinataire des paquets envoyés par icmp-reset. -n Par défaut, les paquets forgés par icmp-reset spécifient une adresse source correspondant à celle du client si "-t server" est utilisé, ou à celle du serveur si "-t client" est utilisé. Si pour une raison quelconque vous souhaitez utiliser comme adresse source votre propre adresse IP, utilisez cette option. Ceci peut être utile dans l'éventualité où un filtrage egress (filtrage IP) serait appliqué. -f <src_ip> Ce paramètre permet de spécifier une adresse IP source arbitraire. Cec peut être utile dans l'éventualité où un filtrage egress serait appliqué. -r <rate> L'option -r permet de limiter la bande passante en sortie. Celle-ci est exprimée en kbps. Cette option peut servir à limiter un trafic transitant par un routeur appliquant une limitation de sortie des paquets ICMP. En cas de perte de paquets, cette option peut également être utilisée. -l IP_TTL (Champ "Time To Live" du paquet IP) -L IPP_TTL (Champ "Time To Live" de l'en-tête IP) -o IP_TOS (Champ "Type Of Service" du paquet IP) -O IPP_TOS (Champ "Type Of Service" de l'en-tête IP) -z IP_SIZE (taille du paquet IP) -q TCP_SEQ (numéro de séquence) Par défaut, les valeurs de ces champs sont fixées aléatoirement lors de la génération des paquets. Il est possible de forcer leur valeur en utilisant ces options. A noter toutefois que la valeur par défaut des champs IP_TOS (Type Of Service) et IPP_TOS (Champ TOS de l'en-tête IP) sont fixés à 0x00 (trafic normal). Note : Si le champ -z permet de modifier l'information sur la taille du paquet, la véritable taille du paquet forgé s'en trouve en revanche inchangée. -i Par défaut, le message d'erreur ICMP envoyé est un type 3 (destination unreachable), code 2 (protocol unreachable). L'option -i permet de spécifier d'autres valeurs.