The Biosig Project libbiosig Nex parsing heap-based buffer overflow vulnerability
Mis à jour :
Vulnérabilité critique dans libbiosig : Dépassement de tampon sur le tas
Une faille de sécurité, classée CVE-2025-XXXX (le numéro CVE spécifique n’est pas fourni dans l’article), a été découverte dans la bibliothèque libbiosig, une librairie open-source utilisée pour traiter des données de signaux médicaux. Cette vulnérabilité affecte les versions 3.9.0 et la branche principale de libbiosig.
La faille réside dans la fonctionnalité d’analyse des fichiers au format .nex. Un fichier .nex spécialement conçu peut déclencher un dépassement de tampon basé sur le tas (heap-based buffer overflow), permettant potentiellement à un attaquant d’exécuter du code arbitraire. Le score CVSSv3 est de 9.8, indiquant une criticité élevée. La cause profonde est une divergence dans le calcul du nombre total d’événements entre différentes parties du code, entraînant des opérations d’écriture hors limites dans des buffers alloués dynamiquement.
Points Clés :
- Type de vulnérabilité : Dépassement de tampon basé sur le tas (CWE-122).
- Impact : Exécution de code arbitraire.
- Vecteur d’attaque : Un fichier .nex malveillant fourni par un attaquant.
- Produit affecté : The Biosig Project libbiosig versions 3.9.0 et Master Branch (35a819fa).
- Score CVSSv3 : 9.8 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H).
Vulnérabilités :
- CWE-122 : Dépassement de tampon basé sur le tas dans la fonction
sopen_extendedlors du traitement des fichiers .nex. Cela est causé par une incohérence dans le calcul du nombre total d’événements (hdr->EVENT.N) par rapport au nombre réellement utilisé lors des écritures dans les buffers d’événements.
Recommandations :
- Mettre à jour libbiosig vers une version corrigée. (Bien que l’article mentionne une date de publication du correctif, le numéro de version corrigée n’est pas explicitement indiqué, mais on peut supposer qu’une version ultérieure à la branche Master (35a819fa) est sécurisée).
- Éviter de traiter des fichiers .nex provenant de sources non fiables jusqu’à ce que la mise à jour soit appliquée.
