CVE-2016-1000006

hhvm before 3.12.11 has a use-after-free in the serialize_memoize_param() and ResourceBundle::__construct() functions

published November 19, 2019

CVSS
—
EPSS
2%
Percentile
75.1
In the wild
Unconfirmed
What it is

⚠️ A crafty use-after-free vulnerability in hhvm can lead to unpredictable behavior! Imagine a waiter serving old orders that were supposed to be cleared out. 😯 Think of it like a restaurant where the server mistakenly serves a dish that has already been cleared off the table — the food is still there, but it doesn't belong in that context anymore. This mix-up could lead to some surprising outcomes for diners (or in our case, users!). In a worst-case scenario, this could allow for erratic behavior in your application, potentially leading to crashes or unexpected data leaks. If the application can be tricked into using freed memory, it could provide an opening for attackers to manipulate it, leading to malfunctioning code or worse!

Put simply

Think of it like a restaurant where the server mistakenly serves a dish that has already been cleared off the table — the food is still there, but it doesn't belong in that context anymore. This mix-up could lead to some surprising outcomes for diners (or in our case, users!). The vulnerability exists in the serialize_memoize_param() and ResourceBundle::__construct() functions of hhvm versions prior to 3.12.11, where improper memory management can result in using freed memory locations, causing stability issues.

What to do

In a worst-case scenario, this could allow for erratic behavior in your application, potentially leading to crashes or unexpected data leaks. If the application can be tricked into using freed memory, it could provide an opening for attackers to manipulate it, leading to malfunctioning code or worse! Upgrade your hhvm to version 3.12.11 or later to patch this vulnerability. Additionally, review memory management practices in your codebase to ensure that similar issues don't arise elsewhere. A thorough testing phase post-upgrade is also advisable. You’ve got this! Follow these steps, and you'll keep your application running smoothly! 🛡️

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.01568 · 75.1th percentile
Published
2019-11-19T14:51Z
EPSS history
Timeline
  • 19 NOV 14:51Z
    hhvm before 3.12.11 has a use-after-free in the serialize_memoize_param() and ResourceBundle::__construct() functions
    cvelistv5