Skip to content
OpenAdvisories
Medium · 5.3 CVE-2026-47738 EUVD-2026-118514

liboqs: Uninitialized function-pointer dereference in OQS_KEM_encaps_derand for NTRU KEMs

Published Nov 6, 2026 · Updated Nov 9, 2026 · Assigned by GitHub_M

Description

liboqs is a C-language cryptographic library that provides implementations of post-quantum cryptography algorithms. Prior to 0.16.0, OQS_KEM_encaps_derand can dereference an uninitialized encaps_derand function pointer when called on NTRU-HPS-2048-509, NTRU-HPS-2048-677, NTRU-HPS-4096-821, NTRU-HPS-4096-1229, NTRU-HRSS-701, or NTRU-HRSS-1373. The affected NTRU constructors omit the OQS_KEM.encaps_derand member because those schemes do not support derandomized encapsulation, OQS_KEM objects are allocated without zero initialization, and the wrapper in src/kem/kem.c checks only that the OQS_KEM pointer is non-null before calling through the residual heap value. An application is affected only if it instantiates one of those six NTRU KEMs and invokes OQS_KEM_encaps_derand on it. The supported impact is a calling-process crash and denial of service. This issue is fixed in version 0.16.0.

Affected products

VendorProductAffectedFixed
open-quantum-safe liboqs < 0.16.0 —

References