CVE-2017-9228

NameCVE-2017-9228
DescriptionAn 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SuSE, Mageia, GitHub code/issues, web search, more)
ReferencesDLA-958-1
NVD severityhigh (attack range: remote)
Debian Bugs863316

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
libonig (PTS)wheezy5.9.1-1vulnerable
wheezy (security)5.9.1-1+deb7u1fixed
jessie5.9.5-3.2+deb8u1fixed
stretch6.1.3-2fixed
buster, sid6.6.1-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
libonigsource(unstable)6.1.3-2high863316
libonigsourcejessie5.9.5-3.2+deb8u1high
libonigsourcewheezy5.9.1-1+deb7u1highDLA-958-1

Notes

https://github.com/kkos/oniguruma/commit/3b63d12038c8d8fc278e81c942fa9bec7c704c8b
https://github.com/kkos/oniguruma/issues/60

Search for package or bug name: Reporting problems