Skip to main content

Nuclei CVE-2026-41282

| EUVDEUVD-2026-23795 HIGH
Code Injection (CWE-94)
2026-04-20 mitre
7.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Configure Nuclei with -env-vars flag for multi-step template
  2. Delivery
    Operator scans attacker-controlled target
  3. Exploit
    Attacker crafts malicious response containing DSL injection payload
  4. Execution
    Nuclei parses and interpolates environment variables from response
  5. Persist
    DSL expression evaluator executes injected code
  6. Impact
    Arbitrary command execution on scanner host

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires three specific, non-default conditions to be simultaneously true: (1) The Nuclei operator must explicitly enable the -env-vars flag (not the default configuration), (2) the target being scanned must be untrusted or attacker-controlled such that the attacker can inject malicious response data, and (3) multi-step templates must be used (single-step templates are not affected). Additionally, the attacker must craft injection payloads matching Nuclei's specific DSL expression syntax to break out of the variable context. The CVSS vector AV:N/AC:H reflects that while network access is possible, the attack complexity is high due to these prerequisites. Environments running Nuclei with default settings (without -env-vars), scanning only trusted infrastructure, or using only single-step templates are NOT vulnerable regardless of version.

Impact

CVSS 4.0 with AV:N/AC:H indicates network-accessible but high attack complexity, providing initial risk guidance. However, CVSS alone significantly overstates real-world risk due to multiple limiting factors explicitly confirmed in the description: (1) The -env-vars flag must be explicitly enabled (non-default configuration), (2) multi-step templates must be used, (3) the attacker must control untrusted target responses, and (4) AC:H suggests the injection requires precise conditions or multiple attempts. The KEV and EPSS data are not provided, but the GitHub advisory and patch availability indicate vendor awareness and remediation. The actual attack surface is substantially narrower than a CVSS 4.0 score suggests - this affects security teams running Nuclei in automated scanning pipelines against untrusted or compromised targets with -env-vars enabled, not all Nuclei installations. Organizations using Nuclei without -env-vars or only against trusted infrastructure face minimal risk. No active exploitation is confirmed at time of analysis.

Exploit ScenarioDerived

An attacker operates a web server hosting a malicious application that Nuclei is configured to scan as an untrusted target using multi-step templates with -env-vars enabled. When Nuclei executes the template, the attacker crafts HTTP responses containing DSL payload injection sequences (e.g., ${system('id')} or similar expression syntax) that are stored in environment variables during template execution. The DSL parser evaluates these injected expressions as code, executing arbitrary commands on the scanner's system. The attack complexity is high because the attacker must precisely match the template's variable interpolation syntax and timing, and the Nuclei operator must be actively scanning with non-default configuration.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 20, 2026

DSL expression injection in ProjectDiscovery Nuclei before 3.8.0 allows remote code execution when using the -env-vars flag with multi-step templates against untrusted targets. An attacker can inject malicious expressions into environment variables that are evaluated as Nuclei DSL code, achieving arbitrary code execution with the privileges of the Nuclei process. This vulnerability requires non-default configuration (explicit -env-vars usage) and high attack complexity, limiting real-world impact despite the RCE tag.

RemediationAI

Upgrade ProjectDiscovery Nuclei to version 3.8.0 or later, which includes fixes for DSL expression injection applied via commits d2217320162d5782ca7cb95bef9dda17063818f3 and 6c803c74d193f85f8a6d9803ce493fd302cad0eb referenced in GitHub pull requests #7221 and #7321. The vendor-released patch address the root cause by implementing proper input validation and expression sanitization. As an interim mitigation for organizations unable to immediately upgrade, restrict use of the -env-vars flag to trusted scanning contexts and avoid running multi-step templates against untrusted or potentially compromised targets. If -env-vars must be used, implement input validation at the template level to reject or sanitize suspicious variable values. Additionally, run Nuclei with minimal required privileges and isolate the scanning process in a restricted environment (container, VM, or dedicated low-privilege account) to limit impact of code execution. Monitor Nuclei process execution for unexpected system calls or network activity. These mitigations reduce blast radius but do not eliminate risk - upgrading to 3.8.0+ is the primary fix.

Affected VersionsENISA

nuclei 3.0.0 <3.8.0

Affected Packages

go github.com/projectdiscovery/nuclei no fix
go github.com/projectdiscovery/nuclei/v2 no fix
go github.com/projectdiscovery/nuclei/v3 fix: 3.8.0
euvd nuclei fix: 3.8.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 4 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Nuclei is a template-based vulnerability scanning framework written in Go that uses a custom domain-specific language (DSL) for expressing multi-step exploitation logic. The vulnerability resides in the DSL expression parser (CWE-94: Improper Control of Generation of Code), which evaluates environment variables passed via the -env-vars flag without sufficient sanitization. When these variables are interpolated into multi-step template expressions, an attacker controlling the target's responses can craft payloads that break out of the intended variable context and inject arbitrary DSL expressions. The affected CPE range is cpe:2.3:a:projectdiscovery:nuclei:*:*:*:*:*:*:*:* (all versions before 3.8.0). The root cause is unsafe string interpolation of untrusted data (target responses) combined with dynamic code evaluation, a classic code injection pattern.

Know when Nuclei gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

5
Severity Changed
Oct 26, 2026 - 21:23 NVD
MEDIUM HIGH
CVSS changed
Oct 26, 2026 - 21:23 NVD
4.0 (MEDIUM) 7.5 (HIGH)
Patch released
Apr 23, 2026 - 15:25 nvd
Patch available
Patch available
Apr 20, 2026 - 09:01 EUVD
CVE Published
Apr 20, 2026 - 07:10 nvd
MEDIUM 4.0

DescriptionNVD

ProjectDiscovery Nuclei 3 before 3.8.0 allows DSL expression injection. This affects use of -env-vars for multi-step templates against untrusted targets (not the default configuration).

Threat Intelligence Overview

EPSS Score
0.0%
Top 87% exploitable
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy