Vulnerability · Published Jun 10, 2026 · Assigned by GitHub_M

CVE-2026-45062FrankenPHP: Unsafe Unicode Handling in CGI Path Splitting Allows Execution of Non-PHP Files

High 8.1

In plain English

A high-severity improper input validation in frankenphp from php. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 54% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)8.1High
Exploit odds (30 days)0.7%top 46.1% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

FrankenPHP is a modern application server for PHP. From version 1.11.2 to before version 1.12.3, the splitPos() function in cgi.go misuses golang.org/x/text/search with search.IgnoreCase when the request path contains a non-ASCII byte. Two distinct flaws in that fallback let an attacker mislead FrankenPHP into treating a non-.php file as a .php script. In any deployment where the attacker can place content into a file served by FrankenPHP (uploads, file storage, etc.), this can be escalated to remote code execution by crafting a URL whose path triggers either flaw. This issue has been patched in version 1.12.3.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Gogithub.com/dunglas/frankenphp1.12.3GHSA-3g8v-8r37-cgjm
Gogithub.com/dunglas/frankenphp1.12.3GO-2026-5084

Affected products (as reported)

VendorProductVersions
php frankenphp >= 1.11.2, < 1.12.3

Weakness: CWE-20, CWE-176, CWE-178 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

References