<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Maria Wasti </title>
    <description>The latest articles on DEV Community by Maria Wasti  (@m_w2000).</description>
    <link>https://dev.to/m_w2000</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4198216%2Ff3ef28d9-524f-4f1e-9119-0ca092b79149.jpg</url>
      <title>DEV Community: Maria Wasti </title>
      <link>https://dev.to/m_w2000</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/m_w2000"/>
    <language>en</language>
    <item>
      <title>Critical PHP Security Alert: Two RCE Vulnerabilities Require Immediate Patching</title>
      <dc:creator>Maria Wasti </dc:creator>
      <pubDate>Fri, 23 Oct 2026 07:24:12 +0000</pubDate>
      <link>https://dev.to/m_w2000/urgent-security-advisory-critical-remote-code-execution-rce-vulnerabilities-threaten-global-php-kof</link>
      <guid>https://dev.to/m_w2000/urgent-security-advisory-critical-remote-code-execution-rce-vulnerabilities-threaten-global-php-kof</guid>
      <description>&lt;p&gt;On October 21, 2026, the PHP development team released security updates addressing two critical vulnerabilities that could allow unauthenticated attackers to execute arbitrary code on vulnerable servers.&lt;/p&gt;

&lt;p&gt;The vulnerabilities, &lt;strong&gt;CVE-2026-109618&lt;/strong&gt; and &lt;strong&gt;CVE-2026-109619&lt;/strong&gt;, both carry a CVSS score of 9.2. They affect PHP's core request-handling and memory-management behavior, making this an important security update for teams running PHP-powered applications.&lt;/p&gt;

&lt;p&gt;If you manage PHP-FPM, Apache with mod_php, PHP-CGI, FrankenPHP, or another PHP runtime, verify your environment and apply the appropriate vendor-supported security updates as soon as possible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Official references:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.php.net/archive/2026.php#2026-10-21-5" rel="noopener noreferrer"&gt;PHP security announcement&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.php.net/releases/8_5_12.php" rel="noopener noreferrer"&gt;PHP 8.5.12 release announcement&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Understanding the Two Vulnerabilities
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. CVE-2026-109618: Remote Code Execution Through Memory Corruption
&lt;/h3&gt;

&lt;p&gt;This vulnerability involves PHP's handling of out-of-memory (OOM) conditions during request processing.&lt;/p&gt;

&lt;p&gt;When an OOM error interrupts request parsing, some internal request structures may remain partially initialized. Cleanup routines can then encounter invalid or unexpected memory references.&lt;/p&gt;

&lt;p&gt;Under the right conditions, an attacker may exploit this behavior to achieve remote code execution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why it matters:&lt;/strong&gt; Applications exposed to untrusted HTTP requests may be at risk even when their application-level authentication and authorization controls are correctly configured.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. CVE-2026-109619: Remote Code Execution Through Stale Global State
&lt;/h3&gt;

&lt;p&gt;The second vulnerability concerns request-owned internal state that can persist after its backing memory has been released.&lt;/p&gt;

&lt;p&gt;In affected worker-based environments, a subsequent request may encounter stale state before normal initialization resets it.&lt;/p&gt;

&lt;p&gt;This creates an opportunity for memory corruption and potentially remote code execution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why it matters:&lt;/strong&gt; Long-running PHP workers make runtime-level security particularly important. Application code alone cannot reliably compensate for a vulnerable PHP interpreter.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which PHP Versions Should You Update?
&lt;/h2&gt;

&lt;p&gt;The PHP project published security fixes for these release branches:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;PHP branch&lt;/th&gt;
&lt;th&gt;Fixed version&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;PHP 8.5&lt;/td&gt;
&lt;td&gt;8.5.12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PHP 8.4&lt;/td&gt;
&lt;td&gt;8.4.27&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PHP 8.3&lt;/td&gt;
&lt;td&gt;8.3.36&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PHP 8.2&lt;/td&gt;
&lt;td&gt;8.2.35&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;PHP 8.1 and older are no longer supported by the upstream PHP project. Some operating-system vendors may provide backported security fixes, so check your vendor's advisory before deciding whether an installation is protected.&lt;/p&gt;

&lt;p&gt;These are the upstream fixed versions. Confirm the security status of your actual installed package with your distribution or hosting provider.&lt;/p&gt;

&lt;h2&gt;
  
  
  Practical Remediation Checklist
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Check the PHP Runtime Serving Your Application
&lt;/h3&gt;

&lt;p&gt;Start with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;php &lt;span class="nt"&gt;-v&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Remember that this reports the CLI version, which may differ from the version serving web requests.&lt;/p&gt;

&lt;p&gt;For PHP-FPM on Linux, inspect the running process:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pgrep &lt;span class="nt"&gt;-a&lt;/span&gt; php-fpm
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can also inspect a specific process executable:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;readlink&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt; /proc/&amp;lt;PID&amp;gt;/exe
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Replace &lt;code&gt;&amp;lt;PID&amp;gt;&lt;/code&gt; with the process ID of the relevant PHP-FPM process.&lt;/p&gt;

&lt;p&gt;Check your web server configuration, container image, hosting environment, and package source to identify the runtime actually handling requests.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Apply the Appropriate Security Update
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Ubuntu or Debian&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Update package metadata and identify the PHP packages supplied by your configured repositories:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update
apt list &lt;span class="nt"&gt;--upgradable&lt;/span&gt; 2&amp;gt;/dev/null | &lt;span class="nb"&gt;grep &lt;/span&gt;php
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Upgrade the relevant packages using your distribution's security guidance. Package names and available fixed versions vary by release and repository.&lt;/p&gt;

&lt;p&gt;After upgrading, restart the relevant PHP-FPM service if required and verify that the running workers use the updated runtime.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Docker deployments&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Review your Dockerfile and update the PHP base image to a verified fixed release appropriate for your application.&lt;/p&gt;

&lt;p&gt;For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="s"&gt; php:8.3.36-fpm&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then rebuild and recreate the affected containers:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker compose build &lt;span class="nt"&gt;--pull&lt;/span&gt;
docker compose up &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--force-recreate&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Test the application before completing the rollout, and verify the version inside the running container.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Verify and Monitor
&lt;/h3&gt;

&lt;p&gt;After patching:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Confirm the running PHP runtime or package contains the appropriate security fix.&lt;/li&gt;
&lt;li&gt;Check application logs for startup errors and unexpected behavior.&lt;/li&gt;
&lt;li&gt;Test critical application routes and background workers.&lt;/li&gt;
&lt;li&gt;Review exposed services and investigate suspicious activity where appropriate.&lt;/li&gt;
&lt;li&gt;Document the affected systems, patch status, and verification results.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A Web Application Firewall may provide additional defensive controls, but it should not be treated as a substitute for applying the security update.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This advisory is a reminder that application security depends on more than application code. Runtime versions, operating-system packages, container images, and long-running worker processes all need regular maintenance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The priority is straightforward: identify exposed PHP runtimes, apply the correct security fixes, and verify that the updated versions are actually running.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For teams maintaining PHP applications, a repeatable patching and verification process can help reduce the risk of leaving critical vulnerabilities unaddressed.&lt;/p&gt;

&lt;p&gt;If you're working on improving your application's security, performance, or underlying architecture, explore &lt;a href="https://scriptbaker.com/" rel="noopener noreferrer"&gt;SCRIPTBAKER&lt;/a&gt; to learn more about its web development and software engineering services.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>php</category>
    </item>
  </channel>
</rss>
