The match function in pcre_exec.c in PCRE before 8.37 mishandles the /(?:((abcd))|(((?:(?:(?:(?:abc|(?:abcdef))))b)abcdefghi)abc)|((ACCEPT)))/ pattern and related patterns involving (ACCEPT), which allows remote attackers to obtain sensitive information from process memory or cause a denial of service (partially initialized memory and application crash) via a crafted regular expression, as demonstrated by a JavaScript RegExp object encountered by Konqueror, aka ZDI-CAN-2547.
{
"binaries": [
{
"binary_version": "1:8.31-2ubuntu2.2",
"binary_name": "libpcre3"
},
{
"binary_version": "1:8.31-2ubuntu2.2",
"binary_name": "libpcre3-dev"
},
{
"binary_version": "1:8.31-2ubuntu2.2",
"binary_name": "libpcrecpp0"
},
{
"binary_version": "1:8.31-2ubuntu2.2",
"binary_name": "pcregrep"
}
],
"availability": "No subscription required"
}