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

Published Nov 6, 2026
·
Updated

liboqs is a C-language cryptographic library that provides implementations of post-quantum cryptography algorithms. Prior to 0.16.0, OQSKEMencapsderand can dereference an uninitialized encapsderand 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 OQSKEM.encapsderand member because those schemes do not support derandomized encapsulation, OQSKEM objects are allocated without zero initialization, and the wrapper in src/kem/kem.c checks only that the OQSKEM 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 OQSKEMencapsderand on it. The supported impact is a calling-process crash and denial of service. This issue is fixed in version 0.16.0.

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade liboqs to a version that resolves this vulnerability.

    Fixed in 0.16.0

Event History

Nov 6, 2026
CVE Published
via MITRE·09:23 PM
Data Sourced
via MITRE·09:23 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·10:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which applications are exposed to this issue?

Only applications that instantiate one of the six affected NTRU KEMs and call OQS_KEM_encaps_derand on that object are affected. The listed schemes are NTRU-HPS-2048-509, NTRU-HPS-2048-677, NTRU-HPS-4096-821, NTRU-HPS-4096-1229, NTRU-HRSS-701, and NTRU-HRSS-1373.

2

What must occur for exploitation to cause an impact?

The application must invoke the derandomized encapsulation wrapper for an affected NTRU KEM. Those schemes do not support derandomized encapsulation, so the call can dispatch through a residual, uninitialized heap value.

3

What is the supported impact?

The supported impact is a crash of the calling process, resulting in denial of service.

4

How can I determine whether my application is affected?

Review whether it uses a liboqs version prior to 0.16.0, creates any of the six named NTRU KEM objects, and calls OQS_KEM_encaps_derand for them. All three conditions are required according to the advisory.

5

What should be done if upgrading is not immediately possible?

Do not call OQS_KEM_encaps_derand with any of the affected NTRU KEM objects. These schemes do not support derandomized encapsulation.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203