Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-24895: CWE-180: Incorrect Behavior Order: Validate Before Canonicalize in php frankenphp

0
High
VulnerabilityCVE-2026-24895cvecve-2026-24895cwe-180
Published: Thu Feb 12 2026 (02/12/2026, 19:16:06 UTC)
Source: CVE Database V5
Vendor/Project: php
Product: frankenphp

Description

FrankenPHP is a modern application server for PHP. Prior to 1.11.2, FrankenPHP’s CGI path splitting logic improperly handles Unicode characters during case conversion. The logic computes the split index (for finding .php) on a lowercased copy of the request path but applies that byte index to the original path. Because strings.ToLower() in Go can increase the byte length of certain UTF-8 characters (e.g., Ⱥ expands when lowercased), the computed index may not align with the correct position in the original string. This results in an incorrect SCRIPT_NAME and SCRIPT_FILENAME, potentially causing FrankenPHP to execute a file other than the one intended by the URI. This vulnerability is fixed in 1.11.2.

AI-Powered Analysis

AILast updated: 02/12/2026, 19:48:36 UTC

Technical Analysis

CVE-2026-24895 affects FrankenPHP, a modern PHP application server, due to an incorrect behavior order vulnerability classified under CWE-180: Validate Before Canonicalize. The flaw arises in the CGI path splitting logic where the server attempts to locate the '.php' extension by computing the split index on a lowercased version of the request path. However, the lowercasing operation in Go can increase the byte length of certain Unicode characters (for example, the character Ⱥ expands when lowercased), causing the computed index to be misaligned when applied to the original, unmodified path string. This misalignment leads to incorrect assignment of SCRIPT_NAME and SCRIPT_FILENAME environment variables, which are critical in determining which PHP script is executed. As a result, FrankenPHP may execute a file different from the one intended by the URI, potentially allowing attackers to execute arbitrary files or scripts. The vulnerability does not require authentication or user interaction, making it remotely exploitable over the network. The issue was addressed and fixed in FrankenPHP version 1.11.2. The CVSS 4.0 vector indicates network attack vector, low attack complexity, no privileges or user interaction required, and high impact on confidentiality, integrity, and availability. No known exploits are currently reported in the wild, but the high severity score and nature of the flaw warrant immediate attention.

Potential Impact

For European organizations, this vulnerability poses a significant risk to web applications running on FrankenPHP versions prior to 1.11.2. Exploitation can lead to unauthorized execution of arbitrary files, potentially resulting in data breaches, unauthorized access, defacement, or service disruption. Confidentiality is at risk as attackers may access sensitive data by executing unintended scripts. Integrity can be compromised through unauthorized code execution or modification of application behavior. Availability may be affected if critical scripts are bypassed or replaced, causing denial of service. Given the vulnerability requires no authentication or user interaction, attackers can exploit it remotely, increasing the threat surface. Organizations relying on FrankenPHP for public-facing web services or internal applications must consider this vulnerability critical. The absence of known exploits in the wild provides a window for proactive mitigation, but the high CVSS score underscores the urgency. Failure to patch may lead to targeted attacks, especially in sectors with high-value data or critical infrastructure.

Mitigation Recommendations

1. Upgrade FrankenPHP to version 1.11.2 or later immediately to apply the official fix addressing the Unicode path handling flaw. 2. Conduct a thorough audit of web server configurations to ensure no legacy or fallback mechanisms allow execution of unintended files. 3. Implement strict input validation and normalization on URI paths before processing to detect and block suspicious Unicode or malformed requests. 4. Deploy Web Application Firewalls (WAFs) with custom rules to detect anomalous path requests that may exploit this vulnerability. 5. Monitor server logs for irregular SCRIPT_NAME or SCRIPT_FILENAME assignments and unexpected script executions, enabling early detection of exploitation attempts. 6. Isolate critical web applications in segmented network zones to limit lateral movement if exploitation occurs. 7. Educate development and operations teams about the risks of improper canonicalization and encourage secure coding practices for handling Unicode inputs. 8. Maintain an incident response plan tailored to web server compromises to respond swiftly if exploitation is detected.

Need more detailed analysis?Upgrade to Pro Console

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-01-27T19:35:20.529Z
Cvss Version
4.0
State
PUBLISHED

Threat ID: 698e2b39c9e1ff5ad806e180

Added to database: 2/12/2026, 7:34:17 PM

Last enriched: 2/12/2026, 7:48:36 PM

Last updated: 2/20/2026, 9:19:56 PM

Views: 91

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats