Debian Security Advisory
DLA-2431-1 libonig -- LTS security update
- Date Reported:
- 05 Nov 2020
- Affected Packages:
- Security database references:
- In the Debian bugtracking system: Bug 931878, Bug 939988, Bug 944959, Bug 945312, Bug 945313, Bug 946344, Bug 972113.
In Mitre's CVE dictionary: CVE-2019-13224, CVE-2019-16163, CVE-2019-19012, CVE-2019-19203, CVE-2019-19204, CVE-2019-19246, CVE-2020-26159.
- More information:
Several vulnerabilities were discovered in the Oniguruma regular expressions library, notably used in PHP mbstring.
A use-after-free in onig_new_deluxe() in regext.c allows attackers to potentially cause information disclosure, denial of service, or possibly code execution by providing a crafted regular expression. The attacker provides a pair of a regex pattern and a string, with a multi-byte encoding that gets handled by onig_new_deluxe().
Oniguruma allows Stack Exhaustion in regcomp.c because of recursion in regparse.c.
An integer overflow in the search_in_range function in regexec.c in Onigurama leads to an out-of-bounds read, in which the offset of this read is under the control of an attacker. (This only affects the 32-bit compiled version). Remote attackers can cause a denial-of-service or information disclosure, or possibly have unspecified other impact, via a crafted regular expression.
An issue was discovered in Oniguruma. In the function gb18030_mbc_enc_len in file gb18030.c, a UChar pointer is dereferenced without checking if it passed the end of the matched string. This leads to a heap-based buffer over-read.
An issue was discovered in Oniguruma. In the function fetch_interval_quantifier (formerly known as fetch_range_quantifier) in regparse.c, PFETCH is called without checking PEND. This leads to a heap-based buffer over-read.
Oniguruma has a heap-based buffer over-read in str_lower_case_match in regexec.c.
In Oniguruma an attacker able to supply a regular expression for compilation may be able to overflow a buffer by one byte in concat_opt_exact_str in src/regcomp.c
For Debian 9 stretch, these problems have been fixed in version 6.1.3-2+deb9u1.
We recommend that you upgrade your libonig packages.
For the detailed security status of libonig please refer to its security tracker page at: https://security-tracker.debian.org/tracker/libonig
Further information about Debian LTS security advisories, how to apply these updates to your system and frequently asked questions can be found at: https://wiki.debian.org/LTS