CVE-2026-81887
Livewire DOM-based cross-site scripting during client-side state handling
Livewire is a full-stack framework for Laravel. From 3.0.0-beta.1 until 3.8.3 and 4.3.4, the dot-notated query-string parser in js/plugins/history/index.js, including fromQueryString() and insertDotNotatedValueIntoData(), accepts the proto, constructor, and prototype path segments and creates inherited objects. Client-side state handlers then access effects.html, effects.js, effects.xjs, and effects.scripts without Object.prototype.hasOwnProperty.call(), allowing inherited attacker-controlled state to be treated as trusted effects. An unauthenticated attacker can craft a URL that, when opened by a user, executes arbitrary JavaScript in the affected application's origin. Exploitation requires user interaction and does not bypass server-side authorization or grant privileges beyond the affected user. This issue is fixed in versions 3.8.3 and 4.3.4.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Active
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
5.1
Livewire DOM-based cross-site scripting during client-side state handling
Livewire is a full-stack framework for Laravel. From 3.0.0-beta.1 until 3.8.3 and 4.3.4, the dot-notated query-string parser in js/plugins/history/index.js, including fromQueryString() and insertDotNotatedValueIntoData(), accepts the proto, constructor, and prototype path segments and creates inherited objects. Client-side state handlers then access effects.html, effects.js, effects.xjs, and effects.scripts without Object.prototype.hasOwnProperty.call(), allowing inherited attacker-controlled state to be treated as trusted effects. An unauthenticated attacker can craft a URL that, when opened by a user, executes arbitrary JavaScript in the affected application's origin. Exploitation requires user interaction and does not bypass server-side authorization or grant privileges beyond the affected user. This issue is fixed in versions 3.8.3 and 4.3.4.
- Record
CVE-2026-81887- CVSS 4.0
- 5.1 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N - Weakness
- CWE-79, CWE-1321
- Updated
- 2026-11-02
EUVDEUVD-2026-68765
5.1
Livewire is a full-stack framework for Laravel. From 3.0.0-beta.1 until 3.8.3 and 4.3.4, the dot-notated query-string parser in js/plugins/history/index.js, including fromQueryString() and insertDotNotatedValueIntoData(), accepts the proto, constructor, and prototype path segments and creates inherited objects. Client-side state handlers then access effects.html, effects.js, effects.xjs, and effects.scripts without Object.prototype.hasOwnProperty.call(), allowing inherited attacker-controlled state to be treated as trusted effects. An unauthenticated attacker can craft a URL that, when opened by a user, executes arbitrary JavaScript in the affected application's origin. Exploitation requires user interaction and does not bypass server-side authorization or grant privileges beyond the affected user. This issue is fixed in versions 3.8.3 and 4.3.4.
- Record
EUVD-2026-68765- CVSS 4.0
- 5.1 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-g3hc-697w-wm82
5.1
Livewire DOM-based cross-site scripting during client-side state handling
Impact
In Livewire v3 (≤ 3.8.2) and v4 (≤ 4.3.3), a vulnerability allows unauthenticated attackers to execute arbitrary JavaScript in the origin of an affected application in specific scenarios. The issue stems from how certain client-side component state is handled. This vulnerability does not affect prior major versions. Exploitation requires user interaction, but does not require authentication or prior access to the application. The issue does not bypass server-side authorisation and grants an attacker no privileges beyond those the affected user already holds.
Patches
This issue has been patched in Livewire v3.8.3 and v4.3.4. All users are strongly encouraged to upgrade to these versions or later as soon as possible.
Workarounds
There is no known workaround at this time. Users are strongly advised to upgrade to a patched version immediately.
- Record
GHSA-g3hc-697w-wm82- CVSS 4.0
- 5.1 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N - Weakness
- CWE-79, CWE-1321
- Updated
- 2026-11-02
NVD
5.1
Livewire is a full-stack framework for Laravel. From 3.0.0-beta.1 until 3.8.3 and 4.3.4, the dot-notated query-string parser in js/plugins/history/index.js, including fromQueryString() and insertDotNotatedValueIntoData(), accepts the proto, constructor, and prototype path segments and creates inherited objects. Client-side state handlers then access effects.html, effects.js, effects.xjs, and effects.scripts without Object.prototype.hasOwnProperty.call(), allowing inherited attacker-controlled state to be treated as trusted effects. An unauthenticated attacker can craft a URL that, when opened by a user, executes arbitrary JavaScript in the affected application's origin. Exploitation requires user interaction and does not bypass server-side authorization or grant privileges beyond the affected user. This issue is fixed in versions 3.8.3 and 4.3.4.
- Record
CVE-2026-81887- CVSS 4.0
- 5.1 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-79, CWE-1321
- Updated
- 2026-11-02
OSV
5.1
Livewire DOM-based cross-site scripting during client-side state handling
Livewire is a full-stack framework for Laravel. From 3.0.0-beta.1 until 3.8.3 and 4.3.4, the dot-notated query-string parser in js/plugins/history/index.js, including fromQueryString() and insertDotNotatedValueIntoData(), accepts the proto, constructor, and prototype path segments and creates inherited objects. Client-side state handlers then access effects.html, effects.js, effects.xjs, and effects.scripts without Object.prototype.hasOwnProperty.call(), allowing inherited attacker-controlled state to be treated as trusted effects. An unauthenticated attacker can craft a URL that, when opened by a user, executes arbitrary JavaScript in the affected application's origin. Exploitation requires user interaction and does not bypass server-side authorization or grant privileges beyond the affected user. This issue is fixed in versions 3.8.3 and 4.3.4.
- Record
CVE-2026-81887- CVSS 4.0
- 5.1 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N - Weakness
- CWE-1321, CWE-79
- Updated
- 2026-11-04
OSVGHSA-g3hc-697w-wm82
5.1
Livewire DOM-based cross-site scripting during client-side state handling
Impact
In Livewire v3 (≤ 3.8.2) and v4 (≤ 4.3.3), a vulnerability allows unauthenticated attackers to execute arbitrary JavaScript in the origin of an affected application in specific scenarios. The issue stems from how certain client-side component state is handled. This vulnerability does not affect prior major versions. Exploitation requires user interaction, but does not require authentication or prior access to the application. The issue does not bypass server-side authorisation and grants an attacker no privileges beyond those the affected user already holds.
Patches
This issue has been patched in Livewire v3.8.3 and v4.3.4. All users are strongly encouraged to upgrade to these versions or later as soon as possible.
Workarounds
There is no known workaround at this time. Users are strongly advised to upgrade to a patched version immediately.
- Record
GHSA-g3hc-697w-wm82- CVSS 4.0
- 5.1 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N - Weakness
- CWE-1321, CWE-79
- Updated
- 2026-11-02
OSVCLSA-2026-1790868445 No score
TuxCare security update for livewire/livewire (1 CVE)
TuxCare rebuilt livewire/livewire to address 1 CVE. Fixed in v3.6.3-p2+tuxcare.
- Record
CLSA-2026-1790868445- Updated
- 2026-11-02
OSVCLSA-2026-1790868699 No score
TuxCare security update for livewire/livewire (1 CVE)
TuxCare rebuilt livewire/livewire to address 1 CVE. Fixed in v3.6.4-p1+tuxcare.
- Record
CLSA-2026-1790868699- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
livewire/livewirePackagist |
3.0.0-beta.1 to 3.8.2 | 3.8.3 |
livewire/livewirePackagist |
4.0.0-beta.1 to 4.3.3 | 4.3.4 |
livewire/livewireTuxCare:Packagist |
v3.6.3 up to v3.6.3-p2+tuxcare, plus listed versions v3.6.3-p1+tuxcare |
v3.6.3-p2+tuxcare |
livewire/livewireTuxCare:Packagist |
v3.6.4 up to v3.6.4-p1+tuxcare | v3.6.4-p1+tuxcare |
livewire/livewirePackagist |
3.0.0-beta.1 up to 3.8.3, plus listed versions v3.0.0v3.0.0-beta.1v3.0.0-beta.10v3.0.0-beta.11v3.0.0-beta.2 Show 45 moreShow lessv3.0.0-beta.3v3.0.0-beta.4v3.0.0-beta.5v3.0.0-beta.6v3.0.0-beta.7v3.0.0-beta.8v3.0.0-beta.9v3.0.1v3.0.10v3.0.2v3.0.3v3.0.4v3.0.5v3.0.6v3.0.7v3.0.8v3.0.9v3.1.0v3.2.0v3.2.1v3.2.2v3.2.3v3.2.4v3.2.5v3.2.6v3.3.0v3.3.1v3.3.2v3.3.3v3.3.4v3.3.5v3.4.0v3.4.1v3.4.10v3.4.11v3.4.12v3.4.2v3.4.3v3.4.4v3.4.5v3.4.6v3.4.7v3.4.8v3.4.9v3.5.0 |
3.8.3 |
livewire/livewirePackagist |
4.0.0-beta.1 up to 4.3.4, plus listed versions v4.0.0v4.0.0-beta.1v4.0.0-beta.2v4.0.0-beta.3v4.0.0-beta.4 Show 20 moreShow lessv4.0.0-beta.5v4.0.0-beta.6v4.0.1v4.0.2v4.0.3v4.1.0v4.1.1v4.1.2v4.1.3v4.1.4v4.2.0v4.2.1v4.2.2v4.2.3v4.2.4v4.2.4-beta.2v4.3.0v4.3.1v4.3.2v4.3.3 |
4.3.4 |
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | OSV | |
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-81887 is a medium vulnerability (CVSS 5.1) in Livewire, published August 31, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.68%, the 52nd percentile. Fixed in livewire/livewire 3.8.3.
References
github.com/livewire/livewire/security/advisories/GHSA-g3hc-697w-wm82
github.com/livewire/livewire/pull/10467
github.com/livewire/livewire/commit/11ebe646f7e81dde2d714815da8b3019d058561e
github.com/livewire/livewire/releases/tag/v3.8.3
github.com/livewire/livewire/releases/tag/v4.3.4
nvd.nist.gov/vuln/detail/CVE-2026-81887
github.com/advisories/GHSA-g3hc-697w-wm82
github.com/CVEProject/cvelistV5/tree/main/cves/2026/81xxx/CVE-2026-81887.json
github.com/livewire/livewire
Left out here: 47 versions. The JSON record has them.