Cloudanix VulnDB

CVE-2025-66030

Medium · 5.3

node-forge is vulnerable to ASN.1 OID Integer Truncation

CVSS

5.3

EPSS

0.3%

Published

Nov 26, 2025

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

Some software may misread specially crafted digital certificate data and mistakenly trust something it should reject.

Chainable
Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Moderate
Impact
Privilege Gain
Component
Library
Class
Improper Input Validation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw is an integer overflow in node-forge ASN.1 OID decoding in versions 1.3.1 and below. A remote unauthenticated attacker can submit a crafted ASN.1 object containing an object identifier with oversized arcs; during decoding, 32-bit bitwise truncation can cause that oversized OID to be interpreted as a smaller, trusted OID. The direct impact is not code execution, but incorrect OID interpretation, which can undermine security checks that depend on OID equality, such as certificate policy validation, signature algorithm handling, extension allowlists, identity document validation, or cryptographic object classification.

Why it matters to the business

Applications and products that rely on vulnerable node-forge parsing may make incorrect trust decisions when processing attacker-supplied certificates, CSRs, signed objects, or other ASN.1 data. In business terms, this can allow unauthorized users or untrusted data to be treated as valid in workflows such as authentication, certificate enrollment, document signing, API trust validation, or CI/CD integrations. The current public exploitation signal is low: EPSS is 0.00311, it is not listed in CISA KEV, it is not associated with ransomware, and no mature public exploit is indicated. However, because node-forge is commonly embedded as a transitive JavaScript dependency, exposure may be broader than direct package inventory suggests and should be handled through dependency and container image updates.

How an attack unfolds

An attacker first identifies an application path that accepts ASN.1-encoded input and processes it with node-forge 1.3.1 or earlier. Common examples include upload or verification of X.509 certificates, certificate signing requests, PKCS structures, signed messages, identity assertions, or other cryptographic containers. The attacker crafts an ASN.1 object containing an OID with an oversized arc that should not be trusted. When vulnerable node-forge decoding logic processes that OID, integer truncation can cause the decoded value to collide with or appear equivalent to a smaller OID that downstream application logic treats as trusted. If the application makes authorization, validation, or policy decisions based on the decoded OID, the attacker may bypass those checks without authentication. The exploitability and impact depend heavily on the consuming application: systems that merely parse and display ASN.1 data have limited impact, while systems that grant trust based on OID allowlists or algorithm identifiers are more exposed.

How to fix it

Upgrade node-forge to a fixed version that includes the upstream fix commit 235ad3e70e4fdfdca4fdeb662dfba6588e2c38bd, or to a later vendor-published release that contains that fix. For Chainguard and Wolfi packages, upgrade Jenkins, jenkins-compat, and jenkins-remoting packages to 2.472-r0 or later. Because node-forge is often pulled in transitively, update lockfiles and rebuild applications and container images rather than only changing top-level package manifests. If immediate upgrade is not possible, reduce exposure by rejecting untrusted ASN.1 uploads where not required, enforcing strict schema validation before node-forge processing, avoiding security decisions based solely on decoded OID strings from vulnerable parsers, and adding compensating validation using a patched parser or independent cryptographic validation library.

How to confirm the fix worked

Confirm remediation by verifying that no deployed artifact contains node-forge 1.3.1 or earlier. For JavaScript projects, inspect package-lock.json, yarn.lock, pnpm-lock.yaml, npm ls node-forge, yarn why node-forge, or equivalent software composition analysis output. For containers and appliances, scan final runtime images, not just source repositories, and confirm Chainguard/Wolfi Jenkins-related packages are at 2.472-r0 or later where applicable. Rebuild and redeploy images after dependency updates. As a functional validation, use a non-production test case with malformed ASN.1 OIDs containing oversized arcs and confirm the parser rejects the object or does not normalize it into a trusted OID. Also review application logic to ensure OID-based authorization, algorithm, extension, and policy decisions are covered by tests using patched dependencies.

Typical attack path

  1. Find an internet-facing or otherwise reachable workflow that accepts certificates, CSRs, signed objects, or other ASN.1-encoded data.
  2. Confirm or infer that the service or bundled product uses node-forge version 1.3.1 or earlier, directly or transitively.
  3. Create a malformed ASN.1 structure containing an OID with oversized arcs designed to truncate into a trusted OID value during decoding.
  4. Submit the crafted object to the vulnerable workflow, such as a certificate upload, enrollment, signature validation, or identity verification endpoint.
  5. Rely on vulnerable OID decoding to cause the application to treat an untrusted algorithm, extension, policy, or object type as a trusted one.
  6. Use the resulting validation or policy bypass to gain unauthorized access, register an improper credential, bypass a security control, or introduce trusted-looking cryptographic material.

