Skip to main content

Laravel Framework EUVDEUVD-2026-107583

| CVE-2026-114509 CRITICAL
Improper Authentication (CWE-287)
2026-10-21 GitHub_M GHSA-f9x3-7vq9-cph6
9.2
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify TokenGuard-protected API route
  2. Delivery
    Submit array-typed api_token credential
  3. Exploit
    Trigger MySQL/MariaDB type-juggling user match
  4. Execution
    Bypass authentication as unintended user
  5. Impact
    Take over victim account

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication mechanism validation
MITRE ATT&CK

2 techniques across 2 tactics: Defense Evasion, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitable only when the application uses Laravel's TokenGuard as a standard token-based API guard to protect one or more routes AND runs on a MySQL or MariaDB backend whose loose/implicit type comparison allows a non-string (array) credential to match an existing user row. Limiting factors: the vulnerable TokenGuard must be the active auth guard (apps using Sanctum/Passport or non-affected comparison behavior are not affected), the backing database must exhibit the MySQL/MariaDB coercion behavior (the vendor's AT:P reflects this non-default/environment-specific requirement), and the installed framework version must be below 12.68.0 or 13.29.0. No valid token, credentials, or user interaction are required once these conditions hold.

Impact

This is a genuine high-priority issue, not an inflated CVSS score. CWE-287 authentication bypass with the vendor's CVSS 4.0 vector AV:N/AC:L/AT:P/PR:N/UI:N and full C:H/I:H/A:H (score 9.2) indicates a network-reachable, unauthenticated flaw yielding complete account takeover. The AT:P (attack requirements present) flag is the critical nuance and is corroborated by the description: exploitation depends on a non-attacker-controlled deployment state - TokenGuard used as the standard token-based API guard AND a MySQL/MariaDB backend whose loose type comparison lets a non-string (array) credential coerce-match an existing user. No EPSS score, no CISA KEV entry, and no public exploit were provided, so there is no evidence of active exploitation; however, the public fix commits disclose the exact root cause (missing is_string() checks), which lowers the barrier to building a working exploit. Net: real risk for any Laravel app meeting the TokenGuard+MySQL/MariaDB preconditions, tempered by those preconditions rather than being universally exploitable. The one signal to verify is the breadth of real-world TokenGuard usage, since many Laravel API apps use Sanctum/Passport instead of the legacy TokenGuard.

Exploit ScenarioDerived

An attacker targets a Laravel application exposing API routes protected by TokenGuard on a MySQL/MariaDB backend. They send an unauthenticated request supplying the token credential as an array (e.g. api_token[]=0) instead of a string; the database's loose comparison matches an existing user row, and the attacker is authenticated as that account with no valid token. No public exploit was provided, but the fix commits publicly reveal the exact mechanism, making a PoC straightforward to construct.

Act Now Prioritize within 24-48h. Why: CRITICAL severity + public POC available.
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 21, 2026

Laravel TokenGuard authentication bypass is a genuine high-priority issue, not an inflated CVSS score: unauthenticated attackers can send a crafted non-string credential, such as an array-valued api_token, to routes protected by TokenGuard and, under affected MySQL or MariaDB configurations, be matched to an unintended existing user, enabling account takeover. The flaw affects Laravel Framework before 12.68.0 and 13.x before 13.29.0 and requires the vulnerable guard plus database type-coercion behavior; no public exploit was identified at time of analysis, and vendor-released fixes are available in 12.68.0 and 13.29.0.

RemediationAI

Vendor-released patch: Laravel Framework 12.68.0 and 13.29.0. Upgrade to the appropriate fixed release, or apply the upstream commits 8dbb08bccac1be095dba4a9d259a419620f1e8a5 and 9b21ce0a9bb2b2599978bc0b0df4abea952ad31c if maintaining a fork; see the GitHub advisory at https://github.com/laravel/framework/security/advisories/GHSA-f9x3-7vq9-cph6 and release pages at https://github.com/laravel/framework/releases/tag/v12.68.0 and https://github.com/laravel/framework/releases/tag/v13.29.0. If immediate upgrade is not possible, add request validation or middleware that rejects non-string token parameters before TokenGuard executes, covering every TokenGuard-protected route; the trade-off is application code changes and the need to verify all entry points, and database strict-mode changes should not be treated as a sole fix. Switching the affected routes to Sanctum or Passport removes exposure to this TokenGuard flaw but requires a larger authentication migration; disabling or restricting TokenGuard-protected routes until patched is a last-resort compensating control with service-impact trade-offs.

Affected VersionsENISA

framework 13.0.0, < 13.29.0
framework < 12.68.0

Affected Packages

