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
DetectPacket-CVE-2017-8464 — Exploitation des vulnérabilités et mise en œuvre de la prévention des vulnérabilités | Kitploit
Outils/GitHubGitHub/trg-1999/detectpacket-cve-2017-8464
Sniffing et Analyse de PaquetsAnalyse StatiqueAnalyse des VulnérabilitésExploitationAnalyse ForensiqueSécurité RéseauAnalyse de MalwareDétection d'IntrusionApprentissage et Éducation
GitHubtrg-1999/detectpacket-cve-2017-8464

DetectPacket-CVE-2017-8464

Exploitation des vulnérabilités et mise en œuvre de la prévention des vulnérabilités

Voir le dépôt
215il y a 4 ansPas 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

Construction d'une application de détection de vulnérabilité CVE-2017-8464

Source (cliquez ici)

CONTENU:

PARTIE 1: VUE D'ENSEMBLE DE CVE-2017-8464

  1. CONCEPT DE FICHIER LNK
  2. CRÉATION D'UN SYSTÈME VULNÉRABLE À CVE-2017-8464
  3. OUTIL D'ATTAQUE DE LA VULNÉRABILITÉ CVE-2017-8464

PARTIE 2: UTILISATION DE METASPLOIT POUR EXPLOITER CVE-2017-8464

2.1. MODÈLE D'EXPLOITATION DE CVE-2017-8464

2.2. EXÉCUTION DE L'EXPLOITATION DE CVE-2017-8464

PARTIE 3: CONSTRUCTION D'UN OUTIL DE DÉTECTION DE CVE-2017-8464 BASÉ SUR PYTHON

3.1. ANALYSE DE LA SIGNATURE DE CVE-2017-8464 À PARTIR DES PAQUETS RÉSEAU CAPTURÉS

3.2. FONCTION DE DÉTECTION DE L'EXPLOITATION DE CVE-2017-8464 BASÉE SUR L'ANALYSE DE LA SIGNATURE DES PAQUETS RÉSEAU

CONCLUSION

**

PARTIE 1: VUE D'ENSEMBLE DE CVE-2017-8464

  1. CONCEPT DE FICHIER LNK

LNK est un fichier système - Raccourci Windows, au format binaire développé par Microsoft.

Figure 1: Icône de raccourci sous Windows

Un fichier LNK est un raccourci ou un "lien" utilisé par Windows comme référence vers un fichier source, un dossier ou une application, similaire à un alias sur la plateforme Macintosh. Il contient le type de cible du raccourci, l'emplacement et le nom du fichier, ainsi que les programmes qui ouvrent les fichiers cibles et un raccourci optionnel. Les fichiers peuvent être créés dans Windows en cliquant avec le bouton droit sur un fichier, un dossier ou un exécutable, puis en sélectionnant 'Créer un raccourci'.

L'exploitation de cette vulnérabilité dans Microsoft Windows permet à un attaquant d'exécuter du code à distance si l'icône d'un raccourci (créé de manière spéciale) est affichée.

Figure 2: Création manuelle d'un raccourci exécutant le téléchargement et l'exécution du code d'attaque via un fichier .LNK

Le composant vulnérable est lié à la pile réseau. Une telle vulnérabilité est souvent appelée 'exploitable à distance' et peut être considérée comme une attaque exploitable au niveau du protocole ou sur plusieurs sauts réseau (par exemple, via un ou plusieurs routeurs).

  1. CRÉATION D'UN SYSTÈME VULNÉRABLE À CVE-2017-8464

Les systèmes affectés par la vulnérabilité CVE-2017-8464 sont Windows Shell dans Microsoft Windows Server 2008 SP2 et R2 SP1, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2012 Gold et R2, Windows RT 8.1, Windows 10 Gold, 1511, 1607, 1703 et Windows Server 2016. Cela permet à un utilisateur local ou à un attaquant distant d'exécuter du code arbitraire via un fichier .LNK créé manuellement, qui n'est pas correctement traité lors de l'affichage de l'icône dans l'Explorateur Windows ou toute autre application analysant l'icône du raccourci. Aussi appelée 'vulnérabilité d'exécution de code à distance LNK'.