How to detect it

There are no widely reported threat actors, KEV listing, ransomware association, or mature public exploitation indicators for this issue based on the provided intelligence. Detection should therefore focus on evidence of attempted abuse against workflows that accept ASN.1-encoded cryptographic objects. Review application access logs, API gateway logs, WAF logs, certificate enrollment logs, identity-provider logs, document-signing logs, CI/CD service logs, and application error logs for requests that uploaded or submitted certificates, CSRs, signed blobs, PKCS structures, SAML/XML signatures, or similar cryptographic payloads shortly before successful authentication, enrollment, authorization, or policy changes. Look for abnormal parser exceptions, repeated failed validation attempts followed by success, unusually large or malformed OID encodings, base64/PEM payloads in parameters that do not normally contain them, and unexpected acceptance of certificates or signed objects with unusual policy, extension, or algorithm identifiers. For forensic review, correlate suspicious submissions with newly trusted credentials, newly enrolled certificates, account access changes, build-agent connections, or signature-validation successes. Network detection is difficult because ASN.1 payloads are often base64-wrapped or transported over TLS; endpoint and application-level logs are more reliable. If raw request bodies or uploaded artifacts are retained, inspect DER-encoded OIDs for oversized base-128 arc encodings, particularly arcs requiring more than normal 32-bit-safe representation.

What your security team should do

  • Prioritize inventory: identify applications, services, containers, and CI/CD tooling that include node-forge, especially versions 1.3.1 and below.
  • Patch or rebuild affected applications and images with a node-forge version containing commit 235ad3e70e4fdfdca4fdeb662dfba6588e2c38bd or later vendor fixes; upgrade Chainguard/Wolfi Jenkins packages to 2.472-r0 or later.
  • Give higher priority to services that process attacker-controlled certificates, CSRs, signed messages, SAML/XML signatures, PKCS objects, or other ASN.1 cryptographic data.
  • Review application code for OID allowlists or trust decisions involving certificate policies, extensions, signature algorithms, key usages, or custom ASN.1 object types.
  • Add regression tests for malformed ASN.1 OIDs and oversized OID arcs to prevent future parser downgrades or dependency regressions.
  • Monitor logs for unusual spikes in ASN.1 parsing failures, certificate validation errors, CSR submission failures, or malformed cryptographic object uploads.
  • Because it is not KEV-listed and has low EPSS, treat this as a dependency hygiene and targeted exposure issue rather than an emergency across systems that do not parse untrusted ASN.1 data.

The record

**MITRE-Formatted CVE Description** An Integer Overflow (CWE-190) vulnerability in node-forge versions 1.3.1 and below enables remote, unauthenticated attackers to craft ASN.1 structures containing OIDs with oversized arcs. These arcs may be decoded as smaller, trusted OIDs due to 32-bit bitwise truncation, enabling the bypass of downstream OID-based security decisions.

Affected packages

