Miggo Logo

GHSA-96c6-m98x-hxjx: Zend-Session session validation vulnerability

6.5

CVSS Score
3.1

Basic Information

CVE ID
-
EPSS Score
-
Published
6/7/2024
Updated
6/7/2024
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
zendframework/zend-sessioncomposer>= 2.0.0, < 2.2.92.2.9
zendframework/zend-sessioncomposer>= 2.3.0, < 2.3.42.3.4

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper session data handling in SessionManager::start(). The patch adds $_SESSION backup/merge logic to preserve validator metadata stored in $_SESSION['__ZF']['_VALID']. Without this merge, validators attached before session start would have their reference signatures erased during session initialization, making subsequent validation checks ineffective. The commit diff clearly shows the vulnerable code flow lacked this critical data preservation step prior to the fix.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

`Z*n*\S*ssion` s*ssion v*li**tors *o not work *s *xp**t** i* s*t prior to t** st*rt o* * s*ssion. *or inst*n**, t** *ollowin* t*st **s* **ils (w**r* $t*is->m*n***r is *n inst*n** o* `Z*n*\S*ssion\S*ssionM*n***r`): ``` $t*is ->m*n***r ->**tV*

Reasoning

T** vuln*r**ility st*ms *rom improp*r s*ssion **t* **n*lin* in S*ssionM*n***r::st*rt(). T** p*t** ***s $_S*SSION ***kup/m*r** lo*i* to pr*s*rv* v*li**tor m*t***t* stor** in $_S*SSION['__Z*']['_V*LI*']. Wit*out t*is m*r**, v*li**tors *tt***** ***or* s