Two Unpatched PHP Security Flaws With a 9.2 Severity Score Just Put Millions of Servers at Immediate Risk

TL;DR: Security researchers just discovered two critical unpatched remote code execution vulnerabilities in PHP with a CVSS score of 9.2. Dubbed PHP2Shell, these flaws affect virtually every web server running PHP which is roughly 77% of all websites with a known server-side language. No patches are available yet, and attackers are already scanning for vulnerable systems.


If your website runs on PHP, stop what you're doing and read this. Two zero-day vulnerabilities were just disclosed that let attackers run arbitrary code on your server without authentication. That means full compromise. Root access. Game over.

Researchers are calling this PHP2Shell because the attack chain essentially turns a vulnerable PHP installation into a remote shell for anyone who knows the exploit. And the worst part? Both vulnerabilities are unpatched as of today.

What the Vulnerabilities Actually Do

Both flaws sit in core PHP request handling the code that processes incoming HTTP requests before your application even sees them. The first vulnerability involves a deserialization bug in how PHP handles certain multipart form data, allowing attackers to inject and execute serialized PHP objects. The second is a path traversal issue in the file inclusion mechanism that bypasses most common security filters. Chain them together and you get a full unauthenticated remote code execution exploit that works on default PHP configurations.

The severity score is 9.2 out of 10 on the CVSS scale. For context, 10.0 is reserved for things like worms that spread automatically across the internet. This is one step below that.

How Many Servers Are Affected

PHP runs on approximately 77% of all websites that use a known server-side language. We are talking WordPress sites, Laravel applications, e-commerce platforms, legacy enterprise applications, government portals, and everything in between. If you host anything PHP-based, you're in the affected pool until a patch ships.

The good news, if you can call it that, is that exploitation requires some specific conditions. The attacker needs to reach your PHP application over the network, which is normal for any web server, and the server needs file uploads enabled or certain PHP modules active. Most production web servers meet at least one of those criteria.

What You Should Do Right Now

There are no patches yet, so your options are mitigation-focused. First, check with your hosting provider. Many have already pushed WAF (Web Application Firewall) rules that block known exploit patterns for these CVEs. If you're self-hosting, deploying a WAF like Cloudflare or AWS Shield can buy you significant protection until official patches land.

Second, review your PHP configuration. Disable file uploads if your application does not need them. Review your allowed file types and upload directories. Make sure you're running PHP with the principle of least privilege your web server process should not have write access to your application code directories.

Third, monitor your server logs aggressively. The exploit patterns generate distinctive request signatures unusual multipart boundary strings and encoded path components. Any decent SIEM or even grep through your access logs should surface active scanning attempts.

Why This Is Different From Most PHP Vulnerabilities

PHP has a long history of security issues, and the community has gotten pretty good at patching them quickly. What makes PHP2Shell different is the combination of factors: it's in the core runtime (not a popular library), it's pre-authentication (no login required), and there are active scans happening right now while the patches are being written.

The PHP security team was notified and has confirmed both vulnerabilities. They've committed to emergency patches but haven't given a ship date. In the meantime, the proof-of-concept code is circulating in private security channels, which means the window between disclosure and widespread exploitation is shrinking fast.

The Bigger Picture

This is a reminder that the web's infrastructure is older and more fragile than most people realize. PHP was created in 1994 and powers a huge percentage of the internet through inertia as much as choice. When core vulnerabilities in a language runtime this widely deployed get discovered and disclosed responsibly, the patching window is measured in days, not weeks. Everyone who relies on that infrastructure is on the clock.

For most developers and small site owners, the practical answer is to rely on your infrastructure provider's WAF and keep monitoring the PHP project's security advisories for the patch announcement. For larger operators running your own PHP infrastructure, treat this as a P0 incident until patches are available and deployed.

What's your experience? Drop a comment below!

Are you running PHP in production right now? What steps are you taking while waiting for the official patches - WAF rules, configuration hardening, or something else entirely?


#PHP #Cybersecurity #WebSecurity #ZeroDay #RCE #PHPSEST_CONTENT_123

Comments

Popular posts from this blog

Plank You App Support and Privacy

WWDC 2026 Preview: Apple Needs to Fix Siri or It's Game Over for Apple Intelligence

This AI Startup Is Worth $26 Billion and Writes 90% of Its Own Code — Should Software Engineers Be Worried?