Miggo Logo

CVE-2024-51996:
Symfony has an Authentication Bypass via RememberMe

7.5

CVSS Score
3.1

Basic Information

EPSS Score
0.15005%
Published
11/13/2024
Updated
11/14/2024
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
symfony/security-httpcomposer>= 5.3.0, < 5.4.475.4.47
symfony/security-httpcomposer>= 6.0.0-BETA1, < 6.4.156.4.15
symfony/security-httpcomposer>= 7.0.0-BETA1, < 7.1.87.1.8

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from the lack of username/class validation in the cookie consumption process. The commit diff shows critical security checks were added to PersistentRememberMeHandler.php's consumeRememberMeCookie method, specifically comparing getUserIdentifier() and getClass() between the cookie data and database record. The original code (before patch) did not perform these checks, making this function the entry point for the authentication bypass. The test cases added in PersistentRememberMeHandlerTest.php also validate this scenario by checking for invalid owners/cookie values.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### **s*ription W**n *onsumin* * p*rsist** r*m*m**r-m* *ooki*, Sym*ony *o*s not ****k i* t** us*rn*m* p*rsist** in t** **t***s* m*t***s t** us*rn*m* *tt***** wit* t** *ooki*, l***in* to *ut**nti**tion *yp*ss. ### R*solution T** `P*rsist*ntR*m*m**r

Reasoning

T** vuln*r**ility st*ms *rom t** l**k o* us*rn*m*/*l*ss v*li**tion in t** *ooki* *onsumption pro**ss. T** *ommit *i** s*ows *riti**l s**urity ****ks w*r* ***** to P*rsist*ntR*m*m**rM***n*l*r.p*p's *onsum*R*m*m**rM**ooki* m*t*o*, sp**i*i**lly *omp*rin