Skip to main content

Filament CVE-2026-104181

| EUVDEUVD-2026-91055 MEDIUM
Missing Authentication for Critical Function (CWE-306)
2026-10-01 GitHub_M GHSA-7m6h-rg42-m449
5.4
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Obtain authenticated user session
  2. Delivery
    Open app-MFA management action
  3. Exploit
    Submit existing app/recovery code (no password)
  4. Execution
    Disable or reconfigure MFA and harvest recovery codes
  5. Impact
    Lock out legitimate user / weaken account MFA

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

Requires an already-authenticated Filament user session - the attacker must have hijacked a session cookie, be using an unlocked/shared authenticated browser, or be a malicious insider; there is no path to unauthenticated sign-in via this flaw. The attacker must also be able to supply an existing valid app TOTP code or an existing recovery code to complete the MFA management action. Scope is limited to APP-based MFA management (set-up, disable, regenerate recovery codes) in Filament 4.0.0 through < 4.13.3 and the 5.x line before 5.8.3; email-based MFA is explicitly NOT affected. The principal limiting factor is the required authenticated session, which bounds real-world impact to account-takeover-amplification and victim lockout rather than initial access.

Impact

This is a genuinely moderate-risk issue that correctly lands in the medium band rather than being inflated by a high headline number. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L, base 5.4) is internally consistent with the description: PR:L reflects the hard prerequisite that the attacker already holds an authenticated user session, and the impact is limited to Integrity (altering MFA configuration) and Availability (locking the legitimate user out), with no confidentiality breach (C:N). CWE-306 (Missing Authentication for Critical Function) accurately captures the root cause - the app-MFA management actions do not re-verify the current password. No EPSS score was provided, there is no CISA KEV listing, and no public exploit code was supplied - only the vendor patch (PR #20522) and advisory, so exploitation status is 'no public exploit identified at time of analysis.' The absence of KEV/EPSS signals combined with the mandatory pre-existing authenticated session strongly indicates this is a defense-in-depth / step-up-authentication weakness rather than an internet-facing mass-exploitation threat. One nuance to verify: the EUVD affected-version ranges (< 5.8.2 and < 4.13.2) are off-by-one from the description's stated fixed versions (5.8.3 and 4.13.3) - treat 4.13.3 and 5.8.3 as the confirmed patched releases.

Exploit ScenarioDerived

An attacker who has obtained a victim's authenticated Filament session (for example via a hijacked/stolen session cookie, an unlocked shared workstation, or a malicious insider) navigates to the app-based MFA management actions. Because the current password is not consistently required, the attacker supplies an existing app code or recovery code to disable or reconfigure app-MFA, harvest recovery codes, or regenerate them - all without knowing the account password, potentially locking the legitimate user out. No public proof-of-concept was provided; the vendor fix (PR #20522) adds the missing current-password field to the set-up, disable, and regenerate-recovery-codes forms.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 01, 2026

Missing current-password confirmation in Filament's app-based multi-factor authentication management actions (set-up, disable, regenerate recovery codes) allows an attacker who already holds an authenticated user session to enroll a new TOTP authenticator and harvest fresh recovery codes, or to disable existing app-based MFA and regenerate its recovery codes, by supplying only an existing valid app code or recovery code. The flaw affects Filament 4.0.0 through <4.13.3 and the 5.x line before 5.8.3, carrying a CVSS 3.1 score of 5.4 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L) - the required authenticated session, per the independent assessment, is the limiting factor, and there is no path to unauthenticated sign-in through this issue. There is no public exploit identified at time of analysis and no CISA KEV listing; vendor-released patches exist in 4.13.3 and 5.8.3.

RemediationAI

Upgrade Filament to the vendor-released patched versions: 4.13.3 for the 4.x line or 5.8.3 for the 5.x line - release artifacts are at https://github.com/filamentphp/filament/releases/tag/v4.13.3 and https://github.com/filamentphp/filament/releases/tag/v5.8.3, and the full advisory, including the fix rationale, is at https://github.com/filamentphp/filament/security/advisories/GHSA-7m6h-rg42-m449 (upstream change: PR https://github.com/filamentphp/filament/pull/20522, commit 6d4dae6d7a94ce5aefd7ed4dc836acb0e6b71bb1). Because the fix adds a mandatory current-password confirmation to the set-up, disable, and regenerate-recovery-codes actions, upgrading is the only complete remediation; there is no configuration toggle that restores the password check on unpatched code. In the interim, reduce exposure by shortening session lifetimes and enforcing re-authentication on sensitive panels, requiring MFA re-verification for MFA management where a custom guard can be added, monitoring audit logs for unexpected app-MFA enrollment, disablement, or recovery-code regeneration events, and rotating recovery codes for high-value accounts - noting that these are compensating controls only, that custom step-up logic carries implementation risk, and that shortening sessions may increase support burden. Organizational controls such as limiting use of shared or unlocked workstations and prompt session invalidation after suspected compromise address the session-hijack prerequisite this flaw depends on.

Affected VersionsENISA

filament 5.0.0, < 5.8.2
filament 4.0.0, < 4.13.2

Affected Packages

composer filament/filament fix: 4.13.3, 5.8.3
euvd filament_4_0_0 fix: 4.13.2
euvd filament_5_0_0 fix: 5.8.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 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

Filament is a collection of full-stack components for building Laravel admin panels and applications, and it ships an optional multi-factor authentication layer that supports both email-based codes and app-based (TOTP) authenticators with recovery codes. The vulnerability class is CWE-306 (Missing Authentication for Critical Function): the security-sensitive MFA management endpoints did not consistently enforce step-up re-authentication - that is, the current account password - before performing privileged MFA state changes. Specifically, the set-up action could be used to bind a new authenticator app and mint a set of recovery codes, while the disable and regenerate-recovery-codes actions could be driven using an existing app code or recovery code alone rather than the account password. The upstream fix (PR 20522 and commit 6d4dae6d) adds an explicit current-password form field to the affected actions, as evidenced by the newly introduced 'password' label and validation_attribute strings appearing in the set-up, disable, and regenerate-recovery-codes translation files across many locales. The affected code lives in the packages/panels component; email-based MFA is explicitly out of scope of this flaw, since its challenge flow already requires the emailed code and was not the vector changed.

Know when Filament 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 5.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
vuln.today AI 5.4 MEDIUM

Attacker needs an existing authenticated session (PR:L) over the network (AV:N) with no user interaction; impact is altering MFA config (I:L) and locking the user out (A:L), with no data disclosure (C:N).

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
Low

Lifecycle Timeline

1
Patch available
Oct 01, 2026 - 21:17 EUVD

DescriptionCVE.org

Filament is a collection of full-stack components for accelerated Laravel development. From 4.0.0 until 4.13.3 and 5.8.3, app-based multi-factor authentication management actions do not consistently require confirmation of the current password. An attacker with access to an authenticated user session can set up app-based MFA and obtain recovery codes, or disable app-based MFA and regenerate recovery codes by supplying an existing app code or recovery code, without knowing the account password. Email-based MFA is not affected, and the issue does not independently permit an unauthenticated sign-in, but changing the app-MFA configuration may lock the legitimate user out. This issue is fixed in versions 4.13.3 and 5.8.3.

Threat Intelligence Overview

EPSS Score
0.3%
Top 75% exploitable
Prevalence
Medium
popular Laravel admin-panel framework, common but confined to PHP/Laravel stacks
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

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 MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

47
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +27
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.

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