Ecosystem Package Introduced Fixed
npm node-forge 0 1.3.2
Chainguard argo-workflow-cli-3.6 0 3.6.13-r2
Chainguard argo-workflow-cli-3.7 0 3.7.4-r2
Chainguard argo-workflow-controller-3.6 0 3.6.13-r2
Chainguard argo-workflow-controller-3.6-compat 0 3.6.13-r2
Chainguard argo-workflow-controller-3.7 0 3.7.4-r2
Chainguard argo-workflow-controller-3.7-compat 0 3.7.4-r2
Chainguard argo-workflow-executor-3.6 0 3.6.13-r2
Chainguard argo-workflow-executor-3.6-compat 0 3.6.13-r2
Chainguard argo-workflow-executor-3.7 0 3.7.4-r2
Chainguard argo-workflow-executor-3.7-compat 0 3.7.4-r2
Chainguard argo-workflows-3.6 0 3.6.13-r2
Chainguard argo-workflows-3.7 0 3.7.4-r2
Chainguard argo-workflows-known-hosts-3.6 0 3.6.13-r2
Chainguard argo-workflows-known-hosts-3.7 0 3.7.4-r2
Chainguard argo-workflows-ui-3.6 0 3.6.13-r2
Chainguard argo-workflows-ui-3.7 0 3.7.4-r2
Chainguard jitsucom-jitsu 0 2.11.0-r8
Chainguard jitsucom-jitsu-console 0 2.11.0-r8
Chainguard jitsucom-jitsu-rotor 0 2.11.0-r8
Chainguard kibana-7 0 7.17.29-r7
Chainguard kibana-7-bitnami 0 7.17.29-r7
Chainguard kibana-8.17 0 8.17.10-r4
Chainguard kibana-8.17-bitnami 0 8.17.10-r4
Chainguard kibana-8.17-iamguarded 0 8.17.10-r4
Chainguard kibana-8.18 0 8.18.8-r3
Chainguard kibana-8.18-bitnami 0 8.18.8-r3
Chainguard kibana-8.18-iamguarded 0 8.18.8-r3
Chainguard kibana-8.19 0 8.19.7-r2
Chainguard kibana-8.19-bitnami 0 8.19.7-r2
Chainguard kibana-8.19-iamguarded 0 8.19.7-r2
Chainguard kibana-9.0 0 9.0.8-r3
Chainguard kibana-9.0-bitnami 0 9.0.8-r3
Chainguard kibana-9.0-iamguarded 0 9.0.8-r3
Chainguard kibana-9.1 0 9.1.7-r2
Chainguard kibana-9.1-bitnami 0 9.1.7-r2
Chainguard kibana-9.1-iamguarded 0 9.1.7-r2
Chainguard kibana-9.2 0 9.2.1-r2
Chainguard kibana-9.2-iamguarded 0 9.2.1-r2
Chainguard kubeflow-centraldashboard 0 1.10.0-r6
Chainguard kubeflow-pipelines 0 2.15.0-r0
Chainguard kubeflow-pipelines-apiserver 0 2.15.0-r0
Chainguard kubeflow-pipelines-cache-deployer 0 2.15.0-r0
Chainguard kubeflow-pipelines-cache-deployer-compat 0 2.15.0-r0
Chainguard kubeflow-pipelines-cache_server 0 2.15.0-r0
Chainguard kubeflow-pipelines-frontend 0 2.15.0-r0
Chainguard kubeflow-pipelines-metadata-envoy-config 0 2.15.0-r0
Chainguard kubeflow-pipelines-metadata-writer 0 2.15.0-r0
Chainguard kubeflow-pipelines-metadata-writer-compat 0 2.15.0-r0
Chainguard kubeflow-pipelines-persistence_agent 0 2.15.0-r0
Chainguard kubeflow-pipelines-scheduledworkflow 0 2.15.0-r0
Chainguard kubeflow-pipelines-viewer-crd-controller 0 2.15.0-r0
Chainguard opensearch-dashboards-2 0 2.19.4-r2
Chainguard opensearch-dashboards-2-alerting-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-anomaly-detection-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-compat 0 2.19.4-r2
Chainguard opensearch-dashboards-2-config 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-maps 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-notifications 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-observability 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-query-workbench 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-reporting 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-search-relevance 0 2.19.4-r2
Chainguard opensearch-dashboards-2-dashboards-visualizations 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-alerting-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-anomaly-detection-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-config 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-maps 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-notifications 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-observability 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-query-workbench 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-reporting 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-search-relevance 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-dashboards-visualizations 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-index-management-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-ml-commons-dashboards 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-security-analytics-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-fips-security-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-index-management-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-ml-commons-dashboards 0 2.19.4-r2
Chainguard opensearch-dashboards-2-security-analytics-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-2-security-dashboards-plugin 0 2.19.4-r2
Chainguard opensearch-dashboards-3 0 3.2.0-r2
Chainguard opensearch-dashboards-3-alerting-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-anomaly-detection-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-config 0 3.2.0-r2
Chainguard opensearch-dashboards-3-dashboards-maps 0 3.2.0-r2
Chainguard opensearch-dashboards-3-dashboards-notifications 0 3.2.0-r2
Chainguard opensearch-dashboards-3-dashboards-observability 0 3.2.0-r2
Chainguard opensearch-dashboards-3-dashboards-query-workbench 0 3.2.0-r2
Chainguard opensearch-dashboards-3-dashboards-reporting 0 3.2.0-r2
Chainguard opensearch-dashboards-3-dashboards-search-relevance 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-alerting-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-anomaly-detection-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-config 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-dashboards-maps 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-dashboards-notifications 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-dashboards-observability 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-dashboards-query-workbench 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-dashboards-reporting 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-dashboards-search-relevance 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-index-management-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-ml-commons-dashboards 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-security-analytics-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-fips-security-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-index-management-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-ml-commons-dashboards 0 3.2.0-r2
Chainguard opensearch-dashboards-3-security-analytics-dashboards-plugin 0 3.2.0-r2
Chainguard opensearch-dashboards-3-security-dashboards-plugin 0 3.2.0-r2
Wolfi argo-workflow-cli-3.7 0 3.7.4-r2
Wolfi argo-workflow-controller-3.7 0 3.7.4-r2
Wolfi argo-workflow-controller-3.7-compat 0 3.7.4-r2
Wolfi argo-workflow-executor-3.7 0 3.7.4-r2
Wolfi argo-workflow-executor-3.7-compat 0 3.7.4-r2
Wolfi argo-workflows-3.7 0 3.7.4-r2
Wolfi argo-workflows-known-hosts-3.7 0 3.7.4-r2
Wolfi argo-workflows-ui-3.7 0 3.7.4-r2
Wolfi jitsucom-jitsu 0 2.11.0-r8
Wolfi jitsucom-jitsu-console 0 2.11.0-r8
Wolfi jitsucom-jitsu-rotor 0 2.11.0-r8
Wolfi kubeflow-centraldashboard 0 1.10.0-r6
Wolfi kubeflow-pipelines 0 2.15.0-r0
Wolfi kubeflow-pipelines-apiserver 0 2.15.0-r0
Wolfi kubeflow-pipelines-cache-deployer 0 2.15.0-r0
Wolfi kubeflow-pipelines-cache-deployer-compat 0 2.15.0-r0
Wolfi kubeflow-pipelines-cache_server 0 2.15.0-r0
Wolfi kubeflow-pipelines-frontend 0 2.15.0-r0
Wolfi kubeflow-pipelines-metadata-envoy-config 0 2.15.0-r0
Wolfi kubeflow-pipelines-metadata-writer 0 2.15.0-r0
Wolfi kubeflow-pipelines-metadata-writer-compat 0 2.15.0-r0
Wolfi kubeflow-pipelines-persistence_agent 0 2.15.0-r0
Wolfi kubeflow-pipelines-scheduledworkflow 0 2.15.0-r0
Wolfi kubeflow-pipelines-viewer-crd-controller 0 2.15.0-r0
Wolfi opensearch-dashboards-2 0 2.19.4-r2
Wolfi opensearch-dashboards-2-alerting-dashboards-plugin 0 2.19.4-r2
Wolfi opensearch-dashboards-2-anomaly-detection-dashboards-plugin 0 2.19.4-r2
Wolfi opensearch-dashboards-2-compat 0 2.19.4-r2
Wolfi opensearch-dashboards-2-config 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-maps 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-notifications 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-observability 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-query-workbench 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-reporting 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-search-relevance 0 2.19.4-r2
Wolfi opensearch-dashboards-2-dashboards-visualizations 0 2.19.4-r2
Wolfi opensearch-dashboards-2-index-management-dashboards-plugin 0 2.19.4-r2
Wolfi opensearch-dashboards-2-ml-commons-dashboards 0 2.19.4-r2
Wolfi opensearch-dashboards-2-security-analytics-dashboards-plugin 0 2.19.4-r2
Wolfi opensearch-dashboards-2-security-dashboards-plugin 0 2.19.4-r2
Wolfi opensearch-dashboards-3 0 3.2.0-r2
Wolfi opensearch-dashboards-3-alerting-dashboards-plugin 0 3.2.0-r2
Wolfi opensearch-dashboards-3-anomaly-detection-dashboards-plugin 0 3.2.0-r2
Wolfi opensearch-dashboards-3-config 0 3.2.0-r2
Wolfi opensearch-dashboards-3-dashboards-maps 0 3.2.0-r2
Wolfi opensearch-dashboards-3-dashboards-notifications 0 3.2.0-r2
Wolfi opensearch-dashboards-3-dashboards-observability 0 3.2.0-r2
Wolfi opensearch-dashboards-3-dashboards-query-workbench 0 3.2.0-r2
Wolfi opensearch-dashboards-3-dashboards-reporting 0 3.2.0-r2
Wolfi opensearch-dashboards-3-dashboards-search-relevance 0 3.2.0-r2
Wolfi opensearch-dashboards-3-index-management-dashboards-plugin 0 3.2.0-r2
Wolfi opensearch-dashboards-3-ml-commons-dashboards 0 3.2.0-r2
Wolfi opensearch-dashboards-3-security-analytics-dashboards-plugin 0 3.2.0-r2
Wolfi opensearch-dashboards-3-security-dashboards-plugin 0 3.2.0-r2

Related vulnerabilities