Request an audit

// Security advisory · Fixed upstream

PR #766Fix authored

oqs-provider double-free in signature handling.

Double-free vulnerability in oqs-provider. Fix contributed as upstream PR #766, merged and credited.

Published
Product
oqs-provider
Affected
oqs-provider with OpenSSL 3.4 and later, before PR #766
Fixed in
PR #766, merged 13 Apr 2026
Research area
Credit
Eva Crystal (0xiviel), XSource Security

Summary

oqs-provider is the OpenSSL 3 provider that adds post-quantum algorithms from liboqs. OpenSSL 3.4 introduced a signature field in the signature context, and oqs_sig_dupctx() copied the context with a shallow struct copy, so the original and the duplicate shared one heap pointer. Freeing both contexts freed the same block twice.

Impact

A double free in a code path OpenSSL exercises whenever a signature context is duplicated. Memory corruption of that kind is a crash at best; the exact reach depends on the allocator and on what the application does between the two frees.

Fix

Reported privately to the maintainers with the fix attached. PR #766 clears the field after the shallow copy and deep-copies it with OPENSSL_memdup; ASan-clean on the reproducer. Merged upstream on 13 Apr 2026. The maintainers chose not to request a CVE.

Credit

Reported and fixed by Eva Crystal (iiviel / 0xiviel), XSource Security.

More disclosures

All disclosures →

Published · NVD
CVE-2026-34876

Mbed TLS out-of-bounds read

Out-of-bounds read in mbedtls_ccm_finish(): an oversized tag_len in the multipart CCM API exposes adjacent CCM context data. Discovered through the Intigriti Trusted Firmware program.

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
7.5 · High · CVSS 3.1