Skip to main content
Mallory
CriticalCISA KEVExploited in the wildPublic exploit

Unauthenticated RCE in Laravel Livewire v3 hydration updates

IdentifiersCVE-2025-54068CWE-94· Improper Control of Generation of…

CVE-2025-54068 is a critical code injection vulnerability in Laravel Livewire v3 affecting versions up to and including 3.6.3. The flaw is in how certain component property updates are hydrated during processing of Livewire update requests, including the /livewire/update endpoint. Specifically, Livewire’s recursive hydration logic could be abused via the updates mechanism to smuggle attacker-controlled synthesizer metadata into property rehydration, bypassing the normal snapshot context assumptions. Because Livewire synthesizers can instantiate classes during hydration, a crafted update payload can trigger arbitrary object instantiation and gadget-chain execution, leading to remote command execution. Public reporting states the issue is unique to Livewire v3, does not affect prior major versions, and can be exploited without authentication or user interaction when a vulnerable component is mounted and configured in a particular way. The vendor patched the issue in v3.6.4 by hardening hydration logic and preserving the original snapshot context during recursive update hydration.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can result in unauthenticated remote command execution on the server hosting the vulnerable Livewire application. This can lead to full application and system compromise, including arbitrary command execution in the context of the web server or PHP process, deployment of secondary payloads, persistence, data theft, lateral movement, and service disruption. Public reporting also indicates in-the-wild exploitation and inclusion in CISA KEV.

Mitigation

If you can’t patch tonight, do this now.

No known workaround is available according to the provided content. Until patching is completed, reduce exposure of vulnerable Livewire endpoints where operationally feasible, restrict access to affected applications, closely monitor and log POST requests to /livewire/update, deploy WAF or reverse-proxy detections for malformed or unexpected serialized/object-like update payloads, and hunt for post-exploitation indicators such as command execution, payload retrieval via curl/wget, and unusual outbound network traffic. These are temporary risk-reduction measures and do not replace upgrading to 3.6.4+.

Remediation

Patch, then assume compromise.

Upgrade Laravel Livewire to version 3.6.4 or later. The vendor states the issue is fixed in 3.6.4 by changing the hydration path to preserve the original snapshot context during recursive property update hydration. Because no workaround is known, patching is the primary remediation. After upgrading, review exposed applications for signs of compromise, especially suspicious POST requests to /livewire/update, unexpected process execution, dropped webshells or payloads, and anomalous outbound connections.
PUBLIC EXPLOITS

Exploits

4 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos (3 hidden).

VALID 4 / 7 TOTALView more in app
CVE-2025-54068MaturityPoCVerified exploit

Single-file Python exploit tool targeting CVE-2025-54068 against Laravel Livewire applications. The repository contains one substantial script, CVE-2025-54068.py, which implements an end-to-end exploitation workflow rather than a simple detector. The code imports requests, BeautifulSoup, AES/Crypto primitives, threading, subprocess, and concurrent execution modules, indicating automated HTTP interaction, HTML parsing, Laravel-style cryptographic payload handling, and mass exploitation support. The script structure includes: large constant tables for Livewire version fingerprinting (mapping many Livewire 3.x versions to identifiers), default .env discovery paths for APP_KEY harvesting, candidate writable directories for file-drop/web-shell placement, dangerous constructor metadata, and multiple gadget-chain templates for PHP object deserialization. The visible menu logic shows three operating modes: exploit a single URL, exploit targets from file(s) in bulk, and APP_KEY discovery only. It also supports non-interactive/automated execution via environment-driven configuration and can spawn multiple processes for mass exploitation. Primary capabilities inferred from the code are: fingerprinting Livewire versions, probing common Laravel .env locations to recover APP_KEY values, generating encrypted/signed Laravel-compatible payloads, selecting among several gadget chains, and attempting RCE or file-write outcomes on vulnerable targets. The writable-directory list strongly suggests support for dropping a shell or other attacker-controlled file into web-accessible locations. Because the exploit includes actual payload construction and operational workflow, it is best classified as an operational exploit rather than a proof-of-concept. Fingerprintable observables in the code are mostly target-side file paths rather than hardcoded remote infrastructure: numerous .env probe paths and common Laravel writable/public directories. No fixed attacker-controlled IPs or domains are visible in the provided content. The script appears intended for arbitrary operator-supplied target URLs over HTTP/HTTPS rather than a single hardcoded endpoint.

zycoder0dayDisclosed May 11, 2026pythonwebnetwork
CVE-2025-54068MaturityPoCVerified exploit

