CVE-2021-23592: Deserialization of Untrusted Data in topthink/framework
9.8
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.75447%
CWE
Published
5/7/2022
Updated
2/1/2023
KEV Status
No
Technology
PHP
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
topthink/framework | composer | < 6.0.12 | 6.0.12 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from the Driver::unserialize
method in the cache component. The pre-patch implementation accepted a string parameter and blindly passed it to unserialize()
. While the commit diff shows a type hint removal (string -> mixed), the core issue is the lack of validation before deserialization. Attackers could manipulate cached data (an untrusted source) to include malicious payloads. The CVE description explicitly cites insecure unserialize
in the Driver
class, and the patch's commit message confirms the method was modified to address type-related security constraints.