
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-18329 is an authentication/authorization bypass vulnerability in the NGINX JavaScript (njs) and QuickJS (qjs) engines, classified as a "fail open" flaw (CWE-636). When a js_access handler performs asynchronous request body processing and an exception is thrown during access-control evaluation before an explicit denial is returned, the access phase fails open — allowing the request to proceed rather than being blocked. Affected versions include NGINX JavaScript 0.9.9 and all versions from 1.0.0 up to (but not including) 1.0.1. The vulnerability was published on September 2, 2026, with a CVSS v3.1 base score of 8.2 (High) and a CVSS v4.0 base score of 8.8 (High) (GitHub Advisory, F5 Advisory).
The root cause is a "Not Failing Securely" (CWE-636) design flaw in the njs and qjs JavaScript engine integration with NGINX's js_access phase. When a js_access handler uses asynchronous request body processing, an unhandled exception thrown during the asynchronous access-control evaluation can cause the access phase to complete without an explicit deny decision, effectively failing open and granting the request access to protected resources. Exploitation requires no authentication, no special privileges, and no user interaction — an attacker simply sends a crafted HTTP request designed to trigger the error condition in the access validation logic. This is a data plane issue only; the control plane is not exposed (GitHub Advisory, F5 Advisory).
Successful exploitation allows an unauthenticated remote attacker to bypass js_access controls and gain unauthorized access to resources that should have been denied, resulting in high confidentiality impact and low integrity impact with no availability impact. The vulnerability is limited to the data plane, meaning backend application data and protected endpoints are at risk, but NGINX management interfaces are not directly exposed. Depending on what resources are protected by the affected js_access handler, exploitation could expose sensitive data, allow unauthorized API access, or enable further lateral movement into backend systems (GitHub Advisory, F5 Advisory).
As of the time of publication, there is no public proof-of-concept exploit and no evidence of in-the-wild exploitation (GitHub Advisory). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.376%, placing it in the 31st percentile for exploitation probability within 30 days. The attack is network-accessible, requires no privileges or user interaction, and is rated as automatable by NVD SSVC analysis, which increases the risk of future mass exploitation if a PoC becomes public (GitHub Advisory).
js_access handlers configured for access control, particularly those performing asynchronous request body processing. Tools like Shodan or Censys can identify exposed NGINX servers; version fingerprinting can help narrow targets to affected njs versions (0.9.9 or 1.0.0).js_access handler that uses asynchronous body processing. The request should be designed to trigger an error or exception condition during the asynchronous access-control evaluation (e.g., malformed body content, unexpected content types, or oversized payloads that cause processing errors).js_access phase fails open and the request is forwarded to the protected backend resource.js_access handlers; unusual traffic patterns to protected endpoints from unauthenticated or anonymous sources.js_access phase (e.g., njs runtime errors) coinciding with requests that were ultimately forwarded rather than denied; access logs showing requests to protected paths from IPs with no prior authentication activity.js_access handlers.F5 has released a patch in NGINX JavaScript version 1.0.1, which addresses the fail-open behavior in the js_access asynchronous exception handling path. Users running njs 0.9.9 or 1.0.0 should upgrade to njs 1.0.1 or later immediately (F5 Advisory). As a workaround, administrators should review all js_access handlers that perform asynchronous request body processing and add explicit exception handling (try/catch blocks) to ensure that any unhandled error results in an explicit access denial rather than a pass-through. Additionally, monitoring NGINX error logs for njs runtime exceptions can help detect exploitation attempts while patching is in progress.
The vulnerability was included in Microsoft's September 2026 Patch Tuesday coverage, which highlighted 96+ flaws, indicating broad industry awareness (BleepingComputer). Security monitoring platforms including Tenable (Nessus plugin 342800) and threat intelligence aggregators have added detection coverage shortly after disclosure. No notable individual researcher commentary or significant social media debate has been identified beyond standard vulnerability tracking and aggregation activity.
Fix availability across major Linux distributions and their releases.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."