POJIA破甲
地图 / RCE by parsing `.rdoc_options` in RDoc

RCE by parsing `.rdoc_options` in RDoc

代码执行 / 代码注入 / #1187477

厂商
Ruby
严重程度
未评级
赏金
—
弱点
代码注入
研究员
@ooooooo_q
披露日期
2024-07-03
资产
https://github.com/ruby/ruby
CVE
CVE-2024-27281

该报告还没有中文解读。

原文摘录

摘自原文(1960 字符中的一小部分)
When parsing `.rdoc_options` used for configuration in RDoc as a YAML file, RCE is possible from Object injection because there are no restrictions on the classes that can be restored.
原文中的代码
  def load_options
    options_file = File.expand_path '.rdoc_options'
    return RDoc::Options.new unless File.exist? options_file

    RDoc.load_yaml

    begin
      options = YAML.load_file '.rdoc_options'
    rescue Psych::SyntaxError
    end

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

时间线

  • 报告提交
  • 公开披露
阅读 HackerOne 原文 ↗作者 @ooooooo_q · 版权归作者与 Ruby 所有

同类报告

RCE via npm misconfig -- installing internal libraries from the public registryPayPal · 2021-02-09 · $30,000Websites Can Run Arbitrary Code on Machines Running the 'PlayStation Now' ApplicationPlayStation · 2020-12-04 · $15,000[phpobject in cookie] Remote shell/command executionPornhub · — · $20,000RCE and Complete Server Takeover of http://www.█████.starbucks.com.sg/Starbucks · 2019-04-10Remote Code Execution in Slack desktop apps + bonusSlack · 2020-08-28RCE when removing metadata with ExifToolGitLab · 2021-05-14 · $20,000
RCE by parsing `.rdoc_options` in RDoc · 破甲 POJIA