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-26399-Disclosure — Divulgation d'une vulnérabilité use-after-return basée sur la pile dans Arduino_Core_STM32, détaillant la cause racine technique, les versions concernées et le correctif, avec une analyse de l'impact sur la sécurité. | Kitploit
Outils/GitHubGitHub/acen28/cve-2026-26399-disclosure
Sécurité des Systèmes EmbarquésAnalyse des VulnérabilitésFuzzingSécurité Matériel et IoT
GitHubacen28/cve-2026-26399-disclosure

CVE-2026-26399-Disclosure

Divulgation d'une vulnérabilité use-after-return basée sur la pile dans Arduino_Core_STM32, détaillant la cause racine technique, les versions concernées et le correctif, avec une analyse de l'impact sur la sécurité.

Voir le dépôt

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
16il y a 4 moisPas encore vérifié

CVE-2026-26399 : Use-After-Return basé sur la pile dans Arduino_Core_STM32 (versions héritées)

Résumé

Une vulnérabilité de type use-after-return basée sur la pile existe dans les versions héritées de Arduino_Core_STM32 antérieures à la version 1.7.0.

Le problème se situe dans l'implémentation de pwm_start(), où un objet TIM_HandleTypeDef est alloué sur la pile et son adresse est transmise à la logique d'initialisation HAL. Ce pointeur peut ensuite être conservé dans un registre global de gestion des timers et être déréférencé de manière asynchrone par les routines de service d'interruption après que la trame de pile d'origine a déjà été retournée.

Cette vulnérabilité a été identifiée sous le numéro CVE-2026-26399 par MITRE.

Produit concerné

  • Produit : Arduino_Core_STM32
  • Éditeur / Projet : stm32duino / écosystème STMicroelectronics
  • Versions concernées : de v0.1.0 à v1.6.1
  • Version corrigée : v1.7.0

Type de vulnérabilité

  • CWE-562 : Use After Return
  • Pointeur pendant basé sur la pile / use-after-return

Détails techniques

Dans l'implémentation héritée de pwm_start(), une structure TIM_HandleTypeDef est créée comme variable locale sur la pile :

root@kitploit:~
void pwm_start(...) {
    TIM_HandleTypeDef timHandle = {};
    HAL_TIM_PWM_Init(&timHandle);
    ...
}

L'adresse de cet objet local est transmise à la logique de support HAL et peut être stockée dans l'état global de gestion des timers, comme un registre global de gestion des handles de timers.

Après le retour de pwm_start(), l'objet sur la pile n'est plus valide. Cependant, les gestionnaires d'interruption de timer asynchrones ultérieurs peuvent toujours déréférencer le pointeur obsolète, provoquant une corruption mémoire et un comportement indéfini.

Impact

L'impact de sécurité possible comprend :

  • Déni de service (par exemple, crash ou HardFault)
  • Exécution de code potentielle dans des conditions favorables de disposition mémoire et de contrôle

Comme il s'agit d'un problème au niveau de la bibliothèque, l'exploitabilité réelle dépend de la manière dont la bibliothèque vulnérable est intégrée dans le firmware et de la façon dont les entrées contrôlées par l'attaquant peuvent influencer la réutilisation de la pile et le timing des interruptions.

Composants concernés

  • cores/arduino/stm32/analog.c
  • pwm_start()
  • TIM_HandleTypeDef
  • logique de suivi global des handles de timers (par exemple, timer_handles)

Correctif

Le problème semble avoir été résolu indirectement dans la version 1.7.0 lors d'une refactorisation qui a remplacé le chemin de gestion basé sur la pile précédent par une conception différente de gestion des timers. Aucun avis de sécurité dédié ne semble avoir été publié pour cette vulnérabilité héritée.

Découverte

Ce problème a été identifié lors de recherches de sécurité sur des firmwares impliquant du fuzzing et une analyse des causes racines de firmwares STM32 hérités construits sur Arduino_Core_STM32.

Contact éditeur

Le PSIRT de l'éditeur a été contacté. La réponse a indiqué que les versions actuelles ne sont pas concernées car le problème avait déjà été corrigé dans la version 1.7.0, mais aucun CVE dédié ne semble avoir été demandé par l'éditeur à ce moment-là.

Crédit

Découvert par Jin Chang.

Références

  • Dépôt du projet : https://github.com/stm32duino/Arduino_Core_STM32
  • Identifiant CVE : CVE-2026-26399
Télécharger l’outil