Integer overflow in Mruby

CVE-2018-10191

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.

Vulnerability class: Integer Overflow

EPSS: 0.026 (83.6th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 9.8 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.

Affected products

Weakness classification (CWE)

Public proof-of-concept exploits

References

  • cve@mitre.org (Exploit, Third Party Advisory, x_refsource_MISC, Issue Tracking)
  • cve@mitre.org (Patch, Third Party Advisory, x_refsource_MISC)
  • cve@mitre.org (mailing-list, x_refsource_MLIST, Mailing List, Third Party Advisory)

Frequently asked questions

What is CVE-2018-10191?
CVE-2018-10191 is a critical-severity vulnerability in Mruby, classified under Integer Overflow or Wraparound. CVSS score: 9.8/10. Published 2018-04-17.
How severe is CVE-2018-10191?
Critical severity. CVSS v3 base score is 9.8 out of 10.
Is CVE-2018-10191 known to be exploited?
3 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.