CVE-2025-69419
Écriture hors limites dans la conversion UTF-8 de PKCS12_get_friendlyname()
- Publié
- 27 janv. 2026
- Mise à jour
- 12 mai 2026
- Attribution de CNA
- openssl
- Preuve observée
- 28 août 2026
CVSS primaire
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:NFaible · 30 prochains jours
- Percentile
- 46,0 %
- Date du modèle
- 21 sept. 2026
EPSS est une estimation statistique, et non une certitude ou une mesure d'impact. Combinez-le avec CVSS, le statut KEV, l'exposition et votre environnement.
Résumé
Résumé du problème : L'appel de la fonction PKCS12_get_friendlyname() sur un fichier PKCS#12 malveillant avec un nom convivial BMPString (UTF-16BE) contenant un point de code BMP non-ASCII peut déclencher une écriture d'un octet avant le tampon alloué. Résumé de l'impact : L'écriture hors limites peut provoquer une corruption de mémoire pouvant avoir diverses conséquences, notamment un déni de service. La fonction OPENSSL_uni2utf8() effectue une conversion en deux passes d'un BMPString PKCS#12 (UTF-16BE) vers UTF-8. Lors de la seconde passe, lors de l'émission des octets UTF-8, la fonction auxiliaire bmp_to_utf8() transmet incorrectement le nombre restant d'octets source UTF-16 comme capacité du tampon de destination à UTF8_putc(). Pour les points de code BMP supérieurs à U+07FF, l'UTF-8 nécessite trois octets, mais la capacité transmise peut être de seulement deux octets. UTF8_putc() renvoie alors -1, et cette valeur négative est ajoutée à la longueur de sortie sans validation, ce qui rend la longueur négative. L'octet NUL final est ensuite écrit à un décalage négatif, provoquant une écriture hors du tampon alloué sur le tas. La vulnérabilité est accessible via l'API publique PKCS12_get_friendlyname() lors de l'analyse de fichiers PKCS#12 contrôlés par un attaquant. Bien que PKCS12_parse() utilise un chemin de code différent qui évite ce problème, PKCS12_get_friendlyname() invoque directement la fonction vulnérable. L'exploitation nécessite qu'un attaquant fournisse un fichier PKCS#12 malveillant à analyser par l'application, et l'attaquant peut simplement déclencher une écriture d'un octet zéro avant le tampon alloué. Pour cette raison, le problème a été évalué comme de gravité faible selon notre politique de sécurité. Les modules FIPS dans les versions 3.6, 3.5, 3.4, 3.3 et 3.0 ne sont pas affectés par ce problème, car l'implémentation PKCS#12 se trouve en dehors de la limite du module FIPS OpenSSL. OpenSSL 3.6, 3.5, 3.4, 3.3, 3.0 et 1.1.1 sont vulnérables à ce problème. OpenSSL 1.0.2 n'est pas affecté par ce problème.
Sources
1Utilisation responsable
Utilisez les informations de vulnérabilité uniquement sur les systèmes que vous possédez ou que vous êtes autorisé à tester. Kitploit renvoie aux métadonnées de la recherche publique et ne stocke pas de code d'exploitation ni de charges utiles malveillantes.