Miggo Logo

CVE-2025-54068: Livewire is vulnerable to remote command execution during component property update hydration

N/A

CVSS Score

Basic Information

EPSS Score
-
Published
7/17/2025
Updated
7/17/2025
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
-
Package NameEcosystemVulnerable VersionsFirst Patched Version
livewire/livewirecomposer>= 3.0.0-beta.1, < 3.6.43.6.4

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability lies in the hydrateForUpdate method within the Livewire\Mechanisms\HandleComponents\HandleComponents class. The provided patch clearly shows that the logic for handling property updates within this function was changed. Previously, it directly called the hydrate method. The fix introduces a new method, hydratePropertyUpdate, which contains an added security check to prevent the hydration of removed nested properties. The hydrateForUpdate function is modified to call this new, safer method. This indicates that the original implementation of hydrateForUpdate was the source of the remote command execution vulnerability.

Vulnerable functions

Livewire\Mechanisms\HandleComponents\HandleComponents.hydrateForUpdate
src/Mechanisms/HandleComponents/HandleComponents.php
The `hydrateForUpdate` function was vulnerable because it called the generic `hydrate` method to process property updates. This was insecure as it lacked specific checks for handling nested property removals (`__rm__`), creating a vector for remote command execution. The patch mitigates this by redirecting the property update hydration to a new, more secure method, `hydratePropertyUpdate`, which includes the necessary security checks.

WAF Protection Rules

WAF Rule

### Imp**t In Liv*wir* v* (≤ *.*.*), * vuln*r**ility *llows un*ut**nti**t** *tt**k*rs to ***i*v* r*mot* *omm*n* *x**ution in sp**i*i* s**n*rios. T** issu* st*ms *rom *ow **rt*in *ompon*nt prop*rty up**t*s *r* *y*r*t**. T*is vuln*r**ility is uniqu* to

Reasoning

T** vuln*r**ility li*s in t** `*y*r*t**orUp**t*` m*t*o* wit*in t** `Liv*wir*\M****nisms\**n*l**ompon*nts\**n*l**ompon*nts` *l*ss. T** provi*** p*t** *l**rly s*ows t**t t** lo*i* *or **n*lin* prop*rty up**t*s wit*in t*is *un*tion w*s ***n***. Pr*vious