Miggo Logo

CVE-2020-23355: Codiad Vulnerable to PHP Magic Hash Vulnerability

7.5

CVSS Score
3.1

Basic Information

EPSS Score
0.46188%
Published
5/24/2022
Updated
4/25/2024
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
codiad/codiadcomposer<= 2.8.4

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability explicitly references the Authenticate() method in class.user.php as the affected component. The root cause is the use of PHP's loose comparison operator (==) for password hash matching, which enables magic hash collisions (e.g., '0e123' == '0e456' evaluates to true). This matches CWE-697 (Incorrect Comparison) and aligns with the documented magic hash vulnerability pattern. The GitHub issue #1121 and CVE description both confirm the authentication bypass occurs in this specific function.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

*o*i** *.*.* `/*ompon*tns/us*r/*l*ss.us*r.p*p:*ut**nti**t*()` is vuln*r**l* in m**i* **s* *ut**nti**tion *yp*ss. I* *n*rypt** or **s* v*lu* *or t** p*sswor*s *orm **rt*in *orm*ts o* m**i* **s*, *.*, `*****`, *not**r **s* v*lu* `*****[som*t*in*]` **n

Reasoning

T** vuln*r**ility *xpli*itly r***r*n**s t** `*ut**nti**t*()` m*t*o* in `*l*ss.us*r.p*p` *s t** *****t** *ompon*nt. T** root **us* is t** us* o* `P*P`'s loos* *omp*rison op*r*tor (==) *or p*sswor* **s* m*t**in*, w*i** *n**l*s m**i* **s* *ollisions (*.