CVE-2026-118773: 
JavaScript Análisis y mitigación de vulnerabilidades

Vista general

CVE-2026-118773 is an AbortSignal cancellation bypass vulnerability in the node-glob npm package (isaacs/glob) that allows post-timeout filesystem traversal to continue after a walk has been aborted. Affecting versions >= 9.0.0 and < 14.0.2, the flaw causes abort branches in src/walker.ts to invoke callbacks without returning, allowing recursive directory traversal to persist after cancellation. It was disclosed on October 27–29, 2026, with a fix released in v14.0.2. The vulnerability carries a CVSS v4.0 base score of 6.3 (Medium) (GitHub Advisory).

Detalles técnicos

The root cause is classified as CWE-400 (Uncontrolled Resource Consumption). In src/walker.ts, the methods GlobUtil.walkCB(), GlobUtil.walkCB2(), GlobUtil.walkCBSync(), and GlobUtil.walkCB2Sync() check this.signal?.aborted and call cb() to signal cancellation, but fail to include a return statement — allowing execution to fall through into processor.processPatterns(), readdirCB(), and recursive traversal calls. The fix is a one-character change per branch: replacing cb() with return cb(). A proof-of-concept was included in the advisory, demonstrating that on glob v13.0.6, aborting after the first readdir() call still resulted in 1,360 additional readdir calls after rejection (GitHub Advisory, Fix Commit).

Impacto

The vulnerability is limited to availability impact — no confidentiality or integrity compromise was observed. Applications that expose glob() or globStream() over attacker-influenced patterns or directory trees and rely on AbortSignal or AbortSignal.timeout() as a traversal budget are at risk: repeated timed-out requests can stack background filesystem I/O and CPU work, degrading Node.js worker throughput or causing service unavailability. The impact is proportional to the depth and breadth of the directory tree being traversed (GitHub Advisory).

Explotabilidad

No in-the-wild exploitation has been reported, and no weaponized exploit kits are known. A proof-of-concept script was included in the GitHub Security Advisory demonstrating the bypass. The EPSS score is 0.0, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires that the application expose glob traversal over attacker-influenced patterns or directory trees with AbortSignal-based cancellation, which is a specific but realistic deployment pattern (GitHub Advisory).

Pasos de explotación

  1. Identify a vulnerable target: Find a Node.js application using glob npm package versions >= 9.0.0 and <= 14.0.1 that accepts user-supplied glob patterns or operates on attacker-influenced directory trees, and uses AbortSignal or AbortSignal.timeout() to limit traversal time.
  2. Craft a deep/wide glob pattern: Prepare a glob pattern (e.g., **) targeting a large or deeply nested directory tree to maximize the number of readdir calls triggered per request.
  3. Send repeated requests with short timeouts: Submit multiple concurrent or sequential requests using patterns that trigger AbortSignal.timeout() to fire early, causing the application to reject the promise while background traversal continues.
  4. Stack background operations: Each timed-out request leaves orphaned filesystem I/O and CPU work running in the background. Repeating this causes these operations to accumulate, exhausting worker thread capacity and degrading or denying service availability (GitHub Advisory).

Indicadores de compromiso

  • Process: Node.js worker processes showing sustained high CPU usage or elevated filesystem I/O after requests have been rejected or timed out; readdir system calls continuing well after the associated HTTP request has completed.
  • Logs: Application logs showing repeated TimeoutError: The operation was aborted due to timeout or similar AbortSignal rejection errors in rapid succession from the same source IP or endpoint.
  • Network: High volume of repeated requests to endpoints that perform glob-based file searches, particularly with patterns like ** or deeply nested wildcards, especially from a single client.
  • Runtime Metrics: Increasing event loop lag or worker thread saturation in Node.js APM/monitoring tools correlating with glob-related request spikes (GitHub Advisory).

Mitigación y soluciones alternativas

Upgrade the glob npm package to version 14.0.2 or later, which adds return before each cb() call in the four affected abort branches of src/walker.ts (Fix Commit, Release v14.0.2). As a workaround for applications that cannot immediately upgrade, avoid exposing glob traversal over attacker-controlled patterns or directory trees, or implement application-level rate limiting and request queuing to limit concurrent glob operations. There is no configuration-only mitigation that fully addresses the missing return in the abort branches.

Recursos adicionales

Estado de corrección de la distribución Linux

Arreglar la disponibilidad en las principales distribuciones de Linux y sus lanzamientos.

Debian

Afectados

bookworm

node-glob

Afectados

sid

node-glob

Afectados

trixie

node-glob

Afectados

Ubuntu

Desconocido

bionic (esm-apps)

node-glob

Desconocido

devel

node-glob

Desconocido

focal (esm-apps)

node-glob

Desconocido

jammy

node-glob

Desconocido

jammy (esm-apps)

node-glob

Desconocido

noble

node-glob

Desconocido

noble (esm-apps)

node-glob

Desconocido

resolute

node-glob

Desconocido

Fuente: Este informe se generó usando IA

Relacionado JavaScript Vulnerabilidades:

CVE ID

Gravedad

Puntuación

Tecnologías

Nombre del componente

Exploit CISA KEV

Tiene solución

Fecha de publicación

GHSA-rhhp-7488-3qwfMEDIUM6.5
  • JavaScript logoJavaScript
  • nitropack
NoSíNov 02, 2026
GHSA-pqxc-r4h5-jc95MEDIUM6.1
  • JavaScript logoJavaScript
  • nitropack
NoSíNov 02, 2026
GHSA-39r7-wfcx-99xgMEDIUM4.8
  • JavaScript logoJavaScript
  • nitropack
NoSíNov 02, 2026
GHSA-xrjv-fc7j-8f77HIGHN/A
  • JavaScript logoJavaScript
  • @graphql-tools/batch-execute
NoNoNov 02, 2026
GHSA-7p5p-67m9-5c8jHIGHN/A
  • JavaScript logoJavaScript
  • @graphql-tools/executor-http
NoNoNov 02, 2026

Evaluación gratuita de vulnerabilidades

Haz un benchmark de tu postura de seguridad en la nube

Evalúa tus prácticas de seguridad en la nube en 9 dominios de seguridad para evaluar tu nivel de riesgo e identificar brechas en tus defensas.

Evaluación de solicitudes

Recursos adicionales de Wiz

Obtén una demostración personalizada

¿Listo para ver a Wiz en acción?

"La mejor experiencia de usuario que he visto en mi vida, proporciona una visibilidad completa de las cargas de trabajo en la nube."
David EstlickCISO
"Wiz proporciona un panel único para ver lo que ocurre en nuestros entornos en la nube."
Adam FletcherJefe de Seguridad
"Sabemos que si Wiz identifica algo como crítico, en realidad lo es."
Greg PoniatowskiJefe de Gestión de Amenazas y Vulnerabilidades