CVE-2026-118775: Forge: ASN.1 OID first arc truncation in asn1.oidToDer

Published Oct 29, 2026
·
Updated

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, asn1.oidToDer() in lib/asn1.js did not range-check the first two arcs of an OID. An application that accepted an untrusted OID string, checked or authorized that string, and then encoded it with asn1.oidToDer() could emit DER representing a different, trusted OID from the one that was checked. DER parsing is not affected. This issue is fixed in version 1.4.1.

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade node-forge to a version that resolves this vulnerability.

    Fixed in 1.4.1

Event History

Oct 29, 2026
CVE Published
via MITRE·06:35 PM
Data Sourced
via MITRE·06:35 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·07:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which applications are realistically exposed to this issue?

Applications using Forge before 1.4.1 are exposed only if they accept an untrusted OID string, make a security-relevant check or authorization decision on that string, and then pass it to asn1.oidToDer() for DER encoding.

2

Can this be exploited by parsing attacker-controlled DER or OID data?

No. The issue affects OID encoding in asn1.oidToDer(), not DER parsing.

3

What is the security impact of successful exploitation?

An attacker may cause the application to emit DER for a different OID than the OID string that the application checked. This can bypass logic that treats the originally supplied OID as authorized while relying on the encoded DER value afterward.

4

What should be done if an application uses asn1.oidToDer() on untrusted input?

Upgrade Forge to version 1.4.1. Until upgrading, do not rely on authorization or validation of an untrusted OID string alone before encoding it; ensure the value ultimately represented in DER is the one being authorized.

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