Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2022-23093 — Le dépassement de tampon ICMP de FreeBSD, poc de dépassement de tampon FreeBSD | Kitploit
Outils/GitHubGitHub/sh4den/cve-2022-23093
Analyse des VulnérabilitésExploitationShellcodeDéveloppement de Charges UtilesExploitation de Binaires
GitHubsh4den/cve-2022-23093

CVE-2022-23093

Le dépassement de tampon ICMP de FreeBSD, poc de dépassement de tampon FreeBSD

Voir le dépôt
1021il y a 2 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2022-23093 Débordement de pile sous FreeBSD

Informations

Le shellcode utilisé par défaut est FreeBSD/x86-64 - execve - 28 octets de Gitsnik modifiez-le et mettez le vôtre pour démarrer.

Détails de la vulnérabilité

L'utilitaire ping, utilisé pour solliciter une réponse ICMP ECHO_RESPONSE d'un hôte ou d'une passerelle, est invoqué avec une cible IPv4, soit IPv4-host, soit IPv4-mcast-group, via le datagramme obligatoire ECHO_REQUEST du protocole ICMP. Le datagramme ECHO_REQUEST se compose d'un en-tête IP et ICMP, suivi d'un "struct timeval" et d'un nombre variable d'octets de "pad" pour remplir le paquet.

Selon l'avis de sécurité du projet FreeBSD, l'utilitaire ping récupère les paquets IP bruts du réseau pour traiter les réponses dans la fonction pr_pack(). Lors du traitement de la réponse, ping reconstruit l'en-tête IP, l'en-tête ICMP et, si présent, un "paquet cité" représentant le paquet qui a causé l'erreur ICMP. Le paquet cité comprend également un en-tête IP et un en-tête ICMP.

La fonction pr_pack() copie les en-têtes IP et ICMP reçus dans des tampons de pile pour un traitement ultérieur. Cependant, elle ne tient pas compte de la possibilité d'en-têtes d'options IP suivant l'en-tête IP, que ce soit dans la réponse ou dans le paquet cité. En présence d'options IP, pr_pack() provoque un débordement du tampon de destination jusqu'à 40 octets.

Analyse technique

L'utilitaire ping s'exécute en espace utilisateur, et lors de l'invocation de la commande ping, le binaire situé dans /sbin/ping est exécuté. Le code source de l'utilitaire est publiquement disponible sur la source FreeBSD. La fonction vulnérable, pr_pack(), imprime les informations de réponse du paquet ICMP sur stdout sous forme de chaîne, par exemple "64 bytes from 1.3.3.7: icmp_seq=1 ttl=55 time=13.7 ms."

image

Le paquet ICMP, à la fois dans la requête et la réponse, comprend des en-têtes IP avec un champ Options facultatif, comme illustré dans le diagramme ci-dessus. Dans une attaque malveillante, ces options IP sont activées et remplies d'octets non nuls.

Si un paquet ICMP est malformé ou délibérément falsifié en route vers l'hôte de destination, et que les options IP sont activées dans la demande d'écho originale, la fonction pr_pack() ne parvient pas à allouer suffisamment d'espace sur la pile pour accueillir la présence des options IP, entraînant un débordement de pile.

Dans ces cas d'erreur, la réponse de l'hôte de destination peut également inclure un "paquet cité" dans la section de données, identifiant le paquet spécifique qui a causé l'erreur ICMP. La fonction pr_pack() provoque un débordement de pile lorsque le paquet cité inclut des en-têtes ICMP.

Télécharger l’outil