Repository purpose: an enhanced Python exploit tool for CVE-2025-54068 targeting Laravel Livewire, enabling remote command execution by sending crafted Livewire component update requests. It is based on Synacktiv's Livepyre concept and adds usability features (auto URL formatting, custom payload generation, and mass scanning). Key components: - gas.py: main CLI entry point. Supports single-target exploitation, payload-only generation, and mass checking. Can switch to a custom payload mode that base64-encodes a locally generated serialized PHP object and sets function=unserialize to execute it remotely. - exploit/exploit.py: shared base class providing URL normalization, session setup (optional proxy/headers), HTML parsing helpers to extract CSRF token and Livewire update URI, snapshot extraction, and version fingerprinting using versions.json. - exploit/exploit_appkey.py: exploit path when APP_KEY is known. Recomputes Livewire snapshot checksum (HMAC-SHA256 using parsed APP_KEY) after injecting a gadget chain into snapshot data, then POSTs to the update endpoint. - exploit/exploit_wappkey.py: exploit path without APP_KEY. Performs a two-stage approach: (1) attempts to coerce a chosen snapshot parameter into an array/object form via an update request, then (2) sends a second request using payload.json with placeholders replaced to trigger the gadget chain and execute the chosen PHP function/parameter. Includes a version check (<3.6.4) with optional --force. - exploit/laravel_crypto/*: Laravel-compatible AES/HMAC helpers used for APP_KEY parsing and checksum/signing logic. - exploit/payload_generator.py: generates serialized PHP payloads locally (via running php) for richer post-exploitation primitives (shell/file read/write/list/phpinfo/config/eval, multi-command). Used by gas.py custom payload mode. - exploit/mass.py: multi-threaded Livewire presence/version/vulnerability checker with optional realtime result saving. Exploit capabilities: - Detects Livewire presence and extracts wire:snapshot values from HTML. - Discovers Livewire update endpoint (relative or absolute) and CSRF token. - Executes arbitrary PHP functions with attacker-controlled parameters (default system('id')). - Optional custom payload mode: delivers attacker-defined serialized PHP object and triggers it via unserialize(), enabling multi-function command execution and file operations. - Mass scanning/checking of multiple targets with threading and output to JSON/CSV. Notable observables: - Network behavior: HEAD/GET to the provided target URL, then POST JSON to the discovered Livewire update URI. - Local artifacts: versions.json and payload.json templates; optional dependency on local 'php' binary for payload generation.

haxorstarsDisclosed Jan 20, 2026pythonphpnetwork
CVE-2025-54068-livewireMaturityPoCVerified exploit

This repository provides a minimal, reproducible lab environment for CVE-2025-54068, a critical remote code execution vulnerability in Livewire v3.6.3 (used with Laravel 11.0.0). The structure includes Docker and docker-compose files to build and run the vulnerable application, a sample Livewire component (Counter) intentionally left untyped to facilitate exploitation, and a Python proof-of-concept exploit (scripts/poc.py). The exploit works in two stages: first, it manipulates a Livewire component parameter to trigger a type confusion, then it sends a crafted PHP object injection payload to achieve RCE. The PoC confirms exploitation by echoing a marker string and checking for its presence in the HTTP response. The main endpoints involved are the web interface at http://localhost:18081/ and the Livewire update endpoint discovered dynamically by the exploit script. The repository is well-structured for security researchers to reproduce and validate the vulnerability, with clear separation between application code, configuration, and exploit logic. No fake or destructive payloads are present; the exploit is a safe, operational PoC for RCE.

flame-11Disclosed Jan 8, 2026pythonphpnetwork
LivepyreMaturityPoCVerified exploit

This repository, 'Livepyre', is a Python-based exploit tool targeting CVE-2025-54068, a remote command execution (RCE) vulnerability in Laravel Livewire versions prior to 3.6.4. The tool is structured with a main entry point (Livepyre.py) that orchestrates exploitation using two main strategies: with and without knowledge of the Laravel APP_KEY. The 'exploit' directory contains the core logic, including modules for cryptographic operations compatible with Laravel's encryption scheme, payload construction, and version detection. The exploit works by sending specially crafted HTTP POST requests to Livewire endpoints, abusing the snapshot mechanism to trigger PHP object injection and execute arbitrary system commands. The tool can automatically detect vulnerable versions, enumerate exploitable parameters, and adapt its payloads based on the target's configuration. The repository includes example usage, payload templates, and a comprehensive version hash list for Livewire. No hardcoded IPs or domains are present, but the tool requires the attacker to specify the target URL. The exploit is operational and provides direct RCE if successful.

synacktivDisclosed Dec 23, 2025pythonnetwork
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
LaravelLivewireapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence5

Every observed campaign linking this CVE to a named adversary.

Associated malware4

Malware families riding this exploit, with evidence and IOCs.

Detection signatures1

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity28

Community discussion across Reddit, Mastodon, and other social sources.