CVE-2017-9228
A heap out-of-bounds write occurs in bitset_set_range() during regular expression compilation due to an uninitialized variable from an incorrect state transition.
Does this matter?
High impact if exploited, but EPSS currently rates exploitation as unlikely (6.26%). Schedule it in the normal patch cycle and watch for a rise in EPSS or a public exploit.
Description
An issue was discovered in Oniguruma 6.2.0, as used in Oniguruma-mod in Ruby through 2.4.1 and mbstring in PHP through 7.1.5. A heap out-of-bounds write occurs in bitset_set_range() during regular expression compilation due to an uninitialized variable from an incorrect state transition. An incorrect state transition in parse_char_class() could create an execution path that leaves a critical local variable uninitialized until it's used as an index, resulting in an out-of-bounds write memory corruption.
- CVSS 3.1
- 9.8 CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- EPSS
- 6.26% probability · 93th percentile
- CISA KEV
- Not listed
- Weakness
- CWE-787
- Affected
- oniguruma project/oniguruma · php/php
- Source
- cve@mitre.org
References
- https://access.redhat.com/errata/RHSA-2018:1296Third Party Advisory
- https://github.com/kkos/oniguruma/commit/3b63d12038c8d8fc278e81c942fa9bec7c704c8bPatch, Third Party Advisory
- https://github.com/kkos/oniguruma/issues/60Exploit, Issue Tracking, Third Party Advisory
- https://access.redhat.com/errata/RHSA-2018:1296Third Party Advisory
- https://github.com/kkos/oniguruma/commit/3b63d12038c8d8fc278e81c942fa9bec7c704c8bPatch, Third Party Advisory
- https://github.com/kkos/oniguruma/issues/60Exploit, Issue Tracking, Third Party Advisory
Source: NVD record, EPSS from FIRST.org, KEV from CISA. Refreshed daily.