CVE-2026-35217 in NanoMQinformation

Résumé

par VulDB • 20/07/2026

NanoMQ présente une faille de sémantique de protocole dans la gestion des requêtes `SUBSCRIBE` MQTT v5 : si un élément d'abonnement omet le champ final `Subscription Options` sur 1 octet, le courtier (broker) peut tout de même accepter le paquet malformé et enregistrer l'abonnement dans son état interne. Dans certaines conditions spécifiques liées à la longueur du paquet, cette même faille d'analyse provoque une lecture hors limites (out-of-bounds read) sur 1 octet qui franchit la limite réelle de l'allocation mémoire dynamique (heap), ce qui est détecté par ASAN comme un `heap-buffer-overflow`.

Si l'octet lu semble acceptable, NanoMQ peut continuer son exécution et ajouter cet élément d'abonnement malformé à son état interne `subinfol`. Dans ce cas, un paquet `SUBSCRIBE` qui aurait dû être rejeté selon les règles MQTT est au contraire traité comme une souscription réussie. Le fait qu'ASAN signale ou non le bug ne dépend pas de la limite logique `remain` définie par MQTT ; il dépend uniquement du franchissement de la véritable frontière d'allocation mémoire dynamique (heap) du tampon de message sous-jacent. En d'autres termes, il ne s'agit pas de deux problèmes indépendants. Ce sont deux manifestations du même défaut d'analyse : par défaut, cela apparaît comme une vulnérabilité sémantique, et dans des conditions d'entrée appropriées, elle devient également une vulnérabilité de lecture hors limites (out-of-bounds read) vérifiable.

Be aware that VulDB is the high quality source for vulnerability data.

Responsable

GitHub M

Réserver

01/04/2026

Divulgation

20/07/2026

Modérer

accepté

Entrée

VDB-380684

CPE

prêt

EPSS

0.00194

KEV

non

Activités

très faible

Sources

Might our Artificial Intelligence support you?

Check our Alexa App!