CVE-2018-10191
In versions of mruby up to and including 1.4.0, an integer overflow exists in src/vm.c:...
CVE-2018-10191 is a critical vulnerability (CVSS 9.8) in Mruby, published April 17, 2018. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.59%, the 85th percentile. Fixed in mruby 1.4.0+20180418+git54905e98-1.
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
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.
- Record
CVE-2018-10191- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV:N/AC:L/Au:N/C:P/I:P/A:P - Weakness
- CWE-190
- Updated
- 2026-11-02
CVE List No score
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.
- Record
CVE-2018-10191- Updated
- 2026-11-02
EUVDEUVD-2018-2267 No score
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.
- Record
EUVD-2018-2267- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-444w-xm89-r2p5
9.8
In versions of mruby up to and including 1.4.0, an integer overflow exists in src/vm.c:...
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.
- Record
GHSA-444w-xm89-r2p5- CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
OSV
9.8
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.
- Record
CVE-2018-10191- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2018-10191
9.8
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.
- Record
DEBIAN-CVE-2018-10191- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2018-10191
9.8
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.
- Record
UBUNTU-CVE-2018-10191- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
mrubyDebian:12 |
before 1.4.0+20180418+git54905e98-1 | 1.4.0+20180418+git54905e98-1 |
mrubyDebian:13 |
before 1.4.0+20180418+git54905e98-1 | 1.4.0+20180418+git54905e98-1 |
mrubyDebian:14 |
before 1.4.0+20180418+git54905e98-1 | 1.4.0+20180418+git54905e98-1 |
mrubyDebian:9 |
before 1.2.0+20161228+git30d5424a-1+deb9u1, plus listed versions 1.2.0+20161228+git30d5424a-1 |
1.2.0+20161228+git30d5424a-1+deb9u1 |
mrubyUbuntu:16.04:LTS |
All versions, plus listed versions 1.1.0+20150817+gita1731254-11.1.0+20150906+git1cbbb7e1-11.2.0+20160315+git4f20d58a-1 |
None known |
mrubyUbuntu:18.04:LTS |
All versions, plus listed versions 1.3.0-11.3.0+20170925+git38185028-11.3.0+20171029+git77edafb0-11.4.0-1 |
None known |
History
| When | Changed | Sources |
|---|---|---|
| 2026-11-03 | aliases | EUVD |
| 2026-11-02 | created | CVE List, GitHub Advisories, NVD, OSV |
References
github.com/mruby/mruby/issues/3995
github.com/mruby/mruby/commit/1905091634a6a2925c911484434448e568330626
lists.debian.org/debian-lts-announce/2022/05/msg00006.html
nvd.nist.gov/vuln/detail/CVE-2018-10191
github.com/advisories/GHSA-444w-xm89-r2p5
security-tracker.debian.org/tracker/CVE-2018-10191
ubuntu.com/security/CVE-2018-10191
cve.org/CVERecord?id=CVE-2018-10191