CVE-2017-9228
oniguruma: Out-of-bounds heap write in bitset_set_range()
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD. Rated lower by Amazon (high), Red Hat (medium), Ubuntu (medium).
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.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| alpine 3.4 | php5 | 5.6.31-r0 |
| alpine 3.5 | php5, php7 | 5.6.31-r0 and 1 more |
| alpine 3.6 | php5, php7 | 5.6.31-r0 and 1 more |
| alpine 3.7 | php5, php7 | 5.6.31-r0 and 1 more |
| alpine 3.8 | php5 | 5.6.31-r0 |
| amazon linux 1 | php56, php56-bcmath, php56-cli and 63 more | 5.6.31-1.134.amzn1 and 1 more |
| amazon linux 2 | oniguruma, oniguruma-debuginfo, oniguruma-devel and 25 more | 5.9.6-1.amzn2.0.7 and 1 more |
| debian 11 | libonig | 6.1.3-2 |
| debian 12 | libonig | 6.1.3-2 |
| debian 13 | libonig | 6.1.3-2 |
| debian 14 | libonig | 6.1.3-2 |
| debian 7 | libonig | 5.9.1-1+deb7u1 |
Show all 168 entries from 21 sources
| Source | Package | Fixed in |
|---|---|---|
| alpine 3.4 | php5 | 5.6.31-r0 |
| alpine 3.5 | php5 | 5.6.31-r0 |
| alpine 3.5 | php7 | 7.0.21-r0 |
| alpine 3.6 | php5 | 5.6.31-r0 |
| alpine 3.6 | php7 | 7.1.9-r0 |
| alpine 3.7 | php5 | 5.6.31-r0 |
| alpine 3.7 | php7 | 7.1.7-r0 |
| alpine 3.8 | php5 | 5.6.31-r0 |
| amazon linux 1 | php56 | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-bcmath | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-cli | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-common | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-dba | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-dbg | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-debuginfo | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-devel | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-embedded | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-enchant | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-fpm | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-gd | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-gmp | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-imap | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-intl | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-ldap | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-mbstring | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-mcrypt | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-mssql | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-mysqlnd | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-odbc | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-opcache | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-pdo | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-pgsql | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-process | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-pspell | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-recode | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-snmp | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-soap | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-tidy | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-xml | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php56-xmlrpc | 5.6.31-1.134.amzn1 |
| amazon linux 1 | php70 | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-bcmath | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-cli | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-common | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-dba | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-dbg | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-debuginfo | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-devel | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-embedded | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-enchant | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-fpm | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-gd | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-gmp | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-imap | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-intl | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-json | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-ldap | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-mbstring | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-mcrypt | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-mysqlnd | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-odbc | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-opcache | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-pdo | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-pdo-dblib | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-pgsql | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-process | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-pspell | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-recode | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-snmp | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-soap | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-tidy | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-xml | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-xmlrpc | 7.0.21-1.23.amzn1 |
| amazon linux 1 | php70-zip | 7.0.21-1.23.amzn1 |
| amazon linux 2 | oniguruma | 5.9.6-1.amzn2.0.7 |
| amazon linux 2 | oniguruma-debuginfo | 5.9.6-1.amzn2.0.7 |
| amazon linux 2 | oniguruma-devel | 5.9.6-1.amzn2.0.7 |
| amazon linux 2 | php | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-bcmath | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-cli | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-common | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-dba | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-debuginfo | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-devel | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-embedded | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-enchant | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-fpm | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-gd | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-intl | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-ldap | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-mbstring | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-mysqlnd | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-odbc | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-pdo | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-pgsql | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-process | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-pspell | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-recode | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-snmp | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-soap | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-xml | 5.4.16-46.amzn2.0.3 |
| amazon linux 2 | php-xmlrpc | 5.4.16-46.amzn2.0.3 |
| debian 11 | libonig | 6.1.3-2 |
| debian 12 | libonig | 6.1.3-2 |
| debian 13 | libonig | 6.1.3-2 |
| debian 14 | libonig | 6.1.3-2 |
| debian 7 | libonig | 5.9.1-1+deb7u1 |
| debian 8 | libonig | 5.9.5-3.2+deb8u1 |
| echo | libonig | 6.1.3-2 |
| Red Hat | oniguruma | no fix listed |
| Red Hat | oniguruma-devel | no fix listed |
| Red Hat | php | no fix listed |
| Red Hat | php-bcmath | no fix listed |
| Red Hat | php-cli | no fix listed |
| Red Hat | php-common | no fix listed |
| Red Hat | php-dba | no fix listed |
| Red Hat | php-devel | no fix listed |
| Red Hat | php-embedded | no fix listed |
| Red Hat | php-enchant | no fix listed |
| Red Hat | php-fpm | no fix listed |
| Red Hat | php-gd | no fix listed |
| Red Hat | php-imap | no fix listed |
| Red Hat | php-intl | no fix listed |
| Red Hat | php-ldap | no fix listed |
| Red Hat | php-mbstring | no fix listed |
| Red Hat | php-mysql | no fix listed |
| Red Hat | php-mysqlnd | no fix listed |
| Red Hat | php-odbc | no fix listed |
| Red Hat | php-pdo | no fix listed |
| Red Hat | php-pgsql | no fix listed |
| Red Hat | php-process | no fix listed |
| Red Hat | php-pspell | no fix listed |
| Red Hat | php-recode | no fix listed |
| Red Hat | php-snmp | no fix listed |
| Red Hat | php-soap | no fix listed |
| Red Hat | php-tidy | no fix listed |
| Red Hat | php-xml | no fix listed |
| Red Hat | php-xmlrpc | no fix listed |
| Red Hat | php-zts | no fix listed |
| Red Hat | ruby | no fix listed |
| Red Hat | ruby-devel | no fix listed |
| Red Hat | ruby-doc | no fix listed |
| Red Hat | ruby-docs | no fix listed |
| Red Hat | ruby-irb | no fix listed |
| Red Hat | ruby-libs | no fix listed |
| Red Hat | ruby-rdoc | no fix listed |
| Red Hat | ruby-ri | no fix listed |
| Red Hat | ruby-static | no fix listed |
| Red Hat | ruby-tcltk | no fix listed |
| Red Hat | rubygem-bigdecimal | no fix listed |
| Red Hat | rubygem-io-console | no fix listed |
| Red Hat | rubygem-json | no fix listed |
| Red Hat | rubygem-minitest | no fix listed |
| Red Hat | rubygem-psych | no fix listed |
| Red Hat | rubygem-rake | no fix listed |
| Red Hat | rubygem-rdoc | no fix listed |
| Red Hat | rubygems | no fix listed |
| Red Hat | rubygems-devel | no fix listed |
| ubuntu 14.04 | libonig | 5.9.1-1ubuntu1.1 |
| ubuntu 14.04 | php5 | 5.5.9+dfsg-1ubuntu4.22 |
| ubuntu 14.04-ESM | libonig | 5.9.1-1ubuntu1.1 |
| ubuntu 14.04-ESM | php5 | 5.5.9+dfsg-1ubuntu4.22 |
| ubuntu 16.04 | libonig | 5.9.6-1ubuntu0.1 |
| ubuntu 16.04 | php7.0 | 7.0.22-0ubuntu0.16.04.1 |
| ubuntu 16.04-ESM | libonig | 5.9.6-1ubuntu0.1 |
| ubuntu 16.04-ESM | php7.0 | 7.0.22-0ubuntu0.16.04.1 |
| ubuntu 17.04 | php7.0 | 7.0.22-0ubuntu0.17.04.1 |
| ubuntu 17.10 | php7.1 | 7.1.8-1ubuntu1 |
References
- https://access.redhat.com/errata/RHSA-2018:1296
- https://access.redhat.com/security/cve/CVE-2017-9228
- https://github.com/kkos/oniguruma/commit/3b63d12038c8d8fc278e81c942fa9bec7c704c8b
- https://github.com/kkos/oniguruma/issues/60
- https://nvd.nist.gov/vuln/detail/CVE-2017-9228
- https://ubuntu.com/security/notices/USN-3382-1
- https://ubuntu.com/security/notices/USN-3382-2
- https://www.cve.org/CVERecord?id=CVE-2017-9228