POJIA破甲
地图 / `indexFile` option passed as an argument to node-server can lead to arbitrary file read

`indexFile` option passed as an argument to node-server can lead to arbitrary file read

路径遍历 / 路径遍历 / #677955

厂商
Node.js third-party modules
严重程度
低危
赏金
—
弱点
路径遍历
研究员
@bl4de
披露日期
2019-12-04
资产
node-static
CVE
—

该报告还没有中文解读。

原文摘录

摘自原文(4888 字符中的一小部分)
I would like to report Path Traversal vulnerability in `indexFile` parameter passed as an option to`node-server`. This vulnerability affects both CLI `--indexFile` and `options.indexFile` passed as an argument to `Server.prototype.serveDir` function in `node-static.js`
原文中的代码
// node-static/lib/node-static.js; lines from 52:

Server.prototype.serveDir = function (pathname, req, res, finish) {
    var htmlIndex = path.join(pathname, this.options.indexFile),   //// <-- this.options.indexFile passed "as is"
        that = this;

    fs.stat(htmlIndex, function (e, stat) { …

默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 Node.js third-party modules 所有。

时间线

  • 报告提交
  • 公开披露
阅读 HackerOne 原文 ↗作者 @bl4de · 版权归作者与 Node.js third-party modules 所有

同类报告

Arbitrary file read via the UploadsRewriter when moving and issueGitLab · 2020-04-27 · $20,000Arbitrary file read via the bulk imports UploadsPipelineGitLab · 2022-03-21 · $29,000Misuse of an authentication cookie combined with a path traversal on app.starbucks.com permitted access to restricted dataStarbucks · 2020-06-16Arbitrary file read during project importGitLab · 2021-05-24 · $16,000Burp Suite Professional: browser-powered crawl can write attacker-controlled files through file input handlingPortSwigger Web Security · 2026-06-14 · $5,000Path traversal in filename in LINE Mac clientLY Corporation · 2020-07-31