Description
Nuclei is a vulnerability scanner built on a simple YAML-based DSL. From 3.0.0 until 3.10.0, the nuclei/mysql JavaScript library does not enforce the local-file sandbox when a JavaScript template supplies the allowAllFiles MySQL DSN option. An untrusted javascript: template scanning an attacker-controlled MySQL-compatible endpoint can cause the server to issue LOAD DATA LOCAL INFILE requests for arbitrary paths, after which the scanner's MySQL client reads the files and returns their contents to the server even though -allow-local-file-access is disabled. JavaScript templates can run unsigned and without the -code flag on affected versions, and the bypass affects CLI and SDK deployments that accept untrusted templates. This issue is fixed in version 3.10.0.
Published: 2026-09-22
Score: 5.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Local File Read (confidentiality compromise)
Action: Patch now
AI Analysis

Impact

The vulnerability in the nuclei/projectdiscovery:nuclei software allows an attacker to read arbitrary local files on the scanner host. By providing an untrusted JavaScript template that connects to a malicious MySQL-compatible endpoint and includes the allowAllFiles option, the server can issue LOAD DATA LOCAL INFILE requests for any path. The JavaScript library does not enforce the local-file sandbox on affected versions, so the scanner’s MySQL client reads those files and returns their contents to the caller even though the –allow-local-file-access flag is disabled. This flaw can expose sensitive configuration, credentials, or other system files, potentially enabling further exploitation. The weakness is a CWE‑284 improper authorization issue.

Affected Systems

Product: Nuclei (repository projectdiscovery:nuclei). Affected releases include versions 3.0.0 through 3.10.0, inclusive. All deployments that consume untrusted JavaScript templates via the CLI or SDK are vulnerable, regardless of whether the –code flag is used.

Risk and Exploitability

The CVSS score of 5.3 reflects a medium severity local file read that could lead to confidentiality disclosure. EPSS information is not available, and the vulnerability is not listed in the CISA KEV catalog, suggesting limited publicly known exploitation. The attack vector is inferred to be remote: an adversary supplies a malicious template to a scanner that connects to an attacker‑controlled MySQL endpoint. Conditions for exploitation include running an affected version of Nuclei, accepting an untrusted template, and allowing the allowAllFiles MySQL DSN option. Once satisfied, the scanner will fetch and return arbitrary file contents to the attacker.

Generated by OpenCVE AI on September 22, 2026 at 17:35 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Nuclei to version 3.10.0 or later.
  • Disallow the allowAllFiles option in all JavaScript templates or enforce strict template validation to accept only trusted sources.
  • Require the –code flag for JavaScript execution or disable untrusted template processing in both CLI and SDK deployments.

Generated by OpenCVE AI on September 22, 2026 at 17:35 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-xhmx-w2j4-rw3q Nuclei: Local File Read via MySQL Client Sandbox Bypass
History

Sat, 26 Sep 2026 00:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 22 Sep 2026 18:30:00 +0000

Type Values Removed Values Added
First Time appeared Projectdiscovery
Projectdiscovery nuclei
Vendors & Products Projectdiscovery
Projectdiscovery nuclei

Tue, 22 Sep 2026 16:45:00 +0000

Type Values Removed Values Added
Description Nuclei is a vulnerability scanner built on a simple YAML-based DSL. From 3.0.0 until 3.10.0, the nuclei/mysql JavaScript library does not enforce the local-file sandbox when a JavaScript template supplies the allowAllFiles MySQL DSN option. An untrusted javascript: template scanning an attacker-controlled MySQL-compatible endpoint can cause the server to issue LOAD DATA LOCAL INFILE requests for arbitrary paths, after which the scanner's MySQL client reads the files and returns their contents to the server even though -allow-local-file-access is disabled. JavaScript templates can run unsigned and without the -code flag on affected versions, and the bypass affects CLI and SDK deployments that accept untrusted templates. This issue is fixed in version 3.10.0.
Title Nuclei: Local File Read via MySQL Client Sandbox Bypass
Weaknesses CWE-284
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N'}


Subscriptions

Projectdiscovery Nuclei
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-25T23:44:38.902Z

Reserved: 2026-08-19T19:52:28.212Z

Link: CVE-2026-76803

cve-icon Vulnrichment

Updated: 2026-09-25T23:44:34.235Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-09-22T17:17:24.797

Modified: 2026-09-26T00:16:35.217

Link: CVE-2026-76803

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-22T18:15:15Z

Weaknesses