La mise à jour de sécurité corrige la vulnérabilité en réparant la validation correcte de la référence de l'icône du raccourci. Microsoft Windows a publié une mise à jour pour cette vulnérabilité en juin 2017. Cette vulnérabilité n'affecte pas les versions Windows XP et antérieures.

  1. OUTIL D'ATTAQUE DE LA VULNÉRABILITÉ CVE-2017-8464

Metasploit

Metasploit Framework est un environnement utilisé pour tester, attaquer et exploiter les vulnérabilités des services en ligne de commande. Cet outil est disponible sur Kali Linux version VMware.

Figure 3: Outil Metasploit

Armitage

Outil à interface graphique basé sur le projet Metasploit.

Figure 4: Outil Armitage.

PARTIE 2: UTILISATION DE METASPLOIT POUR EXPLOITER CVE-2017-8464

2.1. MODÈLE D'EXPLOITATION DE CVE-2017-8464

Machine victime – Windows 7 Pro

Figure 5: Version du système d'exploitation de la victime

Figure 6: Adresse IP de la machine victime

Machine attaquante – Kali Linux – Utilisation de l'outil Metasploit.

Figure 7: Adresse IP de la machine attaquante

Le réseau actif est VMnet8 sous-réseau 192.168.169.0

2.2. EXÉCUTION DE L'EXPLOITATION DE CVE-2017-8464

  • Créer un payload reverse_tcp et écouter les connexions TCP vers la machine Kali.
  • Avec LHOST comme adresse d'écoute de la machine attaquante.

Figure 8: Création du payload et écoute de la connexion TCP vers la machine attaquante

  • Créer un fichier raccourci contenant la vulnérabilité CVE-2017-8464 pour lancer automatiquement le payload reverse_tcp inséré.

Figure 9: Création d'un fichier .lnk exécutant automatiquement le code malveillant

Figure 10: Informations de configuration du payload

  • Lancer la commande exploit pour initialiser les raccourcis contenant la vulnérabilité pointant vers le fichier payload.
  • Concrètement, comme décrit ci-dessus, il y aura un fichier payload nommé FlashPlayerCPApp.cpl et un fichier raccourci contenant la vulnérabilité qui exécute automatiquement le fichier payload.
  • Après avoir créé tous ces fichiers nécessaires, ils seront enregistrés dans le dossier /root/.msf4/local/ sur la machine attaquante, puis l'attaquant copiera tous les fichiers de ce dossier sur une clé USB quelconque.

Figure 11: Création du fichier .lnk accompagné du code malveillant

Figure 12: Copie de tout le code malveillant sur USB

  • Après avoir incité la victime à brancher la clé USB sur son ordinateur. La victime n'a pas besoin de cliquer sur quoi que ce soit dans la clé USB, mais la vulnérabilité du fichier .lnk (fichier de raccourci) lance automatiquement le payload malveillant pour exécuter du code à distance.

Figure 13: La victime branche une clé USB contenant un fichier .lnk vulnérable avec code malveillant

  • En observant la machine attaquante, on voit que la machine victime s'est connectée à la machine attaquante. À ce moment, l'attaquant a exploité avec succès CVE-2017-8464 et exécuté le code malveillant à distance sur la machine victime.

Figure 14: L'attaquant a exploité avec succès et pénétré la machine victime

**

PARTIE 3: CONSTRUCTION D'UN OUTIL DE DÉTECTION DE CVE-2017-8464 BASÉ SUR PYTHON

3.1. ANALYSE DE LA SIGNATURE DE CVE-2017-8464 À PARTIR DES PAQUETS RÉSEAU CAPTURÉS

  • Lors de l'attaque avec capture de paquets, on observe que lorsque le fichier .lnk s'exécute automatiquement, la machine victime établit une connexion TCP vers l'adresse de la machine attaquante configurée dans le payload.

Figure 15: Paquet d'attaque sur la vulnérabilité CVE-2017-8464 capturé

  • Le paquet avec le drapeau PSH permet d'envoyer directement à la machine victime plutôt que de le mettre dans le tampon.

