CVE-2017-9226
oniguruma: Heap buffer overflow in next_state_val() during regular expression compilation
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 or read occurs in next_state_val() during regular expression compilation. Octal numbers larger than 0xff are not handled correctly in fetch_token() and fetch_token_in_cc(). A malformed regular expression containing an octal number in the form of '\700' would produce an invalid code point value larger than 0xff in next_state_val(), 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.6 |
| amazon linux 2 | php-bcmath | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-cli | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-common | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-dba | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-debuginfo | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-devel | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-embedded | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-enchant | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-fpm | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-gd | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-intl | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-ldap | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-mbstring | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-mysqlnd | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-odbc | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-pdo | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-pgsql | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-process | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-pspell | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-recode | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-snmp | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-soap | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-xml | 5.4.16-46.amzn2.0.6 |
| amazon linux 2 | php-xmlrpc | 5.4.16-46.amzn2.0.6 |
| 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
- http://www.securityfocus.com/bid/101244
- https://access.redhat.com/errata/RHSA-2018:1296
- https://access.redhat.com/security/cve/CVE-2017-9226
- https://github.com/kkos/oniguruma/commit/b4bf968ad52afe14e60a2dc8a95d3555c543353a
- https://github.com/kkos/oniguruma/commit/f015fbdd95f76438cd86366467bb2b39870dd7c6
- https://github.com/kkos/oniguruma/issues/55
- https://nvd.nist.gov/vuln/detail/CVE-2017-9226
- https://ubuntu.com/security/notices/USN-3382-1