
Ce dépôt contient un reproducteur minimal de preuve de concept pour la CVE-2025-69419 affectant les versions vulnérables d'OpenSSL.
Le PoC démontre l'écriture hors limites de tas signalée pour PKCS12_get_friendlyname() lors du traitement d'un friendlyName BMPString spécialement conçu.
L'objectif de ce projet est de fournir un test de régression simple pour les développeurs et les chercheurs en sécurité.
Ce PoC n'implémente pas de techniques d'exploitation et vise uniquement à reproduire la corruption mémoire détectée par AddressSanitizer.
Selon l'avis public, la vulnérabilité survient lors de la conversion UTF-16 (BMPString) en UTF-8 dans :
PKCS12_get_friendlyname()OPENSSL_uni2utf8()Un BMPString malformé contenant un caractère nécessitant une séquence UTF-8 de trois octets entraîne une écriture d'un octet en tas avant le tampon alloué.
Modifiez build.sh et renseignez le chemin vers votre compilation OpenSSL.
Exécutez ensuite :
./build.sh
./run.sh
Résultat attendu sur une compilation ASan vulnérable :
ERROR: AddressSanitizer: heap-buffer-overflow
WRITE of size 1
La trace de la pile devrait inclure :
OPENSSL_uni2utf8PKCS12_get_friendlynameSans AddressSanitizer, l'application peut continuer son exécution car la corruption consiste en une écriture d'un seul octet immédiatement avant une allocation de tas. ASan détecte de manière fiable l'accès hors limites et termine le processus au point de corruption.