Figure 16: Paquet avec le drapeau PSH après une connexion TCP réussie à l'attaquant

  • Ensuite, le paquet avec l'indicateur suspect 'MZ' suggère qu'il s'agit probablement d'un fichier PE malveillant à envoyer à la machine victime.

Figure 17: Indicateur suspect dans le paquet capturé envoyé par l'attaquant à la victime.

PE File Format (Portable Executable File Format): là định dạng file riêng của Win32. Tất cả các file có thể thực thi được trên Win32 như: *.EXE, *.DLL (32 bit),*.COM,*.NET, *.CPL,… đều là định dạng PE; ngoại trừ các tập tin VxDs và *.DLL (16 bit).

PE_File_Struct.png

Figure 18: Structure du fichier PE.

DOS MZ Header

Tous les fichiers PE commencent par un simple en-tête DOS MZ. Il occupe les 64 premiers octets. Cette zone est utilisée dans le cas où le programme s'exécute sous DOS.

e_magic: Signature du fichier PE, valeur : 4Dh, 5Ah (caractères 'MZ', nom du fondateur de MS-DOS : Mark Zbikowsky). Cette valeur marque un en-tête DOS valide et permet l'exécution ultérieure.

Figure 19: Signature du fichier PE dans le paquet capturé

e_lfanew: est un DWORD situé à la fin de l'en-tête DOS, contenant le décalage de l'en-tête PE par rapport au début du fichier.

DOS STUB

Le DOS Stub est simplement un petit programme EXE DOS qui affiche un message d'erreur, servant à assurer la compatibilité avec Windows 16 bits.

Figure 20: Informations dans le paquet DOS STUB capturé envoyé par l'attaquant à la victime

PE Header

L'en-tête PE est en fait la structure IMAGE_NT_HEADERS contenant les informations nécessaires pour que le chargeur charge le fichier en mémoire.

Signature: est un DWORD commençant l'en-tête PE contenant la signature PE : 50h, 45h, 00h, 00

Figure 21: Informations de e_lfanew indiquant la partie Signature de l'en-tête PE.

SECTION TABLE

La table des sections est le composant situé après l'en-tête PE, comprenant un tableau de structures IMAGE_SECTION_HEADER.

Figure 22: Contenu de la table des sections dans le paquet capturé

  • Les paquets suivants contiendront les données des sections du fichier PE.
  • À partir de là, nous prenons uniquement la partie HEADER de la structure du fichier PE malveillant, que nous hachons avec la fonction MD5 pour créer une signature de détection du code malveillant. Concrètement, nous prenons 1024 octets de données dans le paquet détecté, qui incluent l'en-tête. Les informations connexes sur le code malveillant seront stockées dans un fichier CSV pour constituer un ensemble de données de détection des codes malveillants.

Figure 23: Enregistrement de la signature et des informations liées au code malveillant dans un fichier CSV

3.2. FONCTION DE DÉTECTION DE L'EXPLOITATION DE CVE-2017-8464 BASÉE SUR L'ANALYSE DE LA SIGNATURE DES PAQUETS RÉSEAU

  • La fonction récupère les informations des protocoles liés dans frame_info ; s'il y a un champ data, elle récupère ensuite le protocole proche du champ data.

Figure 24: Fonction de récupération des informations du protocole du paquet

  • Get_info récupère les informations importantes assez similaires au champ info dans Wireshark.

Figure 25: Fonction de récupération des informations du champ info du paquet

  • Pour la fonction de conversion d'un fichier pcap en csv, elle utilise d'abord pyshark pour charger le fichier de capture temporaire (temp.pcap). Ensuite, elle extrait les informations similaires au champ info dans Wireshark et les écrit dans un fichier CSV temporaire. Dans cette fonction, elle ne prend que les paquets à partir de la couche IP et IPv6.
  • Après la conversion en fichier CSV temporaire, elle crée une copie dans le dossier packet pour une documentation ultérieure si nécessaire.

