POJIA破甲
地图 / mruby-engine: UAF in MRubyEngine#initialize enables local RCE

mruby-engine: UAF in MRubyEngine#initialize enables local RCE

其他弱点 / Unlabeled / #3679660

厂商
Shopify
严重程度
低危
赏金
—
弱点
Unlabeled
研究员
@0xd0ff9
披露日期
2026-04-24
资产
https://github.com/Shopify/*
CVE
—

该报告还没有中文解读。

原文摘录

摘自原文(7163 字符中的一小部分)
Double-init of `MRubyEngine` frees engine + unmaps mspace, but leaves Ruby `DATA_PTR` dangling. Kernel reuses freed VA via `mmap(MAP_FIXED)`. Attacker forges `me_mruby_engine` struct + `mrb_state` in reclaimed region, points `mrb_state->allocf` at `libc.system`, arranges bytes of `mrb_state` to …
原文中的代码
static VALUE ext_mruby_engine_initialize(int argc, VALUE *argv, VALUE rself) {
  ext_mruby_engine_free(DATA_PTR(rself));   // frees engine + munmap mspace

  long capacity = NUM2LONG(rcapacity);
  if (capacity <= 0) {
    rb_raise(rb_eArgError, "memory quota cannot be negative");  // raise AFTER …

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

时间线

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

同类报告

June 2022 Incident ReportHackerOne · 2022-07-01HTML-injection in PDF-export leads to LFIVisma Public · — · $500DOM XSS on duckduckgo.com searchDuckDuckGo · 2020-06-14An attacker can archive and unarchive any structured scope object on HackerOneHackerOne · 2022-04-18Java (Maven): Actually fix the use of insecure protocol to download/upload artifactsGitHub Security Lab · — · $4,000Handling of `tracking` command allows making arbitrary blind requests with user's cookies from Grammarly Extension's originSuperhuman (formerly Grammarly) · 2019-08-01