Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach read-only JSON:API endpoint
-
ExploitCraft include param with destructive segment
-
ExecutionRelationship resolver invokes destructive method
-
ImpactRelated table emptied, irreversible data loss
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V15 - Secure Coding and Architecture Reflection safety, class allowlisting
|
| Exploitation Conditions | The application must use Laravel's JSON:API resource feature (the ResolvesJsonApiElements trait / JsonApiResource) on an affected version (12.45.0 through 12.67.x, or 13.x before 13.27.0) and expose a read-only endpoint that accepts the user-controlled 'include' relationship-inclusion query parameter. The attacker crafts a nested include value whose trailing segment maps to a destructive model operation (e.g., include=comments.truncate or posts.comments.truncate) that the resolver processes as a relationship. LIMITING FACTORS: exploitation is confined to apps that have adopted the recently introduced JSON:API resources (likely low real-world adoption), the endpoint must honor client-supplied includes, and the destructive effect is bounded to tables reachable through those relationship paths; per the description the actor needs read access to the endpoint (CVSS encodes PR:N, but the description implies an authenticated read-only user). |
| Impact | Signals are mixed and point to a moderate, conditional risk rather than an urgent one. The CVSS 3.1 base score is 6.5 with vector AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L and CWE-470 (unsafe reflection / externally-controlled selection of code), reflecting a remote, low-complexity bug with no confidentiality impact but low integrity and availability impact. No EPSS score was supplied, the CVE is NOT in CISA KEV, and no public exploit was provided - so there is no evidence of active or widespread exploitation. CONFLICT TO VERIFY: the CVSS vector encodes PR:N (unauthenticated) while the description explicitly states 'a user with read access but no write permission,' implying an authenticated low-privilege actor; treat the authentication requirement as not firmly confirmed and verify against the vendor advisory. I also judge the official I:L/A:L to UNDERSTATE impact - emptying an entire related table is irreversible, which is closer to high integrity/availability loss for the affected data - but this is offset by narrow exposure: the flaw only reaches apps using Laravel's new JSON:API resource feature (introduced in 12.45.0, likely low adoption) that expose a read endpoint honoring user-controlled 'include' parameters. Net: a real bug worth patching promptly for teams using JSON:API resources, but not a mass-exploitation-grade emergency absent KEV/POC/EPSS evidence. |
| Exploit ScenarioDerived | An actor who can reach a Laravel JSON:API read-only endpoint sends a GET request with a crafted relationship-inclusion parameter such as include=comments.truncate; the relationship resolver treats the trailing segment as something to resolve on the related model and invokes a destructive operation, emptying the related table instead of returning data. No public exploit code is identified, though the fix PR (#61322) ships regression tests (include=comments.truncate and posts.comments.truncate) that effectively demonstrate the technique. Because the CVSS vector is AV:N/AC:L, the request is a single low-complexity, network-delivered HTTP call. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 21, 2026
Crafted relationship-inclusion parameters on Laravel JSON:API resource endpoints can be turned into destructive database operations, letting a low-privileged user wipe data from related tables through what should be a read-only request. Applications running laravel/framework versions 12.45.0 through 12.67.x, or 13.x before 13.27.0, that expose client-controlled 'include' query parameters via the JsonApiResource / ResolvesJsonApiElements feature are affected; the vendor fixed the flaw in 12.68.0 and 13.27.0. Because a single request can irreversibly empty tables, the integrity and availability impact outweighs the modest attack complexity, though exploitation is conditional on JSON:API resources actually being adopted and on the endpoint honoring user-supplied includes - no public exploit code or confirmed active exploitation was identified at time of analysis.
RemediationAI
Vendor-released patch: upgrade laravel/framework to 12.68.0 or later on the 12.x line, or to 13.27.0 or later on the 13.x line (composer require laravel/framework:^12.68.0 or ^13.27.0), and verify against advisory GHSA-5wcm-3v2w-8362 and release tags v12.68.0 / v13.27.0. If an immediate upgrade is not possible, remove or disable JSON:API resource endpoints that accept client-supplied 'include' parameters, or validate and whitelist include segments against the resource's declared relationship names, rejecting any dot-segment that is not a known relationship (trade-off: legitimate deep includes must be enumerated and may break existing clients). Additional compensating controls worth applying: grant the application's database user only the privileges it needs and revoke TRUNCATE/DROP on business-critical tables (trade-off: schema migrations then require a separate elevated credential), place restrictive rate limits and request-size caps on include-heavy read endpoints to reduce automated abuse, enable audit logging or binlog retention so destructive statements are detectable and data recoverable (trade-off: storage overhead), and treat any user with read access to such endpoints as a potential data-integrity actor until patched. Maintaining tested backups remains the only reliable recovery path for the irreversible truncation this flaw enables.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Laravel's JSON:API resource layer (the ResolvesJsonApiElements trait behind JsonApiResource) parses the client-supplied 'include' query parameter into nested relationship paths and passes the trailing segments into Eloquent relationship loading. Prior to the fix, nested includes were not validated against the resource's declared relationships: the resolver split strings such as 'comments.truncate' or 'posts.comments.truncate' and forwarded the remainder to the model/query builder, so a segment naming a real model method instead of a relationship caused that method to execute server-side. This is the classic CWE-470 pattern - externally controlled input selecting which code/method is invoked - and in this case the invoked method can be a destructive one such as truncate, producing irreversible data loss on tables reachable through the relationship path. The patch (PR #61322, commit 50a7970, with a companion change in PR #61323 / commit b89f294) introduces a requestedRelationships property and a requestedResourceRelationships() helper that filters nested include segments so only segments matching genuine resource relationships are compiled, and the accompanying regression tests (testItIgnoresNestedIncludesThatAreNotResourceRelationships and its deeply-nested variant) assert that include=comments.truncate no longer deletes rows.
Know when Laravel gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Read-only endpoint reachable by a low-privilege read user (PR:L), network/low-complexity; truncating a related table causes high integrity and availability loss with no confidentiality impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Laravel is a web application framework. From 12.45.0 until 12.68.0 and 13.27.0, crafted relationship inclusion on a read-only endpoint can trigger a destructive database operation on a related table instead of retrieving data. A user with read access but no write permission can empty related-table data, causing irreversible data loss, denial of service, and loss of data integrity. This issue is fixed in versions 12.68.0 and 13.27.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
In Laravel framework through 5.5.21, remote attackers can obtain sensitive information (such as externally usable passwo
Laravel Livewire v3 through v3.6.3 contains a critical remote code execution vulnerability (CVE-2025-54068, CVSS 9.8) th
LaRecipe versions prior to 2.8.1 contain a Server-Side Template Injection (SSTI) vulnerability that can lead to Remote C
File upload bypass in FreeScout 1.8.206 — patch bypass for CVE-2026-27636. PoC and patch available. CVSS 10.0.
Remote code execution in FreeScout prior to version 1.8.206 allows authenticated users to upload `.htaccess` files that
In Laravel Framework through 5.5.40 and 5.6.x through 5.6.29, remote code execution might occur as a result of an unseri
Dokans SaaS e-commerce platform v3.9.2 has a CVSS 10.0 authentication bypass allowing unauthenticated attackers to obtai
Predictable password reset tokens in FreeScout help desk before 1.8.206. Weak random number generation allows attackers
Bagisto eCommerce platform before 2.3.10 is vulnerable to server-side template injection (SSTI) through customer address
Bagisto eCommerce platform (2.3 branch before 2.3.10) leaves installation API routes active after setup, allowing unauth
A vulnerability was found in laravel 5.1 and classified as problematic. Rated critical severity (CVSS 9.8), this vulnera
Laravel TokenGuard authentication bypass is a genuine high-priority issue, not an inflated CVSS score: unauthenticated a
EUVD-2026-107582
GHSA-5wcm-3v2w-8362
NVD
CVE.org
EPSS
Exploit-DB