Figure 26: Fonction de conversion des paquets de Pcap en fichier CSV

  • D'abord, la fonction detectRemoteCode vérifie les informations dans le fichier modèle contenant les signatures (MD5) collectées et analysées précédemment ; les signatures sont stockées dans ce fichier modèle. Ensuite, elle ouvre le fichier CSV contenant les données temporaires capturées du trafic réseau, extrait les données du protocole TCP (1024 octets, soit 2048 caractères hexadécimaux), les décode et vérifie si elles commencent par le caractère 'MZ'. Si c'est le cas, elle le hache et le compare aux signatures déjà validées. Si une correspondance est trouvée, elle émet une alerte et enregistre dans le journal, comme une analyse statique (Static Analysis) que font généralement les outils antivirus.

Figure 27: Fonction de vérification du code malveillant sur le trafic réseau

  • Après les fonctions principales, le code de surveillance du trafic s'exécute des lignes 88 à 109, jusqu'à la fin du programme.
  • La première ligne vérifie si le dossier existe, sinon le crée.
  • Ensuite, une boucle infinie jusqu'à ce que l'utilisateur interrompe le programme avec Ctrl+C.
  • Dans la boucle, la première ligne utilise pyshark pour capturer les paquets, avec l'interface réseau que nous voulons écouter et le fichier de sortie sera temp.pcap.
  • Il capture les paquets pendant 6 secondes, puis exécute la fonction de conversion de pcap en CSV.
  • Une fois le fichier CSV prêt, il exécute la fonction de vérification de la vulnérabilité CVE-2017-8464. Il répète ces opérations régulièrement jusqu'à ce que l'utilisateur arrête le programme.

Figure 28: Boucle de capture du trafic et de vérification du code malveillant

* Test du fonctionnement du programme via l'exécution de l'exploitation.

  • Exécuter le programme de surveillance sur une machine Windows 10 (machine réelle) surveillant le réseau où nous allons reproduire l'attaque comme dans la partie 2 ci-dessus.

Figure 29: Lancement du programme de surveillance sur la machine réelle

  • Revenir aux deux machines virtuelles et répéter les opérations d'attaque comme dans la partie 2. On observe que le trafic réseau capturé a été analysé et détecte que l'attaquant exécute un code à distance LNK, comme indiqué dans la figure ci-dessous.
  • Enfin, pour terminer le processus de balayage sur le port réseau, il suffit d'appuyer sur Ctrl+C pour arrêter le programme.

Figure 30: Détection et alerte lors de l'écoute du trafic réseau

  • Après avoir scanné chaque menace dans le dossier du programme de surveillance, on voit apparaître un dossier packet contenant les fichiers convertis en CSV après capture par pyshark, ainsi qu'un fichier log.txt enregistrant les activités détectées lors de l'exécution du programme de surveillance.
  • De plus, deux fichiers temporaires sont créés, que le programme utilise pour la lecture et la conversion ; ces deux fichiers changent fréquemment, donc les paquets convertis sont stockés dans le dossier packet.
  • Enfin, le fichier sample-detect.csv, comme mentionné plus haut, stocke les signatures que nous avons analysées pour permettre au programme de détecter les menaces selon la méthode d'analyse statique (Static Analysis) couramment utilisée par les outils antivirus.

Figure 31: Dossier du programme de surveillance CVE-2017-8464

Figure 32: Dossier packet avec les fichiers enregistrant les paquets après chaque conversion lors de la capture

  • Ensuite, vérifier le fichier log.txt pour revoir les activités et voir s'il y a eu des détections. Les détections d'attaques basées sur CVE-2017-8464 sont également enregistrées dans le journal avec l'heure précise et l'IP associée, comme lors de l'exécution du programme.

Figure 33: Toutes les alertes enregistrées dans le journal

CONCLUSION

Grâce au processus d'exploitation et de construction du programme de détection de la vulnérabilité CVE-2017-8464, l'étudiant comprend comment exploiter une vulnérabilité, puis analyser la signature ainsi que les comportements du code malveillant lié à cette vulnérabilité. Cette analyse du comportement et de la signature permet à l'étudiant d'écrire son propre programme pour collecter, analyser et traiter automatiquement les informations de surveillance de la sécurité réseau afin d'émettre des alertes de détection de code malveillant.

Télécharger l’outil