Vulnerability · Published Sep 4, 2024 · Assigned by GitHub_M
CVE-2024-43405Nuclei Template Signature Verification Bypass
High 7.4
In plain English
A high-severity OS command injection in nuclei from projectdiscovery. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 1.1% (higher than 66% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Nuclei is a vulnerability scanner powered by YAML based templates. Starting in version 3.0.0 and prior to version 3.3.2, a vulnerability in Nuclei's template signature verification system could allow an attacker to bypass the signature check and possibly execute malicious code via custom code template. The vulnerability is present in the template signature verification process, specifically in the `signer` package. The vulnerability stems from a discrepancy between how the signature verification process and the YAML parser handle newline characters, combined with the way multiple signatures are processed. This allows an attacker to inject malicious content into a template while maintaining a valid signature for the benign part of the template. CLI users are affected if they execute custom code templates from unverified sources. This includes templates authored by third parties or obtained from unverified repositories. SDK Users are affected if they are developers integrating Nuclei into their platforms, particularly if they permit the execution of custom code templates by end-users. The vulnerability is addressed in Nuclei v3.3.2. Users are strongly recommended to update to this version to mitigate the security risk. As an interim measure, users should refrain from using custom templates if unable to upgrade immediately. Only trusted, verified templates should be executed. Those who are unable to upgrade Nuclei should disable running custom code templates as a workaround.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Go | github.com/projectdiscovery/nuclei | no fix listed | GO-2024-3114 |
| Go | github.com/projectdiscovery/nuclei/v2 | no fix listed | GO-2024-3114 |
| Go | github.com/projectdiscovery/nuclei/v3 | 3.3.2 | GO-2024-3114 |
| Go | github.com/projectdiscovery/nuclei/v3 | 3.3.2 | GHSA-7h5p-mmpp-hgmm |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| projectdiscovery | nuclei | >= 3.0.0, < 3.3.2 |
Weakness: CWE-78 · Vector: CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N