From 1ea50fce69b1ce8895877c0052485e8170378d41 Mon Sep 17 00:00:00 2001 From: wica-sufatmawati <116701588+wica-sufatmawati@users.noreply.github.com> Date: Fri, 1 Dec 2023 19:51:33 +0700 Subject: [PATCH] Update and Fix NULL-dereference when loading PKCS7 Calling `load_pem_pkcs7_certificates` or `load_der_pkcs7_certificates` could lead to a NULL-pointer dereference and segfault. **PoC** Here is a Python code that triggers the issue: ```python from cryptography.hazmat.primitives.serialization.pkcs7 import load_der_pkcs7_certificates, load_pem_pkcs7_certificates pem_p7 = b""" -----BEGIN PKCS7----- MAsGCSqGSIb3DQEHAg== -----END PKCS7----- """ der_p7 = b"\x30\x0B\x06\x09\x2A\x86\x48\x86\xF7\x0D\x01\x07\x02" load_pem_pkcs7_certificates(pem_p7) load_der_pkcs7_certificates(der_p7) ``` Exploitation of this vulnerability poses a serious risk of Denial of Service (DoS) for any application attempting to deserialize a PKCS7 blob/certificate. The consequences extend to potential disruptions in system availability and stability. --- scripts/tools/telink/requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/tools/telink/requirements.txt b/scripts/tools/telink/requirements.txt index bb4359b531..fdad75fce3 100644 --- a/scripts/tools/telink/requirements.txt +++ b/scripts/tools/telink/requirements.txt @@ -1,6 +1,6 @@ -cryptography==41.0.4 +cryptography==41.0.6 cffi==1.15.0 future==0.18.3 pycparser==2.21 pypng==0.0.21 -PyQRCode==1.2.1 \ No newline at end of file +PyQRCode==1.2.1