9.8crit

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 pres…

Published 8 y ago · modified 4 mo ago · JSON

CVSS
9.8
v3.1 · NVD
CISA KEV
No
not known exploited
EPSS
2.6%
percentile 85%
Public exploits
0
none known

Summary

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.

Exploit prediction (EPSS)

2.59% probability of exploitation in the next 30 days, higher than 85% of all scored CVEs.

CVSS scores

Assigned byVersionScoreVector
NVD3.19.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD2.07.5AV:N/AC:L/Au:N/C:P/I:P/A:P

Classification

Weakness
  • CWE-190 Integer Overflow or Wraparound

References

  • github.com /mruby/mruby/issues/3995 · x_refsource_MISC, x_transferred
  • github.com /mruby/mruby/commit/1905091634a6a2925c911484434448e568330626 · x_refsource_MISC, x_transferred
  • lists.debian.org /debian-lts-announce/2022/05/msg00006.html · mailing-list, x_refsource_MLIST, x_transferred

Sources

vulnwire keeps one entry per vulnerability: the CVE id wins, then GHSA; records that alias each other are merged. Machine-readable: JSON.