composer laravel/framework fix: 12.68.0, 13.29.0
euvd framework fix: 12.68.0, 13.29.0

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

The issue is in Illuminate\Auth\TokenGuard, Laravel's standard token-based API guard. Before the fix, user() and getTokenForRequest() only checked whether the token was non-empty, not whether it was a string; a request such as api_token[]=0 therefore passed a non-string value into the credential lookup. On MySQL or MariaDB backends whose loose or implicit type comparison coerces that value, retrieveByCredentials can match an unintended existing user row, which is an improper-authentication weakness (CWE-287). The upstream commit 8dbb08bccac1be095dba4a9d259a419620f1e8a5 adds is_string checks in both locations and tests that a non-string token is rejected and the user provider is not called. The supplied CVSS 4.0 vector rates 9.2 with AT:P, while the independent CVSS 3.1 assessment is AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H; both reflect that exploitation depends on the TokenGuard and MySQL/MariaDB coercion configuration rather than being universally exploitable.

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

Vendor (GitHub_M) PRIMARY 9.2 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

Network-reachable and unauthenticated (AV:N/PR:N/UI:N), but success depends on TokenGuard plus MySQL/MariaDB coercion beyond attacker control (AC:H); account takeover yields full C/I/A impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 21, 2026 - 23:48 EUVD
CVE Published
Oct 21, 2026 - 21:49 cve.org
CRITICAL 9.2

DescriptionCVE.org

Laravel is a web application framework. Prior to 12.68.0 and 13.29.0, TokenGuard configured as a standard token-based API guard does not reject a crafted non-string credential. Under affected MySQL or MariaDB configurations, the authentication lookup can match an unintended existing user, allowing an unauthenticated attacker to bypass authentication and take over an account on routes protected by TokenGuard. This issue is fixed in versions 12.68.0 and 13.29.0.

Technical POC Analysis

The bug class is CWE-287 Improper Authentication.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Laravel Framework TokenGuard contains a critical authentication bypass (CVE-2026-114509) that can enable account takeover in applications using TokenGuard with MySQL or MariaDB. Organizations running affected versions-before 12.68.0 and 13.x before 13.29.0-face potential unauthorized access to sensitive data and systems, making immediate remediation a leadership priority. No public exploit was identified at time of analysis, but the severity and account-takeover potential warrant urgent action.

Business Impact: Severe
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 67% exploitable
Prevalence
High
one of the most widely deployed PHP web application frameworks
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC Yes
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity + public POC available
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Out-of-Cycle
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
Very High

Priority Score

66
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2017-16894 HIGH POC
7.5 Nov 20

In Laravel framework through 5.5.21, remote attackers can obtain sensitive information (such as externally usable passwo

CVE-2025-54068 CRITICAL POC
9.8 Jul 17

Laravel Livewire v3 through v3.6.3 contains a critical remote code execution vulnerability (CVE-2025-54068, CVSS 9.8) th

CVE-2025-53833 CRITICAL POC
10.0 Jul 14

LaRecipe versions prior to 2.8.1 contain a Server-Side Template Injection (SSTI) vulnerability that can lead to Remote C

CVE-2026-28289 CRITICAL POC
10.0 Mar 03

File upload bypass in FreeScout 1.8.206 — patch bypass for CVE-2026-27636. PoC and patch available. CVSS 10.0.

CVE-2026-27636 HIGH POC
8.8 Feb 25

Remote code execution in FreeScout prior to version 1.8.206 allows authenticated users to upload `.htaccess` files that

CVE-2018-15133 HIGH POC
8.1 Aug 09

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

CVE-2025-70841 CRITICAL POC
10.0 Feb 03

Dokans SaaS e-commerce platform v3.9.2 has a CVSS 10.0 authentication bypass allowing unauthenticated attackers to obtai

CVE-2026-27637 CRITICAL POC
9.8 Feb 25

Predictable password reset tokens in FreeScout help desk before 1.8.206. Weak random number generation allows attackers

CVE-2026-21448 CRITICAL POC
9.8 Jan 02

Bagisto eCommerce platform before 2.3.10 is vulnerable to server-side template injection (SSTI) through customer address

CVE-2026-21446 CRITICAL POC
9.8 Jan 02

Bagisto eCommerce platform (2.3 branch before 2.3.10) leaves installation API routes active after setup, allowing unauth

CVE-2022-2870 CRITICAL POC
9.8 Aug 17

A vulnerability was found in laravel 5.1 and classified as problematic. Rated critical severity (CVSS 9.8), this vulnera

CVE-2026-108963 HIGH POC
8.8 Oct 11

Databasement instances before 1.8.2 allow an authenticated user to achieve remote code execution by injecting path-redir

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy