Critical severity · published Apr 29, 2019
CVE-2019-3561
Insufficient boundary checks for the strrpos and strripos functions allow access to out-of-bounds memory
9.8
CVSS
1.7%
EPSS
No
On KEV
Description
Insufficient boundary checks for the strrpos and strripos functions allow access to out-of-bounds memory. This affects all supported versions of HHVM (4.0.3, 3.30.4, and 3.27.7 and below).
CVSS vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)1.7% · higher than 77% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
HH
Hhvm · Facebook
through 3.27.7; 3.28.0 through 3.30.4; 4.0.0 through 4.0.3 · source: NVD
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2019-3561
CVE.org
https://www.cve.org/CVERecord?id=CVE-2019-3561
Third Party Advisory
https://github.com/facebook/hhvm/commit/46003b4ab564b2abcd8470035fc324fe36aa8c75
Vendor Advisory
https://hhvm.com/blog/2019/04/03/hhvm-4.0.4.html
More from Hhvm
9.8
CVE-2022-36937
HHVM 4.172.0 and all prior versions use TLS 1.0 for secure connections when handling tls:// URLs in the stream extension
9.8
CVE-2021-24036
Passing an attacker controlled size when creating an IOBuf could cause integer overflow, leading to an out of bounds write on the heap with the possibility of remote code…
9.8
CVE-2020-1900
When unserializing an object with dynamic properties HHVM needs to pre-reserve the full size of the dynamic property array before inserting anything into it
9.8
CVE-2021-24025
Due to incorrect string size calculations inside the preg_quote function, a large input string passed to the function can trigger an integer overflow leading to a heap overflow
9.8
CVE-2020-1917
xbuf_format_converter, used as part of exif_read_data, was appending a terminating null character to the generated string, but was not using its standard append char function
