CVE-2016-1283

The pcre_compile2 function in pcre_compile.c in PCRE 8.38 mishandles the /((?:F?+(?:^(?(R)a+\"){99}-))(?J)(?'R'(?'R'<((?'RR'(?'R'\){97)?J)?J)(?'R'(?'R'\){99|(:(โ€ฆ

published January 3, 2016

CVSS
โ€”
EPSS
8%
Percentile
94.6
In the wild
Unconfirmed
What it is

๐Ÿšจ A cheeky crafted regular expression can lead to heap-based buffer overflow in PCRE 8.38, causing a denial of service just like a mischievous prank that overloads a party with unexpected guests! ๐ŸŽ‰ Think of it like a restaurant trying to serve too many orders at once without enough kitchen staff. If the chef gets overwhelmed with complex requests, they might end up with a kitchen disaster instead of a delightful meal! ๐Ÿฝ๏ธ If an attacker crafts a particularly tricky regex pattern, they could crash the application, leading to a denial of service. It's like a well-placed prank that leaves everyone stranded outside when they should be enjoying the party inside!

Put simply

Think of it like a restaurant trying to serve too many orders at once without enough kitchen staff. If the chef gets overwhelmed with complex requests, they might end up with a kitchen disaster instead of a delightful meal! ๐Ÿฝ๏ธ The vulnerability in PCRE 8.38 arises from the mishandling of named subgroups in the pcre_compile2 function, allowing an attacker to exploit regular expressions for heap-based buffer overflow during processing.

What to do

If an attacker crafts a particularly tricky regex pattern, they could crash the application, leading to a denial of service. It's like a well-placed prank that leaves everyone stranded outside when they should be enjoying the party inside! To mitigate this issue, ensure you upgrade to PCRE version 8.39 or later. Additionally, review your regex patterns for potential vulnerabilities, especially if they include named groups. ๐Ÿ›ก๏ธ You've got this! By taking these steps, you're solidifying your defenses and ensuring your applications run smoothly. ๐Ÿ’ชโœจ

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.07791 ยท 94.6th percentile
Published
2016-01-03T00:00Z
EPSS history
Timeline
  • 03 JAN 00:00Z
    The pcre_compile2 function in pcre_compile.c in PCRE 8.38 mishandles the /((?:F?+(?:^(?(R)a+\"){99}-))(?J)(?'R'(?'R'<((?'RR'(?'R'\){97)?J)?J)(?'R'(?'R'\){99|(:(โ€ฆ
    cvelistv5