ejs 3.1.6 - Server-Side Template Injection via outputFunctionName Option
Title source: llmExploitation Summary
CVE-2022-29078 has been observed exploited in the wild (reported by VulnCheck KEV). EIP tracks 10 public exploits from researchers including miko550, l0n3m4n, seal-sec-demo-2. A Nuclei detection template is also available.
AI-analyzed exploit summary This repository demonstrates a Server-Side Template Injection (SSTI) vulnerability in EJS 3.1.6, leading to Remote Code Execution (RCE). The exploit leverages malicious input in the 'settings' query parameter to execute arbitrary commands via Node.js's child_process module.
Description
The ejs (aka Embedded JavaScript templates) package 3.1.6 for Node.js allows server-side template injection in settings[view options][outputFunctionName]. This is parsed as an internal option, and overwrites the outputFunctionName option with an arbitrary OS command (which is executed upon template compilation).
Exploits (10)
This repository demonstrates a Server-Side Template Injection (SSTI) vulnerability in EJS 3.1.6, leading to Remote Code Execution (RCE). The exploit leverages malicious input in the 'settings' query parameter to execute arbitrary commands via Node.js's child_process module.
This is a functional exploit for CVE-2022-29078, targeting a Server-Side Template Injection (SSTI) vulnerability in the EJS package for Node.js. It delivers a reverse shell payload via a crafted POST request to execute arbitrary commands on the target system.
This repository demonstrates CVE-2022-29078, an RCE vulnerability in EJS (Embedded JavaScript templates) versions <3.1.7 via the `outputFunctionName` parameter. The PoC includes a vulnerable Express.js server that executes attacker-supplied JavaScript when the malicious query parameter is passed, triggering `process.exit(1)` as a demonstration.
This repository provides a functional proof-of-concept for CVE-2022-29078, an EJS Server-Side Template Injection (SSTI) vulnerability leading to Remote Code Execution (RCE). The exploit leverages the `outputFunctionName` option in EJS 3.1.6 to inject arbitrary JavaScript code, demonstrated via a Dockerized vulnerable environment and a bash script for command execution.
The repository contains only configuration files (GitHub workflows, dependabot, and npm package files) with no actual exploit code or technical details related to CVE-2022-29078.
The repository contains only configuration files (GitHub workflows, package.json, pom.xml) and no actual exploit code or technical details about CVE-2022-29078. It appears to be a placeholder or test setup.
This repository contains a functional proof-of-concept for CVE-2022-29078, demonstrating a server-side template injection vulnerability in an Express.js application using EJS. The exploit showcases multi-hop taint propagation from user-controlled input to EJS template rendering, bypassing ineffective sanitization.
This repository demonstrates CVE-2022-29078, a server-side template injection vulnerability in EJS 2.7.4, allowing arbitrary JavaScript execution via the `outputFunctionName` parameter. The PoC includes a functional exploit URL that triggers a server crash and explains how Seal Security's patch mitigates the issue.
This PoC exploits CVE-2022-29078, a remote code execution vulnerability in EJS (Embedded JavaScript templates) version 3.1.6. It leverages a prototype pollution attack to inject malicious code into the 'outputFunctionName' setting, allowing arbitrary command execution via Node.js's 'child_process' module.
This repository contains a basic Express.js application with EJS templating but lacks any exploit code or demonstration of CVE-2022-29078. It appears to be a placeholder or incomplete PoC.
Nuclei Templates (1)
References (3)
Scores
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H