Description
In versions of mruby up to and including 1.4.0, an integer overflow exists in src/vm.c::mrb_vm_exec() when handling OP_GETUPVAR in the presence of deep scope nesting, resulting in a use-after-free. An attacker that can cause Ruby code to be run can use this to possibly execute arbitrary code.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | mruby | 1.4.0+20180418+git54905e98-1 | — |
| Debian 13 | mruby | 1.4.0+20180418+git54905e98-1 | — |
| Debian 12 | mruby | 1.4.0+20180418+git54905e98-1 | — |
| Debian 9 | mruby | 1.2.0+20161228+git30d5424a-1+deb9u1 | DLA-2996-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | mruby | No fix yet | — |
| Ubuntu 16.04 LTS | mruby | No fix yet | — |
Advisories 1
- DLA-2996-1 mruby - security update Debian Security (DSA / DLA) · Mar 9, 2026