{"id":21942,"date":"2026-10-23T11:43:13","date_gmt":"2026-10-23T09:43:13","guid":{"rendered":"https:\/\/webhosting.de\/?p=21942"},"modified":"2026-10-23T11:43:17","modified_gmt":"2026-10-23T09:43:17","slug":"php-security-vulnerability-2026-check-patch","status":"publish","type":"post","link":"https:\/\/webhosting.de\/en\/php-sicherheitsluecke-2026-pruefen-patchen\/","title":{"rendered":"PHP Vulnerability 2026: How to Check and Patch Vulnerable Web Services"},"content":{"rendered":"<div class=\"wh-article\" data-wh-layout=\"2.1.2\" style=\"width:100%;max-width:820px;margin:0 auto;color:#263b4b;font-family:inherit;font-size:18px;line-height:1.8;text-align:start;overflow-wrap:break-word;box-sizing:border-box\"><p class=\"wh-lead\" style=\"font-size:20px;line-height:1.7;color:#233746;margin:0 0 1.1em\">No, it\u2019s not \u201ehalf the Internet\u201c that\u2019s demonstrably affected. However, unpatched PHP web services may be vulnerable to two critical vulnerabilities that can be exploited without prior authentication. Therefore, first check the <strong style=\"font-weight:700;color:inherit\">actual web runtime<\/strong> Instead of just running PHP in the shell, install the released security fix and restart the affected workers in a controlled manner. This is especially important for publicly accessible services, mod_php, as well as containers and products with embedded PHP. <\/p>\n<nav class=\"wh-toc\" aria-label=\"Contents of this article\" style=\"display:block;margin:28px 0 38px;padding:22px;border:1px solid #d9e4e8;border-radius:14px;background:#f4f8f8\"><p class=\"wh-toc-title\" style=\"font-size:13px;font-weight:700;letter-spacing:.08em;color:#49656b;margin:0 0 14px\">Go directly to the section<\/p><div class=\"wh-toc-grid\" style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px\"><div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#alarmmeldung-richtig-einordnen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Interpreting the Alarm Message Correctly<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#rce-und-betroffene-php-wege\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">What the PHP vulnerabilities technically make possible<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#risiko-haengt-vom-betrieb-ab\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Why Not Every Installation Is Equally at Risk<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#patchstaende-und-supportstatus\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Compare secure patch levels and support status<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#web-laufzeit-zuverlaessig-pruefen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Check the actual web runtime<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#updatewege-nach-betriebsart\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Plan Update Paths by Operating Mode<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#sofortmassnahmen-und-neustarts\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Immediate Measures Without a False Sense of Security<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#betrieb-pruefen-und-auffaelligkeiten\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">After the patch, check system operation and look for any anomalies<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#prioritaeten-fuer-alte-und-versteckte-installationen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Prioritize Old and Hidden PHP Installations<\/a><\/div>\n<\/div><\/nav><section class=\"wh-section\" aria-labelledby=\"alarmmeldung-richtig-einordnen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"alarmmeldung-richtig-einordnen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Interpreting the Alarm Message Correctly<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The claim that a PHP security vulnerability could affect \u201ehalf the Internet\u201c is a sensationalized hook, but not a substantiated estimate. There is no evidence that half of all Internet services are vulnerable or have already been compromised. The actual risk is nevertheless significant because PHP is used as a runtime environment in many websites, online stores, APIs, and administrative interfaces. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">What matters is not whether a website uses PHP, but which version of PHP processes its web requests. The security updates from October 21, 2026, generally affect unpatched installations of the supported branches, provided they handle requests via a web service. A local PHP installation used for development tasks should therefore be treated differently than a customer portal accessible from the outside. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The <strong style=\"font-weight:700;color:inherit\">Online Exposure<\/strong> The urgency is a key factor. A publicly accessible online store with forms and file uploads offers more potential points of contact than a closed, internal service. However, even an internal service is not automatically secure: VPN access, compromised accounts, or other systems on the network can make it accessible. Therefore, reach alone is no substitute for a technical risk assessment.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Equally important are the operating mode and <strong style=\"font-weight:700;color:inherit\">Patch Stand<\/strong>. PHP can run, for example, via PHP-FPM, as an Apache module, via php-cgi, or embedded in a product. Multiple domains on the same server may have different versions and update paths. It would be just as wrong to give a blanket all-clear for all PHP websites as it would be to assume that every installation is immediately vulnerable. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"rce-und-betroffene-php-wege\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"rce-und-betroffene-php-wege\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">What the PHP vulnerabilities technically make possible<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A <strong style=\"font-weight:700;color:inherit\">Remote Code Execution<\/strong> (RCE) means that, under certain conditions, an attacker can execute code on a remote system. According to the security advisory, these PHP vulnerabilities do not require prior authentication. The code would initially be executed with the privileges of the web process, not automatically with unrestricted administrator privileges. The potential consequences therefore depend heavily on file permissions, access credentials, and server isolation. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">CVE-2026-109618 affects error paths in <strong style=\"font-weight:700;color:inherit\">Storage shortage<\/strong>. If PHP aborts a request due to an out-of-memory condition, internal data structures may remain incomplete. If such structures are reused during the cleanup of the request, memory corruption may occur. The official description specifically cites multipart requests, file uploads, and memory consumption when parsing nested inputs as relevant technical contexts. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">CVE-2026-109619, on the other hand, affects an internal state tied to a request whose memory has already been freed. If a reused worker subsequently processes another request, PHP can access this stale state before the normal initialization takes effect. The security advisory refers, among other things, to session upload progress and error paths. This describes the class of errors, not a guide to exploitation. <\/p>\n<ul class=\"wh-list\" role=\"list\" style=\"list-style:none;margin:24px 0;padding:0\"><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">Web requests made via PHP-FPM, Apache with mod_php, php-cgi, FrankenPHP, and LiteSpeed may be affected.<\/li><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">The errors lie in the PHP runtime, not primarily in WordPress, Joomla, Shopware, themes, or individual plugins.<\/li><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">CMSs and frameworks affect available features such as file uploads, but they do not replace an update to the interpreter.<\/li><\/ul><\/section><section class=\"wh-section\" aria-labelledby=\"risiko-haengt-vom-betrieb-ab\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"risiko-haengt-vom-betrieb-ab\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Why Not Every Installation Is Equally at Risk<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Whether a service is actually at risk depends on several factors. The primary risks are an unpatched PHP web runtime and an accessible web service. Other factors include the operating mode, reused processes, upload functions or complex forms, and the permissions of the web process account. A service with extensive write access to web files or access to other services can have more serious consequences than a strictly isolated project. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">In Apache, with <strong style=\"font-weight:700;color:inherit\">mod_php<\/strong> The PHP project places particular emphasis on this risk: A documented attack can be triggered even before the actual application code is executed. Even a well-maintained CMS does not protect against this vulnerability at runtime. This does not mean that PHP-FPM, php-cgi, FrankenPHP, or LiteSpeed are considered safe; if they are running unpatched versions, they must also be prioritized for testing. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Products containing the following also require special attention: <strong style=\"font-weight:700;color:inherit\">embedded PHP<\/strong>. This may include container images, appliances, NAS management systems, or network products whose user interface uses PHP internally. In such cases, a command run on the host often does not show the actual runtime environment in use. Updating the operating system also does not automatically fix a vulnerable PHP component in an image or vendor product. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A firewall, web application firewall, or restrictive upload limits can make individual requests more difficult and limit the attack surface. However, they are no substitute for the fix, because they do not correct the faulty memory and state management in the interpreter. Even a bug-free CMS relies on a secure runtime environment. It is therefore essential to check and update the patch status of the PHP instance that actually processes web requests. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"patchstaende-und-supportstatus\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"patchstaende-und-supportstatus\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Compare secure patch levels and support status<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For these two security vulnerabilities, the patch status within the deployed PHP branch is the primary consideration. The PHP project specifies specific fixed releases for the supported series. Earlier patch levels within the same series are considered affected; upgrading to the specified version or a newer version of this branch is the recommended complete remedy. <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"PHP Branches: Patch Status and Support Status as of October 22, 2026\" style=\"width:100%;max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid #dce5e9;border-radius:14px;background:#fff;box-shadow:0 10px 28px -16px rgba(24,47,60,.32);box-sizing:border-box\"><table style=\"width:100%;min-width:580px;border-collapse:separate;border-spacing:0;border:0;margin:0;font-size:15px;line-height:1.6;background:#fff\"><caption style=\"padding:20px;text-align:start;font-size:17px;line-height:1.5;font-weight:700;color:#173246;background:#fff\">PHP Branches: Patch Status and Support Status as of October 22, 2026<\/caption><thead><tr><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">PHP Branch<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Affected up to and including<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Secure version from<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Support Status as of October 22, 2026<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Recommended measure<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">PHP 8.2<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">8.2.34<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">8.2.35<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Security updates only through December 31, 2026<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Update to at least 8.2.35 as soon as possible and plan the migration.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">PHP 8.3<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">8.3.35<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">8.3.36<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Security updates only through December 31, 2027<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Update to at least version 8.3.36.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">PHP 8.4<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">8.4.26<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">8.4.27<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Active support through December 31, 2026<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Update to at least version 8.4.27.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">PHP 8.5<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">8.5.11<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">8.5.12<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Active support through December 31, 2027<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Update to at least version 8.5.12.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">PHP 8.1 and earlier<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">No regular, current upstream release<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">No generally available regular fixed release<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Not officially supported by the PHP project<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Check the vendor backport or migrate to a supported branch.<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A <strong style=\"font-weight:700;color:inherit\">Patch Update<\/strong> remains within the same development branch, for example, from 8.3.35 to 8.3.36. It is intended to provide the security fix and has a narrower compatibility scope than a change from 8.2 to 8.4. The latter is a migration: dependencies, extensions, application code, and, if applicable, the deployment must be checked separately for this. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">PHP 8.2 can still be used for immediate fixes, provided that at least version 8.2.35 is running. However, support for this branch will end on December 31, 2026. Therefore, you should not remain on this branch indefinitely: Plan to migrate to a branch with longer-term support after testing the application for compatibility in a suitable environment. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Special caution is required for PHP 8.1 and earlier versions. The PHP project does not provide a regular, up-to-date release for these versions; minimal source code backports are not equivalent to a generally available, maintained package. A security backport documented by the operating system vendor may be appropriate, but it requires verification in a security advisory or package changelog. If this verification is missing, a migration is necessary rather than a mere version update. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"web-laufzeit-zuverlaessig-pruefen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"web-laufzeit-zuverlaessig-pruefen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Check the actual web runtime<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The version check begins with an assessment, but must not end with the shell. On a self-managed server, the following commands display the version of the PHP command executed there and the configuration files found by that command. They do not modify any packages or configurations and are therefore suitable as a first, low-risk verification step.<\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Copy code<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Copied<\/span><span data-wh-copy-fallback hidden>Code highlighted\u2014please copy<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-bash\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">php -v\nphp --ini<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The output describes only the one called via this shell command <strong style=\"font-weight:700;color:inherit\">CLI Runtime<\/strong>. A website, on the other hand, can be served using PHP-FPM, Apache with mod_php, php-cgi, or a container. This web runtime may use a different PHP version and different configuration files than the command <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">php -v<\/code> on the host. The process that handles actual HTTP requests is key to the security assessment. <\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail1\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/php-webdienst-server-pruefung-73623c2b-detail1-2473e62838-1024x683.webp\" class=\"wp-image-21949\" alt=\"A server room with server hardware, used as an example for testing PHP web services.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/php-webdienst-server-pruefung-73623c2b-detail1-2473e62838-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/php-webdienst-server-pruefung-73623c2b-detail1-2473e62838-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/php-webdienst-server-pruefung-73623c2b-detail1-2473e62838-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/php-webdienst-server-pruefung-73623c2b-detail1-2473e62838-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/php-webdienst-server-pruefung-73623c2b-detail1-2473e62838.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail1\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">AI-generated stock image: The PHP version must be checked on the service that processes web requests.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">With managed hosting, you should therefore check the PHP version selected for each project or domain in the customer panel and, if necessary, verify the patch status of the provided service. If you have multiple domains, you must check each assignment individually: A main domain may already be using the patched branch, while a store, a staging instance, or a subdomain may still be using an older interpreter.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">On servers running PHP-FPM, service configuration, package inventory, and deployment documentation go hand in hand. In container environments, you should also verify the image that was actually deployed, not just a local build manifest. What matters is which revision in the running pod or container is handling web requests; an updated base image does not protect an older instance that is already running. <\/p>\n<aside class=\"wh-callout wh-callout-warning\" style=\"display:block;margin:28px 0;padding:20px 23px;border:1px solid #d1e4dd;border-left:4px solid #187065;border-radius:11px;background:#f0f7f4\"><p class=\"wh-callout-title\" style=\"margin:0 0 8px;color:#1c5c53;font-size:16px;font-weight:700;line-height:1.5\">No public diagnosis page<\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A publicly accessible <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">phpinfo()<\/code>- This page is not a recommended standard check. It may reveal version, module, path, and configuration information. Instead, use the hosting panel, server management tools, or internally protected operational documentation.<\/p>\n<\/aside><\/section><section class=\"wh-section\" aria-labelledby=\"updatewege-nach-betriebsart\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"updatewege-nach-betriebsart\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Plan Update Paths by Operating Mode<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The appropriate update method depends on who provides the interpreter and where it is operated. Only once this area of responsibility is clear can a reliable decision be made as to whether a panel replacement, a package update, a new image, or a manufacturer update is required. The following classification distinguishes between these cases without equating the operating modes in terms of risk.<\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Version Check and Update Based on PHP Mode\" style=\"width:100%;max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid #dce5e9;border-radius:14px;background:#fff;box-shadow:0 10px 28px -16px rgba(24,47,60,.32);box-sizing:border-box\"><table style=\"width:100%;min-width:580px;border-collapse:separate;border-spacing:0;border:0;margin:0;font-size:15px;line-height:1.6;background:#fff\"><caption style=\"padding:20px;text-align:start;font-size:17px;line-height:1.5;font-weight:700;color:#173246;background:#fff\">Version Check and Update Based on PHP Mode<\/caption><thead><tr><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Operating Mode<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Where can I check the actual version?<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Who does the updating?<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Typical feature<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">shared hosting<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Customer panel per domain or project; information from the hosting provider<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Hosting provider or customer via shared selection<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">PHP assignments may vary between domains.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">PHP-FPM on Linux<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">FPM Pool, Installed Packages, Service and Deployment Configuration<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Server Administration or Distribution<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">The package version may contain a documented security backport.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Apache with mod_php<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Apache Module Configuration and Installed Packages<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Server Administration or Distribution<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">As described by the PHP project, which places a special focus on risk.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Container<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Running image, image tag, or digest, as well as container runtime<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Build and Deployment Team<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Host updates do not automatically change the embedded PHP in the image.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Embedded PHP in the Product<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Manufacturer Documentation, Product Version, and Security Advisory<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Product Manufacturer or Product Administration<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">PHP can be part of an appliance without a separate, visible installation.<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For shared hosting, the provider should provide the secure patch level for the selected PHP series; the administrator then checks the application. For PHP-FPM or mod_php, the administrator typically updates the packages and then carefully restarts the relevant service. A simple restart without applying the fix does not replace the update. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Linux distributions often provide security patches as <strong style=\"font-weight:700;color:inherit\">Backport<\/strong>. In that case, the visible package version number may differ from the releases on php.net, even though the fix is included. Therefore, don't just compare strings like \u201e8.4.26\u201c; instead, read the distributor's security advisory and changelog. The PHP project notes that distributions and LTS providers may receive patches. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Containers require a specific process: build a corrected image or obtain one from the provider, deploy it, and replace old instances. With NAS interfaces, network devices, or off-the-shelf web applications, however, the correction is the responsibility of the manufacturer. A patch for the host operating system does not necessarily reach the embedded interpreter; therefore, inventory tracking and manufacturer guidelines remain essential. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"sofortmassnahmen-und-neustarts\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"sofortmassnahmen-und-neustarts\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Immediate Measures Without a False Sense of Security<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">On patch day, start by compiling a comprehensive inventory: domains, APIs, management interfaces, containers, and products that may contain embedded PHP. For each service, note the web operating mode, the update process used, and the PHP runtime actually in use. After that, prioritize every publicly accessible or business-critical service\u2014not just the server with the most obvious version number. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Next, apply the security update released by your hosting provider, Linux distributor, image provider, or product manufacturer. For supported PHP branches, updating to the latest patch version is the complete solution; a WAF, upload rules, or a web server restart are not substitutes for this. Plan the process so that package, image, or vendor updates are documented in a traceable manner and can be traced back in case of problems. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">After the update, you must <strong style=\"font-weight:700;color:inherit\">all former workers<\/strong> be terminated and replaced with processes that have verifiably loaded the patched runtime. Use a reload only if the specific service manager ensures this complete replacement; otherwise, a controlled restart is required. Next, verify process start times, service status, or the internally determined web runtime, rather than simply assuming the replacement has taken place. For containers, roll out the corrected image and remove all old instances. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Next, check key application workflows such as login, forms, uploads, checkout, and APIs. The tests show whether the application and extensions function with the updated patch status; however, they do not, on their own, prove either that all workers have been replaced or that there has been no prior compromise. These points must be evaluated separately through operational and security audits.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If a patch is not available in the short term, certain settings can limit known attack vectors, but they cannot ensure complete security. Disabling the upload progress indicator must take effect before a request is parsed. First, check whether any applications or interfaces require this progress indicator, and then restart each relevant PHP worker. Afterward, verify that no old processes are still running with the previous setting. <\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Code<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Copy code<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Copied<\/span><span data-wh-copy-fallback hidden>Code highlighted\u2014please copy<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-ini\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">session.upload_progress.enabled = 0<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Conservative limits on POST data and other options mentioned in the security advisory can also only partially reduce the attack surface. Late-read <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">.user.ini<\/code>-files or a <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">ini_set()<\/code> Measures taken within the application are not sufficient for this setting. Treat such measures as temporary risk mitigation and continue to focus on the security update as your goal. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">This should be distinguished from the routine management of saved sessions. The article on <a href=\"https:\/\/webhosting.de\/en\/https-web-hosting-php-session-garbage-collection-optimization-performance\/\">PHP Session Garbage Collection<\/a> explains how cleanup, file access, and workers interact during normal operation. However, this operational optimization does not address the vulnerabilities discussed here and does not replace either the corrected PHP patch or the subsequent replacement of running processes.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"betrieb-pruefen-und-auffaelligkeiten\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"betrieb-pruefen-und-auffaelligkeiten\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">After the patch, check system operation and look for any anomalies<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A successfully completed package update initially only indicates that files or packages have been installed. It does not confirm that the web process has loaded the new runtime, nor that the application is running correctly with it. Therefore, after the restart, check the web runtime relevant to the service and document the time, version, restarted service, and the result of the functional test. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Functional testing should cover real-world core workflows: important public pages, logging in and out, submitting forms, uploading files, checkout or booking, as well as API endpoints and background tasks. Test only operations for which you have authorization, and for live stores, use test data provided for this purpose whenever possible. At the same time, monitor web server, PHP, and application logs for new errors, recurring crashes, or unexpected status codes.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A fresh start is necessary to establish sustainable processes and <strong style=\"font-weight:700;color:inherit\">Worker<\/strong> Loading it with updated code does not, however, apply a fix on its own. Without installing the update, the vulnerability remains. During periods of high load, the maintenance window should be scheduled so that requests can be processed in an orderly manner and the effects of a worker restart can be monitored. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The extent to which a controlled restart affects throughput depends on the number of PHP processes and their load. When planning, it is helpful to take queues, running jobs, and critical transactions into account rather than terminating processes in an uncoordinated manner. The guide <a href=\"https:\/\/webhosting.de\/en\/php-workers-hosting-bottleneck-guide-balance\/\">Understanding PHP Workers<\/a> explains the role of these processes in parallel dynamic queries.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If issues arise after applying the patch, distinguish between application compatibility errors and an incomplete rollout. Compare the configuration, enabled extensions, and the web runtime with their status prior to maintenance. A rollback must not result in a publicly accessible service remaining permanently in a vulnerable state; in such cases, quickly establish a compatible, patched update path.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"prioritaeten-fuer-alte-und-versteckte-installationen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"prioritaeten-fuer-alte-und-versteckte-installationen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Prioritize Old and Hidden PHP Installations<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Special attention should be paid to systems where PHP is not visible as a deliberately installed runtime: Docker images, virtual appliances, NAS and network interfaces, and off-the-shelf software products. Updating the host does not automatically update a container image or the built-in runtime of a vendor\u2019s product. Therefore, you should specifically ask vendors for their assessment and for a security update for the specific product. <\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail2\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/eingebettetes-php-appliance-herstellerhinweis-73623c2b-detail2-208e5385a5-1024x683.webp\" class=\"wp-image-21950\" alt=\"An administrator reviews the manufacturer&#039;s information about a network appliance with embedded PHP.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/eingebettetes-php-appliance-herstellerhinweis-73623c2b-detail2-208e5385a5-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/eingebettetes-php-appliance-herstellerhinweis-73623c2b-detail2-208e5385a5-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/eingebettetes-php-appliance-herstellerhinweis-73623c2b-detail2-208e5385a5-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/eingebettetes-php-appliance-herstellerhinweis-73623c2b-detail2-208e5385a5-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/10\/eingebettetes-php-appliance-herstellerhinweis-73623c2b-detail2-208e5385a5.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail2\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">AI-generated illustrative image: For appliances, check the manufacturer's recommendations and the product-specific update method; this image does not depict a general update process.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">When it comes to older branches, three cases must be clearly distinguished. A regularly supported PHP release receives the security updates published by the PHP project. A distribution or vendor backport may contain the fix despite having a different visible version number, but this must be documented by the vendor\u2019s security advisory or changelog. In contrast, self-maintained source code requires you to take full responsibility for building, testing, and operating the software; it is not an equivalent substitute for a regular update channel. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">PHP 8.1 and older branches no longer receive regular upstream releases. Although a corrected patch set is available for PHP 8.2, support for that branch will end in late 2026. Use an available fix for the immediate issue, but for older or end-of-life versions, also plan to implement a tested <strong style=\"font-weight:700;color:inherit\">Migration<\/strong> to a branch with extended support. <\/p>\n<ol class=\"wh-list\" role=\"list\"><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">Update publicly accessible services running an unpatched PHP runtime first, especially if they allow uploads or have administrative functions.<\/li><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">Apache with mod_php and business-critical online stores, APIs, or customer portals should be addressed immediately; the official security advisory highlights mod_php as a particularly critical risk.<\/li><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">Identify containers, appliances, and third-party products based on images, inventory, and vendor status; the absence of visible PHP packages is not a cause for reassurance.<\/li><li style=\"margin:8px 0;padding:12px 17px;background:#f5f8fa;border:1px solid #e0e8ec;border-radius:9px\">Isolate unsupported services or those that cannot be patched in a timely manner, and restrict access to them, while simultaneously making plans for a mandatory replacement, upgrade, or migration.<\/li><\/ol><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Network segmentation, mandatory VPN use, or restrictive access rules can buy time when management interfaces cannot be patched immediately. However, they are only <strong style=\"font-weight:700;color:inherit\">Transitional Measures<\/strong>, because internal user accounts, compromised devices, and misconfigured shares can still create entry points for attacks. If no fix is available for a product or if the PHP branch is permanently out of support, replacement or migration is the most reliable decision. <\/p>\n<\/section><section class=\"wh-sources\" style=\"margin:40px 0 0;padding:24px 0 0;border-top:1px solid #dce5e9;color:#596b7b;font-size:14px;line-height:1.65\"><h2 style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Sources and Current State of Knowledge<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Status of the research: <time datetime=\"2026-10-22\">2026-10-22<\/time><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Research status: October 22, 2026. Patch statuses and support information are based on the PHP and CERT-EU sources provided; for distribution packages, documented security backports must be checked separately.<\/p><div class=\"wh-source-urls\"><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/archive\/2026.php<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/github.com\/php\/php-src\/security\/advisories\/GHSA-w8hw-w9fx-j79w<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/cert.europa.eu\/publications\/security-advisories\/2026-018\/<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/supported-versions.php<\/span><\/p><\/div><\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>Critical PHP vulnerabilities can put unpatched web services at risk. Learn what patch levels are required, why the web runtime matters, and how to plan updates securely.<\/p>","protected":false},"author":1,"featured_media":21948,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[780],"tags":[],"class_list":["post-21942","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administration-anleitungen"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"surfer_file_name":null,"surfer_file_original_url":null,"_wp_attachment_image_alt":null,"litespeed-optimize-set":null,"litespeed-optimize-size":null,"_oembed_b5e1eb923ad3b086e579b1befcd4075c":null,"_elementor_source_image_hash":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"_source_url":null,"_elementor_migrations_state_8b2d":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":"780","_wh_make_key":"wh_73623c2bee09ad78865933f53c9d4892","rank_math_internal_links_processed":"1","_wh_make_topic":"PHP Sicherheitsl\u00fccke - Wie das halbe Internet gehackt werden kann","_wh_make_input_keywords":["php-sicherheit","hacker","php","updates"],"_wh_make_config":{"research_model":"gpt-5.6-terra","writer_model":"gpt-5.6-terra","review_model":"gpt-5.6-sol","image_model":"gpt-image-2.5-flare","image_quality":"high","image_format":"webp","final_status":"draft","charts_enabled":true},"_wh_make_links":{"I1":{"id":"I1","post_id":16509,"url":"https:\/\/webhosting.de\/https-webhosting-de-php-session-garbage-collection-optimierung-performance\/","title":"PHP Session Garbage Collection: Why it can block your website","excerpt":"The PHP session garbage collector can block requests because, when cleaning up tens of thousands of session files, it ties up the PHP process for a long time, causing other requests to wait. I\u2019ll show how probabilistic garbage collection, file locks, and slow I\/O lead to noticeable lags, and how I avoid these delays with clear configurations, cron jobs, and RAM storage to keep the website running smoothly. Key Points: Cause of the problem\u2014probabilistic GC, file I\/O, and locks lead to wait times. Risk factor: A large number of sessions (e.g., 170,000) prolong each GC run. WordPress: Admin + Heartbeat exacerbate delays. Hosting: RAM, SSD, and isolation reduce GC overhead. Solution: Cron cleanup and Redis speed up requests. PHP Session Garbage Collection Explained Briefly: Sessions store state data between requests, usually as files on the file system. Garbage collection removes outdated files whose last modification time is older than `session.gc_maxlifetime`, often 1,440 seconds. By default, PHP triggers this cleanup probabilistically via `session.gc_probability` and `session.gc_divisor`, often at a rate of 1 in 1,000 calls. It sounds harmless, but during periods of heavy traffic, someone is constantly affected and has to endure the entire cleanup process. The more files there are in the session directory, the longer the cleanup blocks the process. Why does the cleanup block requests? A GC run must list the session directory, check every file, and delete old entries\u2014a process that quickly adds up to several seconds on slow I\/O. If there are 170,000 files, numerous system calls run in succession, consuming CPU, RAM, and storage. PHP processes started in parallel sometimes attempt to delete files simultaneously, causing additional file locks. This exacerbates wait times because processes slow each other down or block one another. If you delve deeper into session locking, you\u2019ll see how significantly locking affects the response time profile and drives up the time-to-first-byte, especially during peak loads\u2014which I want to avoid by decoupling the GC. WordPress: Slow Admin Pages Due to Sessions The admin area requires more CPU and database access than the front end, which makes every extra delay noticeably"},"I2":{"id":"I2","post_id":13013,"url":"https:\/\/webhosting.de\/php-workers-hosting-flaschenhals-ratgeber-balance\/","title":"Understanding PHP Workers: What they are and when they become a bottleneck","excerpt":"PHP workers are standalone processes that execute PHP code and thereby process every dynamic request to a website. If too many uncached requests reach the server at the same time, the available workers occupy all slots, a queue forms, and the bottleneck leads to long response times, TTFB spikes, and errors. Key Points I\u2019ve summarized the following key points concisely so you can quickly make the right decisions regarding performance and capacity. Definition: PHP workers process requests serially, with each worker handling only one request at a time. Bottleneck: Too few workers cause queues to form, TTFB increases, and timeouts become likely. Resources: Workers require CPU cores; an incorrect ratio causes context switching. Caching: The more hits from the cache, the lower the worker load during traffic spikes. Scaling: Adjust the number of workers based on page profile, plugins, and interactions. What Are PHP Workers in a Hosting Context? I think of PHP workers as digital waiters who handle each dynamic request individually. A worker reads the PHP script, triggers database queries, and uses them to build the HTML for the browser. Once a task is running, the worker remains tied to it until completion and only becomes available again afterward; it does not work in parallel. In WordPress, workers also handle recurring tasks such as cron jobs, email sending, and security checks. This is precisely why the number and quality of workers have a massive impact on a website\u2019s perceived speed. When and why does a worker bottleneck occur? A bottleneck occurs as soon as more uncached requests arrive simultaneously than there are workers available. Every additional request then ends up in a queue, waiting for a free slot. This increases the Time To First Byte, lengthens load times, and can cause checkout processes to abort. In online stores or member areas, personalized content exacerbates the situation because the cache cannot deliver many of the responses, which shifts the load directly onto the workers. In this situation, I achieve the greatest impact through sensible caching, optimized plugins, and a balanced worker-to-CPU ratio. Symptoms include"},"I3":{"id":"I3","post_id":17876,"url":"https:\/\/webhosting.de\/wordpress-opcode-cache-performant-serverboost-perf\/","title":"Why WordPress can hardly be operated with high performance without an opcode cache","excerpt":"The WordPress OPcode Cache determines whether your site recompiles PHP on every request or runs it directly from RAM. I\u2019ll explain why not having OPcache puts a strain on the CPU, increases TTFB, and severely limits scalability. Key Points Before I go into detail, I\u2019ll summarize the most important insights briefly and clearly so you know exactly where to optimize performance. Without OPcache, PHP recompiles with every request, which wastes time and resources and makes pages unresponsive. With OPcache enabled, bytecode and code paths run from memory, resulting in faster response times and less frequent escalation of traffic spikes. Combined with page and object caching, OPcache boosts efficiency and brings much-needed stability to the infrastructure. When configured correctly, OPcache noticeably increases the number of users a server core can handle and reduces the error rate during peak loads. These factors make the difference between a sluggish system and a fast installation with reliable performance. OPcache saves compilation time and stabilizes TTFB. CPU load decreases, while capacity per core increases. Scaling is successful, and traffic spikes remain manageable. PHP 8+ delivers additional performance. Monitoring keeps track of the hit rate and memory usage. Why WordPress Slows Down Without an Opcode Cache: With every page view, WordPress loads many PHP files that\u2014without OPcache\u2014are parsed each time, converted into a syntax tree, and recompiled into bytecode, which unnecessarily extends processing time. In audits, I regularly see execution times that are two to three times longer because the same routines start completely from scratch for each request, thereby generating thermal load on the CPU. This repetition blocks FPM workers, delays responses, and causes TTFB to spike. Under concurrent access, the throughput rate drops, while the error rate (502\/504) spikes during peak periods. The more plugins and resource-intensive themes are involved, the more you feel the impact of each individual uncache. Here\u2019s how OPcache works in detail: OPcache stores the compiled PHP bytecode in shared memory and, if the timestamps remain unchanged, delivers the same code directly from RAM, thereby eliminating disk accesses and the need to recompile."}},"_wh_make_stage":"entwurf","_wh_make_research_date":"2026-10-22","_wh_make_sitemap_info":{"index":"https:\/\/webhosting.de\/sitemap_index.xml","sitemaps":["https:\/\/webhosting.de\/post-sitemap1.xml","https:\/\/webhosting.de\/post-sitemap2.xml","https:\/\/webhosting.de\/post-sitemap3.xml","https:\/\/webhosting.de\/post-sitemap4.xml"],"url_count":3118,"fetched_at":"2026-10-22T06:00:26+00:00","selected_ids":[16509,13013,17876]},"_wh_make_draft_hash":"009ed5beba52019f0d3c8834a0ffd6c0a8479510491a398e7cc06f96ec23b4f9","_wh_make_work":{"version":"2.1","identity":{"sheet_ref":"1VMjxV8Q73i0Q1HO6s-u4jNHVRF0snliGCeg97intLPs","sheet_name":"Tabellenblatt1","external_id":"1414","topic":"PHP Sicherheitsl\u00fccke - Wie das halbe Internet gehackt werden kann","keywords":["php-sicherheit","hacker","php","updates"],"category_input":"780"},"config":{"research_model":"gpt-5.6-terra","writer_model":"gpt-5.6-terra","review_model":"gpt-5.6-sol","image_model":"gpt-image-2.5-flare","image_quality":"high","image_format":"webp","final_status":"draft","charts_enabled":true},"phase":"done","pending":null,"receipts":{"049326eb0022c51ec75705a9ab0dc91c":"dcc79ca91faca7756ca4d716471a59e4747bf925f7cde369ca67d4a153486550","efd206707ede9c95767952be2ce2da88":"d1bcc8bcda7f0b68aebaf5a275eb3eee174c844870cec340c011b5e5b9f4e9ad","2dd8dcbb862352557970aba0c9df0fa6":"78fc8155f6b4da415c54300caec6d6644eb93a266f724a111b6cd2ea1cf64e29","1b74d36fe89db4f706c0f5b108857581":"e41ad907ef95044a55135a0c4419badafce20fd2c7adaacafebed361f58a82ed","c5d5baec87d73f08bc250f5fdcc4ac0e":"61a2bdd3c107daa3dfc8c81b496c42584cbc63635911646fdadaa980b909d7f2","60101f5704ba397cc3dd7d1514aaa077":"2d717cd1892f86b40fc386d00cf9c6d584b2fb7710f605e7d25b1e779bf85020","1bee2c84a03102f115fa970ff41920e6":"54a861f0d7356b0f784b500b82cc76f9636fe984a63ee5938de021a8dc8d7866","a07463940f4a368f0c2e1c8a5345b1a6":"80cf6a6a56c06cee08e4bd2e684e4ffa92a43216b8f5eaa720ce228aeb7dc9b7","1c6673629e91389d8ed9a449e7e2fb04":"7db5f10f317f0ab2d1e87361fe60ac97e36376bd4d0716aebaea45450c09d320","93de3781567c1a226ece4aea06087f48":"c622f6d0b5eb8640a331dede243f0ed19c812bd0b174a05cb1a2afe0d0bcb565","bd80cd2fe1f3ee4b40afcae495694b4e":"cefc06f5082264c3670ec4d07794bbebbb6a8c4217d4aa6c44d1b1b3b59a1623","ce819983f5a310d651f9eb5333ef27a8":"81d8a1dbdee8507238481a7e8166ee19250ceace89862d57ec3553cdd8c6a751","cffabe60a69f05be258549a8fade2e03":"e7f1432b43925186f9702369d0ac13827e66395afe05321cf303738e9ac104ba","ede4208f30671e2313fd2812f5edc940":"cfaf3d2308600086faf3912ffde9f69b5274570dc89a0fc3bfbd65e9626082b0","6ba43b14832b1cb17e0aed6c0ee8137b":"77aa7f08d5834f9a5344e0985d5ab063b2f8e0807907bedf7ad3beb355cdfed8","f50504a055a4413970b9a679aae5f067":"a5461a6d46a60a79c47305053e6b0e21467df2ca5456e2ba6a45d4d5826cf055","4054bb35d1e1359e85dd1177e9712ad1":"97cc6b19dae82f00c0a0131d635a5448976a38e9a3977712bb874237c011e7d4","42247db709436940d2fea2e3672722cf":"d7df756a1843eb5ccd1a82571f37f9889cd9f2925e6f1e58166e5fb3cdc8acd9"},"parts":{"1":[{"id":"alarmmeldung-richtig-einordnen","heading":"Die Alarmmeldung richtig einordnen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Die Aussage, eine PHP-Sicherheitsl\u00fccke k\u00f6nne \u201edas halbe Internet\u201c betreffen, ist ein zugespitzter Aufh\u00e4nger, aber keine belegte Gr\u00f6\u00dfenordnung. Es gibt keinen Nachweis, dass die H\u00e4lfte aller Internetdienste verwundbar oder bereits kompromittiert ist. Das tats\u00e4chliche Risiko ist dennoch erheblich, weil PHP als Laufzeitumgebung in vielen Websites, Shops, APIs und Verwaltungsoberfl\u00e4chen eingesetzt wird.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Entscheidend ist nicht, ob eine Website PHP nutzt, sondern welche PHP-Version ihre Webanfragen verarbeitet. Die Sicherheitsupdates vom 21. Oktober 2026 betreffen grunds\u00e4tzlich ungepatchte Installationen der unterst\u00fctzten Zweige, sofern sie Anfragen \u00fcber einen Webdienst bedienen. Ein lokales PHP f\u00fcr Entwicklungsaufgaben ist daher anders zu bewerten als ein von au\u00dfen erreichbares Kundenportal.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die ","ref":""},{"kind":"strong","text":"Internet-Exponierung","ref":""},{"kind":"text","text":" bestimmt die Dringlichkeit wesentlich. Ein \u00f6ffentlich erreichbarer Shop mit Formularen und Uploads bietet mehr m\u00f6gliche Ber\u00fchrungspunkte als ein abgeschotteter interner Dienst. Auch ein interner Dienst ist aber nicht automatisch sicher: VPN-Zug\u00e4nge, kompromittierte Konten oder andere Systeme im Netzwerk k\u00f6nnen ihn erreichbar machen. Reichweite allein ersetzt deshalb keine technische Risikopr\u00fcfung.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ebenso wichtig sind Betriebsart und ","ref":""},{"kind":"strong","text":"Patchstand","ref":""},{"kind":"text","text":". PHP kann etwa \u00fcber PHP-FPM, als Apache-Modul, per php-cgi oder eingebettet in ein Produkt laufen. Mehrere Domains auf demselben Server k\u00f6nnen dabei unterschiedliche Versionen und Aktualisierungswege haben. Eine pauschale Entwarnung f\u00fcr alle PHP-Websites w\u00e4re ebenso falsch wie die Annahme, jede Installation sei unmittelbar angreifbar.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"rce-und-betroffene-php-wege","heading":"Was die PHP-Schwachstellen technisch erm\u00f6glichen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Eine ","ref":""},{"kind":"strong","text":"Remote Code Execution","ref":""},{"kind":"text","text":" (RCE) bedeutet, dass ein Angreifer unter bestimmten Bedingungen Code auf einem entfernten System ausf\u00fchren kann. Bei diesen PHP-Schwachstellen ist laut Sicherheitsmeldung keine vorherige Anmeldung erforderlich. Ausgef\u00fchrt w\u00fcrde der Code zun\u00e4chst mit den Rechten des Webprozesses, nicht automatisch mit uneingeschr\u00e4nkten Administratorrechten. Die m\u00f6glichen Folgen h\u00e4ngen daher stark von Dateirechten, Zugangsdaten und der Servertrennung ab.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"CVE-2026-109618 betrifft Fehlerpfade bei ","ref":""},{"kind":"strong","text":"Speicherknappheit","ref":""},{"kind":"text","text":". Bricht PHP eine Anfrage wegen eines Out-of-Memory-Zustands ab, k\u00f6nnen interne Datenstrukturen unvollst\u00e4ndig bleiben. Werden solche Zust\u00e4nde beim Aufr\u00e4umen der Anfrage weiterverwendet, kann Speicherbesch\u00e4digung entstehen. Die offizielle Beschreibung nennt insbesondere Multipart-Anfragen, Dateiuploads und den Speicherverbrauch beim Parsen verschachtelter Eingaben als relevante technische Kontexte.","ref":""},{"kind":"citation","text":"","ref":"S2"}]},{"type":"paragraph","runs":[{"kind":"text","text":"CVE-2026-109619 betrifft dagegen an eine Anfrage gebundenen internen Zustand, dessen Speicher bereits freigegeben wurde. Verarbeitet ein wiederverwendeter Worker danach eine weitere Anfrage, kann PHP auf diesen veralteten Zustand zugreifen, bevor die normale Initialisierung greift. Die Sicherheitsmeldung verweist dabei unter anderem auf den Upload-Fortschritt von Sessions und Fehlerpfade. Das beschreibt die Fehlerklasse, nicht eine Anleitung zur Ausnutzung.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"list","ordered":false,"items":["Betroffen sein k\u00f6nnen Webanfragen \u00fcber PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed.","Die Fehler liegen in der PHP-Laufzeit, nicht prim\u00e4r in WordPress, Joomla, Shopware, Themes oder einzelnen Plugins.","CMS und Frameworks beeinflussen erreichbare Funktionen wie Uploads, ersetzen aber kein Update des Interpreters."],"source_ids":["S1","S2"]}]},{"id":"risiko-haengt-vom-betrieb-ab","heading":"Warum nicht jede Installation gleich gef\u00e4hrdet ist","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Ob ein Dienst praktisch gef\u00e4hrdet ist, ergibt sich aus mehreren Faktoren. Vorrang haben eine ungepatchte PHP-Web-Laufzeit und ein erreichbarer Webdienst. Danach z\u00e4hlen die Betriebsart, wiederverwendete Prozesse, Funktionen f\u00fcr Uploads oder komplexe Formulare sowie die Rechte des Webprozess-Kontos. Ein Dienst mit weitreichendem Schreibzugriff auf Webdateien oder Zugang zu weiteren Diensten kann schwerere Folgen haben als ein strikt isoliertes Projekt.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei Apache mit ","ref":""},{"kind":"strong","text":"mod_php","ref":""},{"kind":"text","text":" hebt das PHP-Projekt den Risikofokus besonders hervor: Ein dokumentierter Angriff kann bereits vor der Ausf\u00fchrung des eigentlichen Anwendungscodes ausgel\u00f6st werden. Ein sauber gepflegtes CMS sch\u00fctzt dann nicht vor der Schwachstelle in der Laufzeit. Das bedeutet nicht, dass PHP-FPM, php-cgi, FrankenPHP oder LiteSpeed als ungef\u00e4hrlich gelten; sie m\u00fcssen bei einem ungepatchten Stand ebenfalls priorisiert gepr\u00fcft werden.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Aufmerksamkeit brauchen au\u00dferdem Produkte mit ","ref":""},{"kind":"strong","text":"eingebettetem PHP","ref":""},{"kind":"text","text":". Dazu k\u00f6nnen Container-Images, Appliances, NAS-Verwaltungen oder Netzwerkprodukte geh\u00f6ren, deren Oberfl\u00e4che PHP intern verwendet. Dort zeigt ein Befehl auf dem Host oft nicht die tats\u00e4chlich eingesetzte Laufzeit. Das Update des Betriebssystems behebt auch nicht automatisch eine verwundbare PHP-Komponente in einem Image oder Herstellerprodukt.","ref":""},{"kind":"citation","text":"","ref":"S3"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Eine Firewall, Web Application Firewall oder restriktive Upload-Limits k\u00f6nnen einzelne Anfragen erschweren und die Angriffsfl\u00e4che begrenzen. Sie sind jedoch kein Ersatz f\u00fcr den Fix, weil sie nicht die fehlerhafte Speicher- und Zustandsverwaltung im Interpreter korrigieren. Auch ein fehlerfreies CMS bleibt auf eine sichere Laufzeit angewiesen. Ma\u00dfgeblich ist deshalb, den Patchstand des tats\u00e4chlich Webanfragen verarbeitenden PHP zu pr\u00fcfen und zu aktualisieren.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]}],"2":[{"id":"patchstaende-und-supportstatus","heading":"Sichere Patchst\u00e4nde und Supportstatus vergleichen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr die beiden Sicherheitsl\u00fccken z\u00e4hlt zun\u00e4chst der Patchstand innerhalb des eingesetzten PHP-Zweigs. Das PHP-Projekt nennt f\u00fcr die unterst\u00fctzten Reihen konkrete korrigierte Releases. Fr\u00fchere Patchst\u00e4nde derselben Reihe gelten als betroffen; ein Upgrade auf die angegebene oder eine neuere Version dieses Zweigs ist die vorgesehene vollst\u00e4ndige Abhilfe.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"table","caption":"PHP-Zweige: Patchst\u00e4nde und Supportlage am 22. Oktober 2026","headers":["PHP-Zweig","Betroffen bis einschlie\u00dflich","Sichere Version ab","Supportstatus am 22. Oktober 2026","Empfohlene Ma\u00dfnahme"],"rows":[["PHP 8.2","8.2.34","8.2.35","Sicherheits-Support, Ende am 31. Dezember 2026","Kurzfristig auf mindestens 8.2.35 aktualisieren und Migration planen."],["PHP 8.3","8.3.35","8.3.36","Sicherheits-Support","Auf mindestens 8.3.36 aktualisieren."],["PHP 8.4","8.4.26","8.4.27","Sicherheits-Support","Auf mindestens 8.4.27 aktualisieren."],["PHP 8.5","8.5.11","8.5.12","Sicherheits-Support","Auf mindestens 8.5.12 aktualisieren."],["PHP 8.1 und \u00e4lter","Kein regul\u00e4res aktuelles Upstream-Release","Kein allgemein verf\u00fcgbares regul\u00e4res Fix-Release","Nicht regul\u00e4r vom PHP-Projekt unterst\u00fctzt","Anbieter-Backport pr\u00fcfen oder auf einen unterst\u00fctzten Zweig migrieren."]],"source_ids":["S1","S4"]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein ","ref":""},{"kind":"strong","text":"Patch-Update","ref":""},{"kind":"text","text":" bleibt in derselben Entwicklungsreihe, etwa von 8.3.35 auf 8.3.36. Es soll den Sicherheitsfix bereitstellen und hat einen engeren Kompatibilit\u00e4tsrahmen als ein Wechsel von 8.2 auf 8.4. Letzterer ist eine Migration: Abh\u00e4ngigkeiten, Erweiterungen, Anwendungscode und gegebenenfalls das Deployment m\u00fcssen daf\u00fcr separat gepr\u00fcft werden.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"PHP 8.2 ist f\u00fcr die akute Behebung weiterhin nutzbar, sofern mindestens Version 8.2.35 l\u00e4uft. Der Zweig erreicht jedoch am 31. Dezember 2026 sein Supportende. Deshalb sollte ein Betrieb nicht bei diesem Sofortschritt stehen bleiben: Plane die Umstellung auf einen l\u00e4nger unterst\u00fctzten Zweig, nachdem die Anwendung in einer geeigneten Umgebung auf Kompatibilit\u00e4t gepr\u00fcft wurde.","ref":""},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei PHP 8.1 und \u00e4lter ist besondere Vorsicht n\u00f6tig. Das PHP-Projekt stellt daf\u00fcr kein regul\u00e4res aktuelles Release bereit; minimale Quellcode-Backports sind nicht mit einem allgemein verf\u00fcgbaren, gepflegten Paket gleichzusetzen. Ein vom Betriebssystemanbieter dokumentierter Sicherheits-Backport kann angemessen sein, erfordert aber einen Nachweis im Security Advisory oder Paket-Changelog. Fehlt er, ist eine Migration statt einer blo\u00dfen Versionskosmetik n\u00f6tig.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"web-laufzeit-zuverlaessig-pruefen","heading":"Die tats\u00e4chliche Web-Laufzeit pr\u00fcfen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Die Versionspr\u00fcfung beginnt mit einer Bestandsaufnahme, darf aber nicht bei der Shell enden. Auf einem selbst verwalteten Server zeigen die folgenden Befehle die installierte PHP-CLI und deren geladene Konfigurationsdateien. Sie ver\u00e4ndern weder Pakete noch Konfiguration und eignen sich daher als erster, risikoarmer Pr\u00fcfschritt.","ref":""}]},{"type":"code","language":"bash","code":"php -v\nphp --ini","source_ids":["S1"]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Ausgabe belegt ausschlie\u00dflich die ","ref":""},{"kind":"strong","text":"CLI-Laufzeit","ref":""},{"kind":"text","text":". Eine Website kann dagegen \u00fcber PHP-FPM, Apache mit mod_php, php-cgi oder einen Container bedient werden. Diese Web-Laufzeit kann eine andere PHP-Version und andere Konfigurationsdateien nutzen als der Befehl ","ref":""},{"kind":"code","text":"php -v","ref":""},{"kind":"text","text":" auf dem Host. F\u00fcr die Sicherheitsbewertung ist stets der Prozess ma\u00dfgeblich, der reale HTTP-Anfragen verarbeitet.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Im Managed Hosting pr\u00fcfst du deshalb im Kundenpanel die pro Projekt oder Domain ausgew\u00e4hlte PHP-Version und fragst bei Bedarf den Patchstand des bereitgestellten Dienstes ab. Bei mehreren Domains ist jede Zuweisung einzeln zu kontrollieren: Eine Hauptdomain kann bereits den gepatchten Zweig verwenden, w\u00e4hrend ein Shop, eine Staging-Instanz oder eine Subdomain noch einen \u00e4lteren Interpreter nutzt.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auf Servern mit PHP-FPM geh\u00f6ren Service-Konfiguration, Paketbestand und Deployment-Unterlagen zusammen. In Container-Umgebungen pr\u00fcfst du zus\u00e4tzlich das tats\u00e4chlich ausgerollte Image und nicht nur ein lokales Build-Manifest. Entscheidend ist, welche Revision im laufenden Pod oder Container Webanfragen annimmt; ein aktualisiertes Basisimage sch\u00fctzt keine bereits laufende \u00e4ltere Instanz.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"callout","variant":"warning","title":"Keine \u00f6ffentliche Diagnose-Seite","runs":[{"kind":"text","text":"Eine \u00f6ffentlich erreichbare ","ref":""},{"kind":"code","text":"phpinfo()","ref":""},{"kind":"text","text":"-Seite ist keine empfehlenswerte Standardpr\u00fcfung. Sie kann Versions-, Modul-, Pfad- und Konfigurationsdaten offenlegen. Nutze stattdessen Zug\u00e4nge des Hosting-Panels, die Serververwaltung oder intern gesch\u00fctzte Betriebsdokumentation.","ref":""}]}]},{"id":"updatewege-nach-betriebsart","heading":"Updatewege nach Betriebsart planen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Der geeignete Updateweg richtet sich danach, wer den Interpreter ausliefert und wo er betrieben wird. Erst wenn dieser Verantwortungsbereich klar ist, l\u00e4sst sich zuverl\u00e4ssig entscheiden, ob ein Panel-Wechsel, ein Paketupdate, ein neues Image oder ein Herstellerupdate erforderlich ist. Die folgende Einordnung trennt diese F\u00e4lle, ohne die Betriebsarten hinsichtlich ihres Risikos gleichzusetzen.","ref":""}]},{"type":"table","caption":"Versionspr\u00fcfung und Aktualisierung nach PHP-Betriebsart","headers":["Betriebsart","Wo die tats\u00e4chliche Version pr\u00fcfen?","Wer aktualisiert?","Typische Besonderheit"],"rows":[["Shared Hosting","Kundenpanel je Domain oder Projekt; Auskunft des Hosters","Hosting-Anbieter oder Kunde \u00fcber freigegebene Auswahl","PHP-Zuweisungen k\u00f6nnen zwischen Domains abweichen."],["PHP-FPM auf Linux","FPM-Pool, installierte Pakete, Dienst- und Deployment-Konfiguration","Serveradministration oder Distribution","Paketversion kann einen dokumentierten Sicherheits-Backport enthalten."],["Apache mit mod_php","Apache-Modulkonfiguration und installierte Pakete","Serveradministration oder Distribution","Vom PHP-Projekt mit besonderem Risikofokus beschrieben."],["Container","Laufendes Image, Image-Tag oder Digest sowie Container-Laufzeit","Team f\u00fcr Build und Deployment","Host-Updates \u00e4ndern das eingebettete PHP im Image nicht automatisch."],["Eingebettetes PHP im Produkt","Herstellerdokumentation, Produktversion und Security Advisory","Produkthersteller oder Produktadministration","PHP kann ohne separat sichtbare Installation Teil einer Appliance sein."]],"source_ids":["S1","S3"]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei Shared Hosting sollte der Anbieter den sicheren Patchstand f\u00fcr die gew\u00e4hlte PHP-Reihe bereitstellen; der Betreiber pr\u00fcft anschlie\u00dfend die Anwendung. Bei PHP-FPM oder mod_php aktualisiert die Administration in der Regel die Pakete und startet danach den tats\u00e4chlich zust\u00e4ndigen Dienst kontrolliert neu. Ein reiner Neustart ohne eingespielten Fix ersetzt das Update nicht.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Linux-Distributionen liefern Sicherheitskorrekturen h\u00e4ufig als ","ref":""},{"kind":"strong","text":"Backport","ref":""},{"kind":"text","text":". Dann kann die sichtbare Paketversionsnummer von den Releases auf php.net abweichen, obwohl der Fix enthalten ist. Vergleiche daher nicht nur Zeichenketten wie \u201e8.4.26\u201c, sondern lies die Sicherheitsmitteilung und das Changelog des Distributors. Das PHP-Projekt weist darauf hin, dass Distributionen und LTS-Anbieter Patches erhalten k\u00f6nnen.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Container verlangen einen eigenen Ablauf: ein korrigiertes Image bauen oder vom Anbieter beziehen, dieses ausrollen und alte Instanzen ersetzen. Bei NAS-Oberfl\u00e4chen, Netzwerkger\u00e4ten oder fertigen Webanwendungen liegt die Korrektur dagegen beim Herstellerprodukt. Ein Patch des Hostbetriebssystems erreicht dort nicht zwangsl\u00e4ufig den eingebetteten Interpreter; Inventarisierung und Herstellerhinweise bleiben deshalb unverzichtbar.","ref":""},{"kind":"citation","text":"","ref":"S3"}]}]}],"3":[{"id":"sofortmassnahmen-und-neustarts","heading":"Sofortma\u00dfnahmen ohne falsche Sicherheit","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Am Patch-Tag verschaffst du dir zuerst ein belastbares Inventar: Domains, APIs, Verwaltungsoberfl\u00e4chen, Container und Produkte mit m\u00f6glichem eingebettetem PHP. Notiere je Dienst die Web-Betriebsart, den verantwortlichen Updateweg und die tats\u00e4chlich verwendete PHP-Laufzeit. Danach erh\u00e4lt jeder \u00f6ffentlich erreichbare oder gesch\u00e4ftskritische Dienst Vorrang, nicht lediglich der Server mit der auff\u00e4lligsten Versionsnummer.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Spiele anschlie\u00dfend das vom Hoster, Linux-Distributor, Image- oder Produkthersteller freigegebene Sicherheitsupdate ein. F\u00fcr die unterst\u00fctzten PHP-Zweige ist das Update auf den korrigierten Patchstand die vollst\u00e4ndige Abhilfe; eine WAF, Upload-Regeln oder ein Webserver-Neustart ersetzen es nicht. Plane den Vorgang so, dass Paket-, Image- oder Herstellerupdate nachvollziehbar dokumentiert und bei Problemen zur\u00fcckverfolgbar bleibt.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Nach der Aktualisierung musst du den Dienst kontrolliert neu laden, der Webanfragen tats\u00e4chlich verarbeitet, etwa PHP-FPM, Apache mit geladenem PHP-Modul oder den betroffenen Container. Dadurch \u00fcbernehmen bereits laufende Worker die neue Laufzeit. Pr\u00fcfe danach zentrale Anwendungswege; insbesondere Uploads verdienen Aufmerksamkeit, weil sie bei vielen Anwendungen Sessions, Gr\u00f6\u00dfenlimits und Hintergrundverarbeitung ber\u00fchren. Der Beitrag zu ","ref":""},{"kind":"internal_link","text":"PHP Session Garbage Collection","ref":"I1"},{"kind":"text","text":" erl\u00e4utert erg\u00e4nzend, weshalb Session-Verarbeitung auch den laufenden Betrieb beeinflussen kann.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Falls ein Patch kurzfristig nicht m\u00f6glich ist, k\u00f6nnen einzelne Einstellungen bekannte Angriffspfade begrenzen, aber keine vollst\u00e4ndige Sicherheit herstellen. Das Abschalten des Upload-Fortschritts muss vor dem Parsen einer Anfrage wirksam sein. Pr\u00fcfe vorab, ob Anwendungen oder Oberfl\u00e4chen diese Fortschrittsanzeige ben\u00f6tigen, und starte die zust\u00e4ndigen PHP-Worker danach kontrolliert neu.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"code","language":"ini","code":"session.upload_progress.enabled = 0","source_ids":["S1"]},{"type":"paragraph","runs":[{"kind":"text","text":"Konservative Grenzen f\u00fcr POST-Daten und weitere in der Sicherheitsmeldung genannte Optionen k\u00f6nnen die Angriffsfl\u00e4che ebenfalls nur teilweise reduzieren. Sp\u00e4t gelesene ","ref":""},{"kind":"code","text":".user.ini","ref":""},{"kind":"text","text":"-Dateien oder ein ","ref":""},{"kind":"code","text":"ini_set()","ref":""},{"kind":"text","text":" innerhalb der Anwendung reichen f\u00fcr diese Einstellung nicht aus. Behandle solche Ma\u00dfnahmen als befristete Risikoreduktion und halte am Sicherheitsupdate als Ziel fest.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"betrieb-pruefen-und-auffaelligkeiten","heading":"Nach dem Patch Betrieb und Auff\u00e4lligkeiten pr\u00fcfen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Ein erfolgreich abgeschlossenes Paketupdate belegt zun\u00e4chst nur, dass Dateien oder Pakete installiert wurden. Es best\u00e4tigt weder, dass der Webprozess die neue Laufzeit geladen hat, noch dass die Anwendung damit fehlerfrei arbeitet. Pr\u00fcfe deshalb nach dem Neustart die f\u00fcr den Dienst ma\u00dfgebliche Web-Laufzeit und dokumentiere Zeitpunkt, Version, neu gestarteten Dienst sowie das Ergebnis der Funktionskontrolle.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Funktionspr\u00fcfung sollte reale Kernabl\u00e4ufe abdecken: wichtige \u00f6ffentliche Seiten, Anmeldung und Abmeldung, Formularversand, Datei-Upload, Checkout oder Buchung sowie API-Endpunkte und Hintergrundaufgaben. Teste nur Vorg\u00e4nge, f\u00fcr die du berechtigt bist, und nutze bei produktiven Shops m\u00f6glichst daf\u00fcr vorgesehene Testdaten. Kontrolliere parallel Webserver-, PHP- und Anwendungsprotokolle auf neue Fehler, wiederholte Abst\u00fcrze oder unerwartete Statuscodes.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein Neustart ist notwendig, um langlebige Prozesse und ","ref":""},{"kind":"strong","text":"Worker","ref":""},{"kind":"text","text":" mit aktualisiertem Code zu laden, erzeugt aber selbst keinen Fix. Ohne eingespieltes Update bleibt die Schwachstelle bestehen. Bei hoher Auslastung sollte das Wartungsfenster so gew\u00e4hlt werden, dass Anfragen geordnet abflie\u00dfen k\u00f6nnen und die Auswirkungen eines Worker-Neustarts beobachtbar bleiben.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Wie stark ein kontrollierter Neustart den Durchsatz beeinflusst, h\u00e4ngt von Zahl und Auslastung der PHP-Prozesse ab. F\u00fcr die Planung hilft es, Warteschlangen, laufende Jobs und kritische Transaktionen zu ber\u00fccksichtigen, statt Prozesse unkoordiniert zu beenden. Der Leitfaden ","ref":""},{"kind":"internal_link","text":"PHP Workers verstehen","ref":"I2"},{"kind":"text","text":" erkl\u00e4rt die Rolle dieser Prozesse bei parallelen dynamischen Anfragen.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Treten nach dem Patch Auff\u00e4lligkeiten auf, unterscheide zwischen Kompatibilit\u00e4tsfehlern der Anwendung und einem unvollst\u00e4ndigen Rollout. Vergleiche Konfiguration, aktivierte Erweiterungen und die Web-Laufzeit mit dem Stand vor der Wartung. Ein Rollback darf nicht dazu f\u00fchren, dass ein \u00f6ffentlich erreichbarer Dienst dauerhaft auf dem verwundbaren Stand verbleibt; kl\u00e4re dann z\u00fcgig einen kompatiblen, gepatchten Updatepfad.","ref":""}]}]},{"id":"prioritaeten-fuer-alte-und-versteckte-installationen","heading":"Alte und versteckte PHP-Installationen priorisieren","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Aufmerksamkeit ben\u00f6tigen Systeme, auf denen PHP nicht als bewusst installierte Laufzeit sichtbar ist: Docker-Images, virtuelle Appliances, NAS- und Netzwerkoberfl\u00e4chen sowie fertige Softwareprodukte. Ein Update des Hosts aktualisiert weder automatisch ein Container-Image noch die intern mitgelieferte Laufzeit eines Herstellerprodukts. Frage deshalb Hersteller gezielt nach ihrer Bewertung und nach einem Sicherheitsupdate f\u00fcr das konkrete Produkt.","ref":""},{"kind":"citation","text":"","ref":"S3"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei alten Zweigen sind drei F\u00e4lle sauber zu trennen. Ein regul\u00e4r unterst\u00fctzter PHP-Release erh\u00e4lt die vom PHP-Projekt ver\u00f6ffentlichten Sicherheitsupdates. Ein Distributions- oder Anbieter-Backport kann den Fix trotz abweichender sichtbarer Versionsnummer enthalten, muss aber durch die Sicherheitsmeldung oder das Changelog dieses Anbieters belegt sein. Selbst gepflegter Quellcode verlangt dagegen eigene Build-, Test- und Betriebsverantwortung; er ist kein gleichwertiger Ersatz f\u00fcr einen regul\u00e4ren Updatekanal.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"PHP 8.1 und \u00e4ltere Zweige erhalten keine regul\u00e4ren Upstream-Releases mehr. F\u00fcr PHP 8.2 steht zwar ein korrigierter Patchstand bereit, der Zweig erreicht jedoch Ende 2026 sein Supportende. Nutze einen verf\u00fcgbaren Fix f\u00fcr die akute Lage, plane bei alten oder auslaufenden Versionen aber zus\u00e4tzlich eine getestete ","ref":""},{"kind":"strong","text":"Migration","ref":""},{"kind":"text","text":" auf einen l\u00e4nger unterst\u00fctzten Zweig.","ref":""},{"kind":"citation","text":"","ref":"S4"}]},{"type":"list","ordered":true,"items":["\u00d6ffentlich erreichbare Dienste mit ungepatchter PHP-Laufzeit zuerst aktualisieren, besonders wenn Uploads oder Verwaltungsfunktionen erreichbar sind.","Apache mit mod_php und gesch\u00e4ftskritische Shops, APIs oder Kundenportale unmittelbar danach behandeln; die offizielle Sicherheitsmeldung hebt f\u00fcr mod_php einen besonders kritischen Risikofokus hervor.","Container, Appliances und Drittprodukte anhand von Images, Inventar und Herstellerstatus erfassen; fehlende sichtbare PHP-Pakete sind kein Entwarnungssignal.","Nicht unterst\u00fctzte oder nicht zeitnah patchbare Dienste isolieren und Zugriffe einschr\u00e4nken, parallel aber verbindlich Ersatz, Upgrade oder Migration planen."],"source_ids":["S1","S3"]},{"type":"paragraph","runs":[{"kind":"text","text":"Netzsegmentierung, VPN-Pflicht oder restriktive Zugriffsregeln k\u00f6nnen bei nicht sofort patchbaren Verwaltungsoberfl\u00e4chen Zeit gewinnen. Sie sind jedoch nur ","ref":""},{"kind":"strong","text":"\u00dcbergangsma\u00dfnahmen","ref":""},{"kind":"text","text":", weil interne Nutzerkonten, kompromittierte Ger\u00e4te und falsch konfigurierte Freigaben weiterhin Angriffswege schaffen k\u00f6nnen. Wird f\u00fcr ein Produkt kein Fix angeboten oder ist der PHP-Zweig dauerhaft au\u00dferhalb des Supports, ist Ersatz oder Migration die belastbare Entscheidung.","ref":""},{"kind":"citation","text":"","ref":"S3"}]}]}]},"plan":{"reader_question":"Betrifft die aktuelle PHP-Sicherheitsl\u00fccke tats\u00e4chlich \u201edas halbe Internet\u201c, welche Systeme sind konkret gef\u00e4hrdet und welche Schritte m\u00fcssen Betreiber von Websites, Onlineshops, APIs und Servern jetzt priorisieren?","sections":[{"id":"alarmmeldung-richtig-einordnen","heading":"Die Alarmmeldung richtig einordnen","part":1,"target_words":270,"purpose":"Den zugespitzten Aufh\u00e4nger sachlich aufl\u00f6sen: Es gibt keinen Beleg f\u00fcr \u201edas halbe Internet\u201c, wohl aber ein erhebliches Risiko durch eine weit verbreitete Laufzeitumgebung. In klar getrennten Abs\u00e4tzen erkl\u00e4ren, warum Reichweite, Internet-Exponierung, Betriebsart und Patchstand wichtiger sind als pauschale Aussagen \u00fcber alle PHP-Websites.","source_ids":["S1"],"internal_link_ids":[]},{"id":"rce-und-betroffene-php-wege","heading":"Was die PHP-Schwachstellen technisch erm\u00f6glichen","part":1,"target_words":270,"purpose":"Remote Code Execution ohne vorherige Anmeldung verst\u00e4ndlich definieren und die Folgen im Kontext des Webprozess-Kontos einordnen. Anschlie\u00dfend CVE-2026-109618 und CVE-2026-109619 getrennt, ohne Exploit-Anleitung erkl\u00e4ren; Multipart-Anfragen, Uploads, Speicherknappheit und wiederverwendete Worker-Zust\u00e4nde als technische Kontexte nennen. Eine kurze Liste grenzt PHP-FPM, mod_php, php-cgi, FrankenPHP und LiteSpeed von einzelnen CMS-Fehlern ab.","source_ids":["S1","S2"],"internal_link_ids":[]},{"id":"risiko-haengt-vom-betrieb-ab","heading":"Warum nicht jede Installation gleich gef\u00e4hrdet ist","part":1,"target_words":270,"purpose":"Die Risikofaktoren anhand konkreter Konstellationen ordnen: erreichbarer Webdienst, ungepatchte Laufzeit, wiederverwendete Worker, Upload-Funktionen, Berechtigungen und eingebettetes PHP. Besonders den h\u00f6heren Risikofokus bei Apache mod_php herausstellen, ohne andere SAPIs zu verharmlosen. Abschlie\u00dfend sauber erkl\u00e4ren, warum ein fehlerfreies CMS oder eine Firewall keinen ungepatchten PHP-Interpreter ersetzt.","source_ids":["S1","S3"],"internal_link_ids":[]},{"id":"patchstaende-und-supportstatus","heading":"Sichere Patchst\u00e4nde und Supportstatus vergleichen","part":2,"target_words":270,"purpose":"Mit einer zentralen informativen Tabelle die Zweige PHP 8.2, 8.3, 8.4, 8.5 sowie 8.1 und \u00e4lter vergleichen. Tabellenspalten: betroffen bis einschlie\u00dflich, sichere Version ab, Supportstatus am 22. Oktober 2026 und empfohlene Ma\u00dfnahme. Danach erl\u00e4utern, warum ein Update innerhalb desselben Zweigs etwas anderes ist als eine Migration auf einen neueren Zweig und weshalb PHP 8.2 trotz verf\u00fcgbarem Fix mittelfristig abgel\u00f6st werden sollte.","source_ids":["S1","S4"],"internal_link_ids":[]},{"id":"web-laufzeit-zuverlaessig-pruefen","heading":"Die tats\u00e4chliche Web-Laufzeit pr\u00fcfen","part":2,"target_words":270,"purpose":"Einen sicheren Pr\u00fcfablauf f\u00fcr Managed Hosting und selbst verwaltete Systeme formulieren. Die unver\u00e4ndernden Befehle php -v und php --ini als CLI-Bestandsaufnahme einordnen, dann deren Grenze gegen\u00fcber PHP-FPM, Apache-Modul und Containern deutlich machen. Geeignete Struktur: kurzer Pr\u00fcfpfad, Praxisbeispiel mit mehreren Domains und abschlie\u00dfender Warnhinweis gegen \u00f6ffentlich erreichbare phpinfo()-Seiten.","source_ids":["S1"],"internal_link_ids":[]},{"id":"updatewege-nach-betriebsart","heading":"Updatewege nach Betriebsart planen","part":2,"target_words":270,"purpose":"Eine zweite Tabelle stellt Shared Hosting, PHP-FPM auf Linux, Apache mit mod_php, Container und eingebettetes PHP gegen\u00fcber: Ort der Versionspr\u00fcfung, zust\u00e4ndige Stelle f\u00fcr Updates und typische Besonderheit. Danach die Aktualisierung in Paketen, Images und Herstellerprodukten unterscheiden. Bei Linux-Distributionen erl\u00e4utern, weshalb Sicherheits-Backports und Paket-Changelogs ma\u00dfgeblich sein k\u00f6nnen, auch wenn die sichtbare Versionsnummer von php.net abweicht.","source_ids":["S1","S3"],"internal_link_ids":[]},{"id":"sofortmassnahmen-und-neustarts","heading":"Sofortma\u00dfnahmen ohne falsche Sicherheit","part":3,"target_words":270,"purpose":"Eine priorisierte Praxisanleitung f\u00fcr den Patch-Tag liefern: Inventarisieren, freigegebenes Sicherheitsupdate einspielen, den tats\u00e4chlich zust\u00e4ndigen Dienst kontrolliert neu starten und die Anwendung pr\u00fcfen. Tempor\u00e4re Ma\u00dfnahmen wie session.upload_progress.enabled = 0, konservative POST-Grenzen und weitere in der Sicherheitsmeldung genannte Optionen klar als begrenzte Risikoreduktion behandeln. Nebenwirkungen bei Upload-Fortschrittsanzeigen und die unzureichende Wirkung sp\u00e4ter gelesener Einstellungen erkl\u00e4ren.","source_ids":["S1"],"internal_link_ids":["I1"]},{"id":"betrieb-pruefen-und-auffaelligkeiten","heading":"Nach dem Patch Betrieb und Auff\u00e4lligkeiten pr\u00fcfen","part":3,"target_words":270,"purpose":"Beschreiben, welche Funktionspr\u00fcfungen nach dem Update sinnvoll sind: zentrale Seiten, Login, Upload, Checkout, API-Endpunkte und Fehlerprotokolle. Den Unterschied zwischen erfolgreichem Paketupdate, geladenem Webprozess und best\u00e4tigter Anwendungskompatibilit\u00e4t herausarbeiten. Ein eigener Absatz erkl\u00e4rt, dass Neustarts die Worker neu laden k\u00f6nnen, aber kein Ersatz f\u00fcr das Einspielen eines Fixes sind; bei hoher Last den Zusammenhang zwischen Worker-Auslastung und kontrollierten Wartungsfenstern einordnen.","source_ids":["S1"],"internal_link_ids":["I2"]},{"id":"prioritaeten-fuer-alte-und-versteckte-installationen","heading":"Alte und versteckte PHP-Installationen priorisieren","part":3,"target_words":270,"purpose":"Zum Abschluss eine Entscheidungslogik f\u00fcr nicht unterst\u00fctzte Zweige, Appliances, NAS-Oberfl\u00e4chen, Docker-Images und Drittprodukte geben. Anbieter-Backport, selbst gepflegten Quellcode und regul\u00e4r unterst\u00fctzte PHP-Releases deutlich voneinander abgrenzen. Eine kompakte Priorit\u00e4tenliste ordnet \u00f6ffentlich erreichbare, mod_php-basierte und gesch\u00e4ftskritische Dienste zuerst ein; zugleich erl\u00e4utern, wann Isolation oder Zugriffsbeschr\u00e4nkungen nur \u00dcbergangsma\u00dfnahmen sind und wann eine Migration notwendig wird.","source_ids":["S1","S3","S4"],"internal_link_ids":[]}]},"repairs":4,"reviews":4,"issues":[],"guard":{"content_md5":"45697999985ad1df40c2a1e13cb5b256","title":"PHP Vulnerability 2026: How to Check and Patch Vulnerable Web Services","slug":"php-security-vulnerability-2026-check-patch","excerpt":"Critical PHP vulnerabilities can put unpatched web services at risk. Learn what patch levels are required, why the web runtime matters, and how to plan updates securely.","status":"draft","featured_media":21948},"verify":{"content_md5":"45697999985ad1df40c2a1e13cb5b256","title":"PHP Vulnerability 2026: How to Check and Patch Vulnerable Web Services","slug":"php-security-vulnerability-2026-check-patch","excerpt":"Critical PHP vulnerabilities can put unpatched web services at risk. Learn what patch levels are required, why the web runtime matters, and how to plan updates securely.","status":"draft","featured_media":21948},"row_number":1908,"created_at":"2026-10-22T11:59:48+00:00","editorial_policy":{"version":"2.1.6","max_repairs":4,"review_model_from_attempt":2},"updated_at":"2026-10-22T12:07:09+00:00","verified_at":"2026-10-22T12:06:56+00:00"},"_wh_make_research":"Recherche-Briefing zum Thema \u201ePHP-Sicherheitsl\u00fccke \u2013 Wie das halbe Internet gehackt werden kann\u201c\n\nRecherche-Stand: 22. Oktober 2026\n\nLeserfrage und redaktioneller Kern\n\nDer sp\u00e4tere Artikel sollte eine zugespitzte, aber sachlich korrekte Frage beantworten: Betrifft die aktuelle PHP-Sicherheitsl\u00fccke tats\u00e4chlich \u201edas halbe Internet\u201c \u2013 und was m\u00fcssen Betreiber von Websites, Onlineshops, APIs und Servern jetzt konkret tun?\n\nDie Antwort lautet: Die Formulierung eignet sich als aufmerksamkeitsstarker Aufh\u00e4nger, darf aber nicht als belegte Gr\u00f6\u00dfenordnung erscheinen. Es gibt keinen belastbaren Nachweis daf\u00fcr, dass \u201edie H\u00e4lfte des Internets\u201c kompromittierbar sei. Gesichert ist jedoch: Die am 21. Oktober 2026 ver\u00f6ffentlichten Schwachstellen CVE-2026-109618 und CVE-2026-109619 betreffen grunds\u00e4tzlich PHP-Installationen, die Webanfragen bedienen. Dazu z\u00e4hlen PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed. Beide Fehler k\u00f6nnen laut PHP-Projekt eine nicht authentifizierte Remote Code Execution erm\u00f6glichen \u2013 also die Ausf\u00fchrung von Code unter dem Konto des Webprozesses, ohne dass ein Angreifer vorab ein Benutzerkonto ben\u00f6tigt. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nDer Artikel sollte deshalb weder \u201ePHP ist unsicher\u201c noch \u201ejede PHP-Website ist bereits gehackt\u201c behaupten. Seine Kernbotschaft lautet besser: Eine kritische Schwachstelle in einer sehr weit verbreiteten Laufzeitumgebung kann viele Dienste gleichzeitig gef\u00e4hrden. Entscheidend sind eingesetzte PHP-Version, Betriebsart, Erreichbarkeit aus dem Internet, Patch-Status und die Frage, ob PHP direkt oder eingebettet in Drittprodukte l\u00e4uft.\n\nGesicherte Fakten und empfohlene Einordnung\n\nDas PHP-Projekt ver\u00f6ffentlichte am 21. Oktober 2026 Sicherheitsupdates f\u00fcr die stabilen, unterst\u00fctzten Versionszweige PHP 8.2, 8.3, 8.4 und 8.5. Die behobenen Versionen sind PHP 8.2.35, 8.3.36, 8.4.27 und 8.5.12. Fr\u00fchere Patchst\u00e4nde innerhalb dieser Zweige sind betroffen. Das Projekt bezeichnet die Updates ausdr\u00fccklich als einzige vollst\u00e4ndige Abhilfe. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nDie beiden CVEs m\u00fcssen voneinander getrennt erkl\u00e4rt werden:\n\nCVE-2026-109618 betrifft die Behandlung von Speicherknappheit, also Out-of-Memory-Fehlern. PHP kann eine Anfrage abbrechen, w\u00e4hrend interne Datenstrukturen noch nicht vollst\u00e4ndig initialisiert sind. Beim anschlie\u00dfenden Aufr\u00e4umen der Anfrage k\u00f6nnen diese unvollst\u00e4ndigen Zust\u00e4nde weiterverwendet werden. Daraus kann Speicherbesch\u00e4digung und letztlich Codeausf\u00fchrung entstehen. Die offizielle Sicherheitsmeldung nennt unter anderem Multipart-Anfragen, Dateiuploads und Speicherverbrauch beim Parsen verschachtelter Eingaben als relevante Kontexte. ([github.com](https:\/\/github.com\/php\/php-src\/security\/advisories\/GHSA-w8hw-w9fx-j79w))\n\nCVE-2026-109619 betrifft internen, an eine Anfrage gebundenen Zustand, der nach der Freigabe seines Speichers erhalten bleiben kann. Verarbeitet derselbe Worker sp\u00e4ter eine weitere Anfrage, kann er auf diesen veralteten Zustand zugreifen, bevor die normale Initialisierung ihn zur\u00fccksetzt. Die offiziell dokumentierten Gegenma\u00dfnahmen beziehen sich unter anderem auf den Upload-Fortschritt von PHP-Sessions und auf Fehlerpfade. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nF\u00fcr die technische Erkl\u00e4rung ist wichtig: Es handelt sich nicht prim\u00e4r um einen Fehler in einem einzelnen CMS, Theme oder Plugin. Die Schwachstellen liegen in PHP selbst. Anwendungen und Hosting-Setups beeinflussen allerdings, welche Angriffspfade erreichbar sind und wie hoch das praktische Risiko ausf\u00e4llt.\n\nVoraussetzungen f\u00fcr Leser und Zielgruppen\n\nDer Beitrag sollte zwei Leserebenen verbinden:\n\nErstens Website-Betreiber im Managed Hosting. Sie ben\u00f6tigen in der Regel keine Exploit-Details, sondern eine Entscheidungshilfe: Welche PHP-Version ist f\u00fcr das jeweilige Projekt aktiv? Stellt der Hoster ein Sicherheitsupdate bereit? Kann die Anwendung nach dem Wechsel auf einen gepatchten Patchstand gepr\u00fcft werden? Bei mehreren Domains ist jede PHP-Zuweisung einzeln zu kontrollieren.\n\nZweitens Administratoren von VPS, Dedicated Servern und Containern. Sie ben\u00f6tigen einen klaren Ablauf aus Inventarisierung, Paket- oder Image-Update, Neustart der PHP-Worker und Funktionspr\u00fcfung. Dabei ist zwischen der PHP-Version im Terminal und dem tats\u00e4chlich Webanfragen verarbeitenden PHP zu unterscheiden. Ein `php -v` im Terminal kann nur die CLI-Version anzeigen; PHP-FPM, Apache-Modul oder ein Container-Image k\u00f6nnen davon abweichen.\n\nSichere Beispiele f\u00fcr den sp\u00e4teren Praxisabschnitt\n\nTerminalbefehl zur reinen Bestandsaufnahme:\n\nphp -v\n\nTerminalbefehl zur Anzeige der geladenen Konfigurationsdateien der CLI:\n\nphp --ini\n\nDiese Befehle \u00e4ndern nichts am System. Der Text muss aber klarstellen, dass sie nur die lokale CLI-Installation pr\u00fcfen. F\u00fcr einen produktiven Webdienst braucht es zus\u00e4tzlich eine Pr\u00fcfung im Hosting-Panel, in der Paketverwaltung, im Deployment-Manifest oder anhand der Laufzeitkonfiguration des jeweiligen Web-SAPI. Eine \u00f6ffentlich erreichbare `phpinfo()`-Seite sollte nicht als Standardpr\u00fcfung empfohlen werden, weil sie sensible Umgebungs- und Konfigurationsinformationen preisgeben kann.\n\nRelevante Praxisf\u00e4lle\n\nPraxisfall 1: Klassisches Shared Hosting mit CMS\n\nEine WordPress-, Joomla-, Shopware- oder individuelle PHP-Seite nutzt eine im Kundenpanel ausgew\u00e4hlte PHP-Version. Der Betreiber kann m\u00f6glicherweise keine Systempakete aktualisieren. Der Artikel sollte erkl\u00e4ren: Erst die PHP-Version je Projekt pr\u00fcfen, dann beim Hoster den Patch-Stand beziehungsweise den verf\u00fcgbaren sicheren Patchstand ermitteln. Ein Wechsel von PHP 8.3.35 auf PHP 8.3.36 ist eine Sicherheitsaktualisierung im selben Entwicklungszweig; ein Wechsel von PHP 8.2 auf 8.4 ist dagegen ein Major-\/Minor-Migrationsschritt mit m\u00f6glicher Kompatibilit\u00e4tspr\u00fcfung. Diese Ma\u00dfnahmen d\u00fcrfen nicht vermischt werden.\n\nPraxisfall 2: Linux-Server mit PHP-FPM und Reverse Proxy\n\nHier aktualisiert die Distribution h\u00e4ufig nicht auf die von php.net ver\u00f6ffentlichte Versionsnummer, sondern liefert einen Backport: Die Distributionsversion kann anders aussehen, obwohl der Sicherheitsfix enthalten ist. Deshalb ist \u201eVersionsnummer kleiner als 8.4.27\u201c bei Paketversionen allein kein endg\u00fcltiger Beweis f\u00fcr Verwundbarkeit. Der Artikel sollte zur Pr\u00fcfung der Sicherheitsmitteilung des Linux-Distributors und der Paket-Changelogs anleiten. Das PHP-Projekt weist ausdr\u00fccklich darauf hin, dass Linux-Distributionen und LTS-Anbieter die Patches vorab erhalten haben k\u00f6nnen. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nPraxisfall 3: Apache mit mod_php\n\nDieser Fall verdient eine hervorgehobene Risikoeinordnung. Das PHP-Projekt bewertet mod_php als besonders kritisch, weil ein dokumentierter Angriff bereits vor dem Ausf\u00fchren des eigentlichen Anwendungscodes ausgel\u00f6st werden kann. Das bedeutet: Ein sauber programmiertes CMS oder Framework allein sch\u00fctzt nicht, wenn die PHP-Laufzeit ungepatcht ist. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nPraxisfall 4: Container, Appliances und Softwareprodukte mit eingebettetem PHP\n\nNicht nur klassische Websites sind relevant. PHP kann Bestandteil eines Docker-Images, einer Verwaltungsoberfl\u00e4che, eines NAS, eines Netzwerkprodukts oder einer fertigen Webanwendung sein. Ein Update des Hostsystems repariert nicht automatisch das PHP in einem Image oder Appliance-Produkt. Der Artikel sollte daher eine Inventarisierung aller Images, Helm-Charts, virtuellen Appliances und Herstellerprodukte empfehlen. CERT-EU weist ausdr\u00fccklich auf Produkte hin, die PHP intern nutzen, ohne eine direkt sichtbare PHP-Installation bereitzustellen. ([cert.europa.eu](https:\/\/cert.europa.eu\/publications\/security-advisories\/2026-018\/))\n\nEntscheidungsalternativen und Priorisierung\n\nF\u00fcr unterst\u00fctzte PHP-Zweige ist ein Sicherheitsupdate innerhalb desselben Zweigs der bevorzugte Weg. Wer PHP 8.5 nutzt, aktualisiert auf mindestens 8.5.12; bei PHP 8.4 ist mindestens 8.4.27 erforderlich, bei 8.3 mindestens 8.3.36 und bei 8.2 mindestens 8.2.35. Diese Patchst\u00e4nde sind die gesicherten Fix-Versionen. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nPHP 8.1 und \u00e4ltere Zweige erhalten keine regul\u00e4ren Updates mehr vom PHP-Projekt. Zwar wurden f\u00fcr PHP 7.4, 8.0 und 8.1 minimale Quellcode-Backports bereitgestellt, doch diese sind kein Ersatz f\u00fcr einen allgemein verf\u00fcgbaren stabilen Release-Zweig und setzen eigenst\u00e4ndiges Bauen beziehungsweise eine gepflegte Anbieterbasis voraus. Im Artikel sollte klar zwischen einem vom Betriebssystemanbieter gelieferten Backport und selbst kompiliertem Quellcode unterschieden werden. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nPHP 8.2 ist am 22. Oktober 2026 noch im Sicherheits-Support, erreicht aber am 31. Dezember 2026 sein End of Life. F\u00fcr akute Abhilfe ist 8.2.35 zul\u00e4ssig; f\u00fcr die mittelfristige Planung ist eine Migration auf einen l\u00e4nger unterst\u00fctzten Zweig sinnvoll. PHP 8.3, 8.4 und 8.5 haben l\u00e4ngere Sicherheitszeitr\u00e4ume. ([php.net](https:\/\/www.php.net\/supported-versions.php))\n\nGrenzen tempor\u00e4rer Ma\u00dfnahmen\n\nTempor\u00e4re Konfigurationen d\u00fcrfen nicht als Patch verkauft werden. Das PHP-Projekt nennt Ma\u00dfnahmen, die bestimmte bekannte Pfade erschweren: administrativ erzwungenes `memory_limit=-1`, konservative Grenzen f\u00fcr POST-Daten, das Abschalten von `session.upload_progress.enabled` sowie auf PHP 8.5 das Deaktivieren von `fatal_error_backtraces`. Diese Ma\u00dfnahmen reduzieren jedoch nur Teile der Angriffsfl\u00e4che. Die offizielle Aussage bleibt: Vollst\u00e4ndig beheben l\u00e4sst sich das Risiko nur durch ein Update. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nEin sicherer Dateikonfigurations-Ausschnitt f\u00fcr den Artikel kann so aussehen:\n\nDateikonfiguration, tempor\u00e4re Risikoreduktion:\n\nsession.upload_progress.enabled = 0\n\nDabei muss direkt stehen: Nur nach Freigabe durch Verantwortliche einsetzen, die Auswirkungen auf Upload-Fortschrittsanzeigen pr\u00fcfen und anschlie\u00dfend alle PHP-Worker kontrolliert neu starten. `ini_set()` innerhalb einer Anwendung oder eine sp\u00e4t gelesene `.user.ini` reichen laut Sicherheitsmeldung nicht aus, weil die Einstellung vor dem Parsen der Anfrage gelten muss. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nTypische Fehler, die der Artikel verhindern sollte\n\nErstens: Nur den Webserver neu starten und annehmen, damit sei das Update erfolgt. Ein Neustart l\u00e4dt keine ungepatchten Pakete auf magische Weise nach.\n\nZweitens: Nur `php -v` pr\u00fcfen und die Web-Laufzeit \u00fcbersehen.\n\nDrittens: Einen Update-Stand mit einem Versionswechsel verwechseln. Patch-Update und Migration haben unterschiedliche Risiken.\n\nViertens: Alte PHP-Versionen als \u201esicher, weil hinter einer Firewall\u201c einordnen. Interne Verwaltungsoberfl\u00e4chen, VPN-Zug\u00e4nge und Drittprodukte bleiben relevante Angriffsfl\u00e4chen.\n\nF\u00fcnftens: Eine WAF oder Upload-Limits als vollst\u00e4ndige L\u00f6sung darstellen. Sie k\u00f6nnen Anfragen begrenzen, ersetzen den Sicherheitsfix aber nicht.\n\nTabellenempfehlungen f\u00fcr den fertigen Artikel\n\nEine zentrale Tabelle sollte folgende Spalten enthalten: PHP-Zweig; betroffen bis einschlie\u00dflich; sichere Version ab; Supportstatus am 22. Oktober 2026; empfohlene Ma\u00dfnahme. Die vier sicheren Versionen sind 8.2.35, 8.3.36, 8.4.27 und 8.5.12. F\u00fcr PHP 8.1 und \u00e4lter sollte die Tabelle nicht pauschal \u201egepatcht\u201c vermerken, sondern \u201ekein regul\u00e4res Upstream-Release; Anbieter-Backport pr\u00fcfen oder migrieren\u201c. ([php.net](https:\/\/www.php.net\/archive\/2026.php))\n\nEine zweite Tabelle kann Betriebsarten gegen\u00fcberstellen: PHP-FPM, Apache mod_php, php-cgi, FrankenPHP, LiteSpeed, eingebettetes PHP im Produkt. Spalten: Wo wird die tats\u00e4chliche Version gepr\u00fcft? Wer aktualisiert? Besonderheit. F\u00fcr mod_php ist der offiziell beschriebene h\u00f6here Risikofokus zu nennen; bei PHP-FPM sollte nicht behauptet werden, es sei ungef\u00e4hrlich. ([php.net](https:\/\/www.php.net\/archive\/2026.php))","_wh_make_sources":{"S1":{"id":"S1","url":"https:\/\/www.php.net\/archive\/2026.php","title":"PHP: News Archive - 2026"},"S2":{"id":"S2","url":"https:\/\/github.com\/php\/php-src\/security\/advisories\/GHSA-w8hw-w9fx-j79w","title":"RCE via OOM corruption \u00b7 Advisory \u00b7 php\/php-src \u00b7 GitHub"},"S3":{"id":"S3","url":"https:\/\/cert.europa.eu\/publications\/security-advisories\/2026-018\/","title":"CERT-EU - Critical Vulnerabilities in PHP"},"S4":{"id":"S4","url":"https:\/\/www.php.net\/supported-versions.php","title":"PHP: Supported Versions"}},"_wh_make_usage":{"research":{"input_tokens":46591,"output_tokens":3736,"response_id":"resp_065523da3776091a016ad9fad975a087d1ada66a12fbd8fd64","model":"gpt-5.6-terra","search_calls":6},"plan_efd206707ede9c95767952be2ce2da88":{"input_tokens":5456,"output_tokens":1483,"response_id":"resp_03276ce21bf0527b016ad9fb1eedcc87d184f7667277621fef","model":"gpt-5.6-terra","search_calls":0},"part1_2dd8dcbb862352557970aba0c9df0fa6":{"input_tokens":8121,"output_tokens":1651,"response_id":"resp_0a1131273a78ac43016ad9fb33e56887d1ad5c487cdddcbcd4","model":"gpt-5.6-terra","search_calls":0},"part2_1b74d36fe89db4f706c0f5b108857581":{"input_tokens":8175,"output_tokens":2260,"response_id":"resp_0beea63d02658196016ad9fb4989bc87d19b544b0bfa9fce8a","model":"gpt-5.6-terra","search_calls":0},"part3_c5d5baec87d73f08bc250f5fdcc4ac0e":{"input_tokens":8228,"output_tokens":2131,"response_id":"resp_03892bc237d7ddc1016ad9fb65006487d1bead9c909f626dd9","model":"gpt-5.6-terra","search_calls":0},"package_60101f5704ba397cc3dd7d1514aaa077":{"input_tokens":13499,"output_tokens":1490,"response_id":"resp_08c1d55729994c63016ad9fb8285bc87d18dd3ea55df7f7040","model":"gpt-5.6-terra","search_calls":0},"review_1bee2c84a03102f115fa970ff41920e6":{"input_tokens":25677,"output_tokens":902,"response_id":"resp_006d602c3957e9e7016ad9fb97dc8887d1abcb63ff33d61196","model":"gpt-5.6-sol","search_calls":1},"repair_a07463940f4a368f0c2e1c8a5345b1a6":{"input_tokens":27228,"output_tokens":1057,"response_id":"resp_0bd1d341b1878934016ad9fba5840887d19009c41c1265fd5e","model":"gpt-5.6-terra","search_calls":1},"review_1c6673629e91389d8ed9a449e7e2fb04":{"input_tokens":25683,"output_tokens":1007,"response_id":"resp_0bdc7c18c22906b5016ad9fbb0aa7887d1a545eb58d37e247e","model":"gpt-5.6-sol","search_calls":1},"repair_93de3781567c1a226ece4aea06087f48":{"input_tokens":29331,"output_tokens":1254,"response_id":"resp_0f060a6a65017543016ad9fbc405cc87d199fa150f0fc685c3","model":"gpt-5.6-sol","search_calls":1},"review_bd80cd2fe1f3ee4b40afcae495694b4e":{"input_tokens":25763,"output_tokens":1027,"response_id":"resp_0742cbb41fa1ec3a016ad9fbd0687c87d1b10222503780b7f3","model":"gpt-5.6-sol","search_calls":1},"repair_ce819983f5a310d651f9eb5333ef27a8":{"input_tokens":29700,"output_tokens":1819,"response_id":"resp_02475cdc3574b768016ad9fbe1887087d19218b06b216f2e84","model":"gpt-5.6-sol","search_calls":1},"repair_cffabe60a69f05be258549a8fade2e03":{"input_tokens":25345,"output_tokens":1395,"response_id":"resp_0363d17d82f5e541016ad9fbf1c79087d1a2e54fafe325c092","model":"gpt-5.6-sol","search_calls":1},"review_ede4208f30671e2313fd2812f5edc940":{"input_tokens":25991,"output_tokens":630,"response_id":"resp_0197b45a878634d0016ad9fbffca1487d195cfaa13d36a4348","model":"gpt-5.6-sol","search_calls":1},"image_hero":{"input_tokens":185,"output_tokens":1372,"response_id":"","model":"gpt-image-2.5-flare","search_calls":0},"image_detail1":{"input_tokens":173,"output_tokens":1372,"response_id":"","model":"gpt-image-2.5-flare","search_calls":0},"image_detail2":{"input_tokens":222,"output_tokens":1372,"response_id":"","model":"gpt-image-2.5-flare","search_calls":0}},"_wh_make_last_error":"Nur ein angehaltener, unver\u00e4nderter Entwurf mit zwei verbrauchten Korrekturen und ohne offene Antwort kann \u00fcbernommen werden.","_wh_make_write_intent":{"before":{"content_md5":"8034b5a753bee2dd18763248c1278b7b","title":"PHP Vulnerability 2026: How to Check and Patch Vulnerable Web Services","slug":"php-security-vulnerability-2026-check-patch","excerpt":"Critical PHP vulnerabilities can put unpatched web services at risk. Learn what patch levels are required, why the web runtime matters, and how to plan updates securely.","status":"draft","featured_media":0},"expected":{"content_md5":"45697999985ad1df40c2a1e13cb5b256","title":"PHP Vulnerability 2026: How to Check and Patch Vulnerable Web Services","slug":"php-security-vulnerability-2026-check-patch","excerpt":"Critical PHP vulnerabilities can put unpatched web services at risk. Learn what patch levels are required, why the web runtime matters, and how to plan updates securely.","status":"draft","featured_media":21948},"at":"2026-10-22T12:06:45+00:00"},"_wh_make_design_version":"2.1.18","rank_math_title":"PHP-Sicherheitsl\u00fccke 2026 richtig patchen","_wh_make_doc":{"title":"PHP Vulnerability 2026: How to Check and Patch Vulnerable Web Services","slug":"php-security-vulnerability-2026-check-patch","excerpt":"Critical PHP vulnerabilities can put unpatched web services at risk. Learn what patch levels are required, why the web runtime matters, and how to plan updates securely.","seo":{"title":"How to Properly Patch the 2026 PHP Vulnerability","description":"Check for critical PHP vulnerabilities: identify secure versions, detect the web runtime, schedule updates based on operating mode, and restart services in a controlled manner.","focus_keyword":"PHP Sicherheitsl\u00fccke patchen"},"lead":[{"kind":"text","text":"Nein, nicht \u201edas halbe Internet\u201c ist nachweislich betroffen. Doch ungepatchte PHP-Webdienste k\u00f6nnen durch zwei kritische Schwachstellen ohne vorherige Anmeldung gef\u00e4hrdet sein. Pr\u00fcfe daher zuerst die ","ref":""},{"kind":"strong","text":"tats\u00e4chliche Web-Laufzeit","ref":""},{"kind":"text","text":" statt nur PHP in der Shell, installiere den freigegebenen Sicherheitsfix und starte die betroffenen Worker kontrolliert neu. Besonders wichtig sind \u00f6ffentlich erreichbare Dienste, mod_php sowie Container und Produkte mit eingebettetem PHP.","ref":""},{"kind":"citation","text":"","ref":"S1"}],"images":{"hero":{"prompt":"Fotorealistisches redaktionelles Smartphonefoto, ungestellte Alltagsszene in einem leicht genutzten kleinen B\u00fcro bei Tageslicht: Eine individuell wirkende Frau Anfang 50 mit hellem Hautton, schulterlangen dunklen engen Locken, ovalem Gesicht und durchschnittlichem K\u00f6rperbau sitzt seitlich an einem einfachen Schreibtisch und pr\u00fcft konzentriert ein Hosting-Kundenpanel auf einem Monitor, Bildschirm ohne lesbaren Text oder Logos. Im Vordergrund ein Notizblock und eine Kaffeetasse, normale Kabel und Gebrauchsspuren, neutraler Bildausschnitt, nat\u00fcrliche Farben, leichte K\u00f6rnung, echte Hautstruktur, kein Stockfoto- oder Hochglanzlook.","alt":"Betreiberin pr\u00fcft an einem Arbeitsplatz die PHP-Einstellung eines Webprojekts.","caption":"KI-generiertes Symbolbild: Die aktive PHP-Laufzeit wird je Webprojekt und Betriebsart gepr\u00fcft.","filename_base":"php-sicherheitsluecke-web-laufzeit-pruefen","section_id":"","after_block":0},"detail1":{"prompt":"Fotorealistisches Smartphonefoto, sachliche Nahaufnahme ohne Menschen in einem normalen Technikraum: ein gebrauchter 19-Zoll-Serverschrank mit wenigen aktiven Ger\u00e4ten und sauber gef\u00fchrten Netzwerkleitungen, im Fokus eine kleine Beschriftungsfreie Statusanzeige und ein angeschlossener Verwaltungsrechner am Rand ohne lesbare Oberfl\u00e4che. Vorhandenes warmes Raumlicht, glaubw\u00fcrdige Staubspuren und leichte Gebrauchsspuren an Metall und Kunststoff, mittlere Sch\u00e4rfentiefe, leicht unperfekter Ausschnitt, nat\u00fcrliche Farben, keine Logos, kein Text, kein futuristischer CGI-Look.","alt":"Technikraum mit Serverhardware als Symbol f\u00fcr die Pr\u00fcfung von PHP-Webdiensten.","caption":"KI-generiertes Symbolbild: Die PHP-Version muss am Dienst gepr\u00fcft werden, der Webanfragen verarbeitet.","filename_base":"php-webdienst-server-pruefung","section_id":"web-laufzeit-zuverlaessig-pruefen","after_block":3},"detail2":{"prompt":"Glaubw\u00fcrdiges ungestelltes Smartphonefoto in einer kleinen, normal genutzten Werkstatt-Ecke eines B\u00fcros bei vorhandenem Deckenlicht: Ein individuell wirkender Mann Ende 40 mit hellem Hautton, kurzem rotbraunem Haar, kantigem Gesicht, kr\u00e4ftiger Statur und rechteckiger Brille pr\u00fcft konzentriert auf einem Tablet eine gesch\u00fctzte Herstellerinformation zu einer kompakten, unbeschrifteten Netzwerk-Appliance im Regal; Display nur als undeutliche Oberfl\u00e4che ohne lesbaren Text oder Logos. Daneben liegen ein handschriftlicher Inventarzettel und ein Stift. Plausible Anschl\u00fcsse, leichte Gebrauchsspuren, echte Hautstruktur, nat\u00fcrliche Farben, normale Sch\u00e4rfentiefe, leicht unperfekter Ausschnitt und geringe Bildk\u00f6rnung, kein Studio-, Werbe- oder CGI-Look.","alt":"Administrator pr\u00fcft Herstellerinformationen zu einer Netzwerk-Appliance mit eingebettetem PHP.","caption":"KI-generiertes Symbolbild: Bei Appliances sind Herstellerbewertung und produktspezifischer Updateweg zu pr\u00fcfen; dargestellt ist kein allgemeiner Updatevorgang.","filename_base":"eingebettetes-php-appliance-herstellerhinweis","section_id":"prioritaeten-fuer-alte-und-versteckte-installationen","after_block":1}},"chart":null,"social":{"facebook":"Kritische PHP-L\u00fccken betreffen nicht automatisch jede Website \u2013 aber ungepatchte Web-Laufzeiten k\u00f6nnen ein erhebliches Risiko sein. Der Leitfaden zeigt Patchst\u00e4nde, Pr\u00fcfwege und Priorit\u00e4ten f\u00fcr Hosting, Server und Container.","instagram":"PHP-Update nicht aufschieben: Entscheidend ist die PHP-Version, die echte Webanfragen verarbeitet. Pr\u00fcfe Domains, FPM, Container und eingebettete Produkte getrennt. #PHPSicherheit #Webhosting #Updates","tiktok":"PHP in der Shell ist nicht zwingend PHP im Webdienst. Warum du FPM, Container und Hosting-Panel separat pr\u00fcfen musst \u2013 plus sichere Patchst\u00e4nde im \u00dcberblick.","youtube":"PHP-Sicherheitsl\u00fccke 2026: Welche Dienste betroffen sein k\u00f6nnen, wie du die tats\u00e4chliche Web-Laufzeit pr\u00fcfst und warum Patchen wichtiger ist als ein blo\u00dfer Neustart.","threads":"\u201eDas halbe Internet\u201c ist keine belegte Zahl. Trotzdem sind kritische PHP-L\u00fccken ein Anlass, den tats\u00e4chlichen Web-Interpreter, Patchstand und Updateweg je Dienst sofort zu pr\u00fcfen.","x":"Kritische PHP-L\u00fccken: Nicht jede PHP-Website ist automatisch betroffen, aber ungepatchte Web-Laufzeiten m\u00fcssen priorisiert werden. Pr\u00fcfe FPM, mod_php, Container und eingebettete Produkte \u2013 nicht nur `php -v`."},"avatar_script":"Die Schlagzeile klingt gro\u00df, aber die richtige Frage ist konkreter: Welche PHP-Laufzeit verarbeitet deine Webanfragen wirklich? Zwei kritische Schwachstellen betreffen ungepatchte PHP-Webdienste und k\u00f6nnen unter bestimmten Bedingungen Codeausf\u00fchrung erm\u00f6glichen. Pr\u00fcfe deshalb nicht nur die Ausgabe von php -v in der Shell. Entscheidend sind auch PHP-FPM, Apache mit mod_php, Container und Produkte, in denen PHP versteckt eingebettet ist. Installiere den vom Hoster, Distributor oder Hersteller bereitgestellten Fix, starte anschlie\u00dfend den zust\u00e4ndigen Dienst kontrolliert neu und teste wichtige Abl\u00e4ufe wie Login, Formulare, Uploads und APIs. Eine WAF oder ein Neustart ohne Update sind keine vollst\u00e4ndige L\u00f6sung.","version_note":"Recherche-Stand: 22. Oktober 2026. Patchst\u00e4nde und Supportangaben beziehen sich auf die bereitgestellten PHP- und CERT-EU-Quellen; bei Distributionspaketen sind dokumentierte Sicherheits-Backports gesondert zu pr\u00fcfen.","sections":[{"id":"alarmmeldung-richtig-einordnen","heading":"Die Alarmmeldung richtig einordnen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Die Aussage, eine PHP-Sicherheitsl\u00fccke k\u00f6nne \u201edas halbe Internet\u201c betreffen, ist ein zugespitzter Aufh\u00e4nger, aber keine belegte Gr\u00f6\u00dfenordnung. Es gibt keinen Nachweis, dass die H\u00e4lfte aller Internetdienste verwundbar oder bereits kompromittiert ist. Das tats\u00e4chliche Risiko ist dennoch erheblich, weil PHP als Laufzeitumgebung in vielen Websites, Shops, APIs und Verwaltungsoberfl\u00e4chen eingesetzt wird.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Entscheidend ist nicht, ob eine Website PHP nutzt, sondern welche PHP-Version ihre Webanfragen verarbeitet. Die Sicherheitsupdates vom 21. Oktober 2026 betreffen grunds\u00e4tzlich ungepatchte Installationen der unterst\u00fctzten Zweige, sofern sie Anfragen \u00fcber einen Webdienst bedienen. Ein lokales PHP f\u00fcr Entwicklungsaufgaben ist daher anders zu bewerten als ein von au\u00dfen erreichbares Kundenportal.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die ","ref":""},{"kind":"strong","text":"Internet-Exponierung","ref":""},{"kind":"text","text":" bestimmt die Dringlichkeit wesentlich. Ein \u00f6ffentlich erreichbarer Shop mit Formularen und Uploads bietet mehr m\u00f6gliche Ber\u00fchrungspunkte als ein abgeschotteter interner Dienst. Auch ein interner Dienst ist aber nicht automatisch sicher: VPN-Zug\u00e4nge, kompromittierte Konten oder andere Systeme im Netzwerk k\u00f6nnen ihn erreichbar machen. Reichweite allein ersetzt deshalb keine technische Risikopr\u00fcfung.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ebenso wichtig sind Betriebsart und ","ref":""},{"kind":"strong","text":"Patchstand","ref":""},{"kind":"text","text":". PHP kann etwa \u00fcber PHP-FPM, als Apache-Modul, per php-cgi oder eingebettet in ein Produkt laufen. Mehrere Domains auf demselben Server k\u00f6nnen dabei unterschiedliche Versionen und Aktualisierungswege haben. Eine pauschale Entwarnung f\u00fcr alle PHP-Websites w\u00e4re ebenso falsch wie die Annahme, jede Installation sei unmittelbar angreifbar.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"rce-und-betroffene-php-wege","heading":"Was die PHP-Schwachstellen technisch erm\u00f6glichen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Eine ","ref":""},{"kind":"strong","text":"Remote Code Execution","ref":""},{"kind":"text","text":" (RCE) bedeutet, dass ein Angreifer unter bestimmten Bedingungen Code auf einem entfernten System ausf\u00fchren kann. Bei diesen PHP-Schwachstellen ist laut Sicherheitsmeldung keine vorherige Anmeldung erforderlich. Ausgef\u00fchrt w\u00fcrde der Code zun\u00e4chst mit den Rechten des Webprozesses, nicht automatisch mit uneingeschr\u00e4nkten Administratorrechten. Die m\u00f6glichen Folgen h\u00e4ngen daher stark von Dateirechten, Zugangsdaten und der Servertrennung ab.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"CVE-2026-109618 betrifft Fehlerpfade bei ","ref":""},{"kind":"strong","text":"Speicherknappheit","ref":""},{"kind":"text","text":". Bricht PHP eine Anfrage wegen eines Out-of-Memory-Zustands ab, k\u00f6nnen interne Datenstrukturen unvollst\u00e4ndig bleiben. Werden solche Zust\u00e4nde beim Aufr\u00e4umen der Anfrage weiterverwendet, kann Speicherbesch\u00e4digung entstehen. Die offizielle Beschreibung nennt insbesondere Multipart-Anfragen, Dateiuploads und den Speicherverbrauch beim Parsen verschachtelter Eingaben als relevante technische Kontexte.","ref":""},{"kind":"citation","text":"","ref":"S2"}]},{"type":"paragraph","runs":[{"kind":"text","text":"CVE-2026-109619 betrifft dagegen an eine Anfrage gebundenen internen Zustand, dessen Speicher bereits freigegeben wurde. Verarbeitet ein wiederverwendeter Worker danach eine weitere Anfrage, kann PHP auf diesen veralteten Zustand zugreifen, bevor die normale Initialisierung greift. Die Sicherheitsmeldung verweist dabei unter anderem auf den Upload-Fortschritt von Sessions und Fehlerpfade. Das beschreibt die Fehlerklasse, nicht eine Anleitung zur Ausnutzung.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"list","ordered":false,"items":["Betroffen sein k\u00f6nnen Webanfragen \u00fcber PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed.","Die Fehler liegen in der PHP-Laufzeit, nicht prim\u00e4r in WordPress, Joomla, Shopware, Themes oder einzelnen Plugins.","CMS und Frameworks beeinflussen erreichbare Funktionen wie Uploads, ersetzen aber kein Update des Interpreters."],"source_ids":["S1","S2"]}]},{"id":"risiko-haengt-vom-betrieb-ab","heading":"Warum nicht jede Installation gleich gef\u00e4hrdet ist","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Ob ein Dienst praktisch gef\u00e4hrdet ist, ergibt sich aus mehreren Faktoren. Vorrang haben eine ungepatchte PHP-Web-Laufzeit und ein erreichbarer Webdienst. Danach z\u00e4hlen die Betriebsart, wiederverwendete Prozesse, Funktionen f\u00fcr Uploads oder komplexe Formulare sowie die Rechte des Webprozess-Kontos. Ein Dienst mit weitreichendem Schreibzugriff auf Webdateien oder Zugang zu weiteren Diensten kann schwerere Folgen haben als ein strikt isoliertes Projekt.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei Apache mit ","ref":""},{"kind":"strong","text":"mod_php","ref":""},{"kind":"text","text":" hebt das PHP-Projekt den Risikofokus besonders hervor: Ein dokumentierter Angriff kann bereits vor der Ausf\u00fchrung des eigentlichen Anwendungscodes ausgel\u00f6st werden. Ein sauber gepflegtes CMS sch\u00fctzt dann nicht vor der Schwachstelle in der Laufzeit. Das bedeutet nicht, dass PHP-FPM, php-cgi, FrankenPHP oder LiteSpeed als ungef\u00e4hrlich gelten; sie m\u00fcssen bei einem ungepatchten Stand ebenfalls priorisiert gepr\u00fcft werden.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Aufmerksamkeit brauchen au\u00dferdem Produkte mit ","ref":""},{"kind":"strong","text":"eingebettetem PHP","ref":""},{"kind":"text","text":". Dazu k\u00f6nnen Container-Images, Appliances, NAS-Verwaltungen oder Netzwerkprodukte geh\u00f6ren, deren Oberfl\u00e4che PHP intern verwendet. Dort zeigt ein Befehl auf dem Host oft nicht die tats\u00e4chlich eingesetzte Laufzeit. Das Update des Betriebssystems behebt auch nicht automatisch eine verwundbare PHP-Komponente in einem Image oder Herstellerprodukt.","ref":""},{"kind":"citation","text":"","ref":"S3"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Eine Firewall, Web Application Firewall oder restriktive Upload-Limits k\u00f6nnen einzelne Anfragen erschweren und die Angriffsfl\u00e4che begrenzen. Sie sind jedoch kein Ersatz f\u00fcr den Fix, weil sie nicht die fehlerhafte Speicher- und Zustandsverwaltung im Interpreter korrigieren. Auch ein fehlerfreies CMS bleibt auf eine sichere Laufzeit angewiesen. Ma\u00dfgeblich ist deshalb, den Patchstand des tats\u00e4chlich Webanfragen verarbeitenden PHP zu pr\u00fcfen und zu aktualisieren.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"patchstaende-und-supportstatus","heading":"Sichere Patchst\u00e4nde und Supportstatus vergleichen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr die beiden Sicherheitsl\u00fccken z\u00e4hlt zun\u00e4chst der Patchstand innerhalb des eingesetzten PHP-Zweigs. Das PHP-Projekt nennt f\u00fcr die unterst\u00fctzten Reihen konkrete korrigierte Releases. Fr\u00fchere Patchst\u00e4nde derselben Reihe gelten als betroffen; ein Upgrade auf die angegebene oder eine neuere Version dieses Zweigs ist die vorgesehene vollst\u00e4ndige Abhilfe.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"table","caption":"PHP-Zweige: Patchst\u00e4nde und Supportlage am 22. Oktober 2026","headers":["PHP-Zweig","Betroffen bis einschlie\u00dflich","Sichere Version ab","Supportstatus am 22. Oktober 2026","Empfohlene Ma\u00dfnahme"],"rows":[["PHP 8.2","8.2.34","8.2.35","Nur Sicherheitsupdates bis 31. Dezember 2026","Kurzfristig auf mindestens 8.2.35 aktualisieren und Migration planen."],["PHP 8.3","8.3.35","8.3.36","Nur Sicherheitsupdates bis 31. Dezember 2027","Auf mindestens 8.3.36 aktualisieren."],["PHP 8.4","8.4.26","8.4.27","Aktiver Support bis 31. Dezember 2026","Auf mindestens 8.4.27 aktualisieren."],["PHP 8.5","8.5.11","8.5.12","Aktiver Support bis 31. Dezember 2027","Auf mindestens 8.5.12 aktualisieren."],["PHP 8.1 und \u00e4lter","Kein regul\u00e4res aktuelles Upstream-Release","Kein allgemein verf\u00fcgbares regul\u00e4res Fix-Release","Nicht regul\u00e4r vom PHP-Projekt unterst\u00fctzt","Anbieter-Backport pr\u00fcfen oder auf einen unterst\u00fctzten Zweig migrieren."]],"source_ids":["S1","S4"]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein ","ref":""},{"kind":"strong","text":"Patch-Update","ref":""},{"kind":"text","text":" bleibt in derselben Entwicklungsreihe, etwa von 8.3.35 auf 8.3.36. Es soll den Sicherheitsfix bereitstellen und hat einen engeren Kompatibilit\u00e4tsrahmen als ein Wechsel von 8.2 auf 8.4. Letzterer ist eine Migration: Abh\u00e4ngigkeiten, Erweiterungen, Anwendungscode und gegebenenfalls das Deployment m\u00fcssen daf\u00fcr separat gepr\u00fcft werden.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"PHP 8.2 ist f\u00fcr die akute Behebung weiterhin nutzbar, sofern mindestens Version 8.2.35 l\u00e4uft. Der Zweig erreicht jedoch am 31. Dezember 2026 sein Supportende. Deshalb sollte ein Betrieb nicht bei diesem Sofortschritt stehen bleiben: Plane die Umstellung auf einen l\u00e4nger unterst\u00fctzten Zweig, nachdem die Anwendung in einer geeigneten Umgebung auf Kompatibilit\u00e4t gepr\u00fcft wurde.","ref":""},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei PHP 8.1 und \u00e4lter ist besondere Vorsicht n\u00f6tig. Das PHP-Projekt stellt daf\u00fcr kein regul\u00e4res aktuelles Release bereit; minimale Quellcode-Backports sind nicht mit einem allgemein verf\u00fcgbaren, gepflegten Paket gleichzusetzen. Ein vom Betriebssystemanbieter dokumentierter Sicherheits-Backport kann angemessen sein, erfordert aber einen Nachweis im Security Advisory oder Paket-Changelog. Fehlt er, ist eine Migration statt einer blo\u00dfen Versionskosmetik n\u00f6tig.","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"web-laufzeit-zuverlaessig-pruefen","heading":"Die tats\u00e4chliche Web-Laufzeit pr\u00fcfen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Die Versionspr\u00fcfung beginnt mit einer Bestandsaufnahme, darf aber nicht bei der Shell enden. Auf einem selbst verwalteten Server zeigen die folgenden Befehle die Version des dort aufgerufenen PHP-Befehls und die von diesem Aufruf gefundenen Konfigurationsdateien. Sie ver\u00e4ndern weder Pakete noch Konfiguration und eignen sich daher als erster, risikoarmer Pr\u00fcfschritt.","ref":""}]},{"type":"code","language":"bash","code":"php -v\nphp --ini","source_ids":[]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Ausgabe beschreibt nur die \u00fcber diesen Shell-Befehl aufgerufene ","ref":""},{"kind":"strong","text":"CLI-Laufzeit","ref":""},{"kind":"text","text":". Eine Website kann dagegen \u00fcber PHP-FPM, Apache mit mod_php, php-cgi oder einen Container bedient werden. Diese Web-Laufzeit kann eine andere PHP-Version und andere Konfigurationsdateien nutzen als der Befehl ","ref":""},{"kind":"code","text":"php -v","ref":""},{"kind":"text","text":" auf dem Host. F\u00fcr die Sicherheitsbewertung ist der Prozess ma\u00dfgeblich, der reale HTTP-Anfragen verarbeitet.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Im Managed Hosting pr\u00fcfst du deshalb im Kundenpanel die pro Projekt oder Domain ausgew\u00e4hlte PHP-Version und fragst bei Bedarf den Patchstand des bereitgestellten Dienstes ab. Bei mehreren Domains ist jede Zuweisung einzeln zu kontrollieren: Eine Hauptdomain kann bereits den gepatchten Zweig verwenden, w\u00e4hrend ein Shop, eine Staging-Instanz oder eine Subdomain noch einen \u00e4lteren Interpreter nutzt.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auf Servern mit PHP-FPM geh\u00f6ren Service-Konfiguration, Paketbestand und Deployment-Unterlagen zusammen. In Container-Umgebungen pr\u00fcfst du zus\u00e4tzlich das tats\u00e4chlich ausgerollte Image und nicht nur ein lokales Build-Manifest. Entscheidend ist, welche Revision im laufenden Pod oder Container Webanfragen annimmt; ein aktualisiertes Basisimage sch\u00fctzt keine bereits laufende \u00e4ltere Instanz.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"callout","variant":"warning","title":"Keine \u00f6ffentliche Diagnose-Seite","runs":[{"kind":"text","text":"Eine \u00f6ffentlich erreichbare ","ref":""},{"kind":"code","text":"phpinfo()","ref":""},{"kind":"text","text":"-Seite ist keine empfehlenswerte Standardpr\u00fcfung. Sie kann Versions-, Modul-, Pfad- und Konfigurationsdaten offenlegen. Nutze stattdessen Zug\u00e4nge des Hosting-Panels, die Serververwaltung oder intern gesch\u00fctzte Betriebsdokumentation.","ref":""}]}]},{"id":"updatewege-nach-betriebsart","heading":"Updatewege nach Betriebsart planen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Der geeignete Updateweg richtet sich danach, wer den Interpreter ausliefert und wo er betrieben wird. Erst wenn dieser Verantwortungsbereich klar ist, l\u00e4sst sich zuverl\u00e4ssig entscheiden, ob ein Panel-Wechsel, ein Paketupdate, ein neues Image oder ein Herstellerupdate erforderlich ist. Die folgende Einordnung trennt diese F\u00e4lle, ohne die Betriebsarten hinsichtlich ihres Risikos gleichzusetzen.","ref":""}]},{"type":"table","caption":"Versionspr\u00fcfung und Aktualisierung nach PHP-Betriebsart","headers":["Betriebsart","Wo die tats\u00e4chliche Version pr\u00fcfen?","Wer aktualisiert?","Typische Besonderheit"],"rows":[["Shared Hosting","Kundenpanel je Domain oder Projekt; Auskunft des Hosters","Hosting-Anbieter oder Kunde \u00fcber freigegebene Auswahl","PHP-Zuweisungen k\u00f6nnen zwischen Domains abweichen."],["PHP-FPM auf Linux","FPM-Pool, installierte Pakete, Dienst- und Deployment-Konfiguration","Serveradministration oder Distribution","Paketversion kann einen dokumentierten Sicherheits-Backport enthalten."],["Apache mit mod_php","Apache-Modulkonfiguration und installierte Pakete","Serveradministration oder Distribution","Vom PHP-Projekt mit besonderem Risikofokus beschrieben."],["Container","Laufendes Image, Image-Tag oder Digest sowie Container-Laufzeit","Team f\u00fcr Build und Deployment","Host-Updates \u00e4ndern das eingebettete PHP im Image nicht automatisch."],["Eingebettetes PHP im Produkt","Herstellerdokumentation, Produktversion und Security Advisory","Produkthersteller oder Produktadministration","PHP kann ohne separat sichtbare Installation Teil einer Appliance sein."]],"source_ids":["S1","S3"]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei Shared Hosting sollte der Anbieter den sicheren Patchstand f\u00fcr die gew\u00e4hlte PHP-Reihe bereitstellen; der Betreiber pr\u00fcft anschlie\u00dfend die Anwendung. Bei PHP-FPM oder mod_php aktualisiert die Administration in der Regel die Pakete und startet danach den tats\u00e4chlich zust\u00e4ndigen Dienst kontrolliert neu. Ein reiner Neustart ohne eingespielten Fix ersetzt das Update nicht.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Linux-Distributionen liefern Sicherheitskorrekturen h\u00e4ufig als ","ref":""},{"kind":"strong","text":"Backport","ref":""},{"kind":"text","text":". Dann kann die sichtbare Paketversionsnummer von den Releases auf php.net abweichen, obwohl der Fix enthalten ist. Vergleiche daher nicht nur Zeichenketten wie \u201e8.4.26\u201c, sondern lies die Sicherheitsmitteilung und das Changelog des Distributors. Das PHP-Projekt weist darauf hin, dass Distributionen und LTS-Anbieter Patches erhalten k\u00f6nnen.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Container verlangen einen eigenen Ablauf: ein korrigiertes Image bauen oder vom Anbieter beziehen, dieses ausrollen und alte Instanzen ersetzen. Bei NAS-Oberfl\u00e4chen, Netzwerkger\u00e4ten oder fertigen Webanwendungen liegt die Korrektur dagegen beim Herstellerprodukt. Ein Patch des Hostbetriebssystems erreicht dort nicht zwangsl\u00e4ufig den eingebetteten Interpreter; Inventarisierung und Herstellerhinweise bleiben deshalb unverzichtbar.","ref":""},{"kind":"citation","text":"","ref":"S3"}]}]},{"id":"sofortmassnahmen-und-neustarts","heading":"Sofortma\u00dfnahmen ohne falsche Sicherheit","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Am Patch-Tag verschaffst du dir zuerst ein belastbares Inventar: Domains, APIs, Verwaltungsoberfl\u00e4chen, Container und Produkte mit m\u00f6glichem eingebettetem PHP. Notiere je Dienst die Web-Betriebsart, den verantwortlichen Updateweg und die tats\u00e4chlich verwendete PHP-Laufzeit. Danach erh\u00e4lt jeder \u00f6ffentlich erreichbare oder gesch\u00e4ftskritische Dienst Vorrang, nicht lediglich der Server mit der auff\u00e4lligsten Versionsnummer.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Spiele anschlie\u00dfend das vom Hoster, Linux-Distributor, Image- oder Produkthersteller freigegebene Sicherheitsupdate ein. F\u00fcr die unterst\u00fctzten PHP-Zweige ist das Update auf den korrigierten Patchstand die vollst\u00e4ndige Abhilfe; eine WAF, Upload-Regeln oder ein Webserver-Neustart ersetzen es nicht. Plane den Vorgang so, dass Paket-, Image- oder Herstellerupdate nachvollziehbar dokumentiert und bei Problemen zur\u00fcckverfolgt werden kann.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Nach der Aktualisierung m\u00fcssen ","ref":""},{"kind":"strong","text":"alle alten Worker","ref":""},{"kind":"text","text":" beendet und durch Prozesse ersetzt werden, die nachweislich die gepatchte Laufzeit geladen haben. Verwende einen Reload nur, wenn die konkrete Dienstverwaltung diesen vollst\u00e4ndigen Austausch sicherstellt; andernfalls ist ein kontrollierter Neustart erforderlich. Pr\u00fcfe anschlie\u00dfend Prozessstartzeiten, Dienststatus oder die intern ermittelte Web-Laufzeit, statt den Austausch lediglich anzunehmen. Bei Containern rollst du das korrigierte Image aus und entfernst s\u00e4mtliche alten Instanzen.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Kontrolliere danach zentrale Anwendungswege wie Anmeldung, Formulare, Uploads, Checkout und APIs. Die Tests zeigen, ob Anwendung und Erweiterungen mit dem aktualisierten Patchstand funktionieren; sie belegen allein jedoch weder den vollst\u00e4ndigen Worker-Austausch noch die Abwesenheit einer fr\u00fcheren Kompromittierung. Diese Punkte m\u00fcssen \u00fcber Betriebs- und Sicherheitspr\u00fcfungen getrennt bewertet werden.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Falls ein Patch kurzfristig nicht m\u00f6glich ist, k\u00f6nnen einzelne Einstellungen bekannte Angriffspfade begrenzen, aber keine vollst\u00e4ndige Sicherheit herstellen. Das Abschalten des Upload-Fortschritts muss vor dem Parsen einer Anfrage wirksam sein. Pr\u00fcfe vorab, ob Anwendungen oder Oberfl\u00e4chen diese Fortschrittsanzeige ben\u00f6tigen, und starte danach jeden zust\u00e4ndigen PHP-Worker neu. Verifiziere anschlie\u00dfend, dass kein alter Prozess mit der vorherigen Einstellung weiterarbeitet.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"code","language":"ini","code":"session.upload_progress.enabled = 0","source_ids":["S1"]},{"type":"paragraph","runs":[{"kind":"text","text":"Konservative Grenzen f\u00fcr POST-Daten und weitere in der Sicherheitsmeldung genannte Optionen k\u00f6nnen die Angriffsfl\u00e4che ebenfalls nur teilweise reduzieren. Sp\u00e4t gelesene ","ref":""},{"kind":"code","text":".user.ini","ref":""},{"kind":"text","text":"-Dateien oder ein ","ref":""},{"kind":"code","text":"ini_set()","ref":""},{"kind":"text","text":" innerhalb der Anwendung reichen f\u00fcr diese Einstellung nicht aus. Behandle solche Ma\u00dfnahmen als befristete Risikoreduktion und halte am Sicherheitsupdate als Ziel fest.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Davon zu unterscheiden ist die regul\u00e4re Verwaltung gespeicherter Sitzungen. Der Beitrag zur ","ref":""},{"kind":"internal_link","text":"PHP Session Garbage Collection","ref":"I1"},{"kind":"text","text":" erkl\u00e4rt, wie Bereinigung, Dateizugriffe und Worker im normalen Betrieb zusammenspielen. Diese Betriebsoptimierung behebt die hier behandelten Schwachstellen jedoch nicht und ersetzt weder den korrigierten PHP-Patchstand noch den anschlie\u00dfenden Austausch der laufenden Prozesse.","ref":""}]}]},{"id":"betrieb-pruefen-und-auffaelligkeiten","heading":"Nach dem Patch Betrieb und Auff\u00e4lligkeiten pr\u00fcfen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Ein erfolgreich abgeschlossenes Paketupdate belegt zun\u00e4chst nur, dass Dateien oder Pakete installiert wurden. Es best\u00e4tigt weder, dass der Webprozess die neue Laufzeit geladen hat, noch dass die Anwendung damit fehlerfrei arbeitet. Pr\u00fcfe deshalb nach dem Neustart die f\u00fcr den Dienst ma\u00dfgebliche Web-Laufzeit und dokumentiere Zeitpunkt, Version, neu gestarteten Dienst sowie das Ergebnis der Funktionskontrolle.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Funktionspr\u00fcfung sollte reale Kernabl\u00e4ufe abdecken: wichtige \u00f6ffentliche Seiten, Anmeldung und Abmeldung, Formularversand, Datei-Upload, Checkout oder Buchung sowie API-Endpunkte und Hintergrundaufgaben. Teste nur Vorg\u00e4nge, f\u00fcr die du berechtigt bist, und nutze bei produktiven Shops m\u00f6glichst daf\u00fcr vorgesehene Testdaten. Kontrolliere parallel Webserver-, PHP- und Anwendungsprotokolle auf neue Fehler, wiederholte Abst\u00fcrze oder unerwartete Statuscodes.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein Neustart ist notwendig, um langlebige Prozesse und ","ref":""},{"kind":"strong","text":"Worker","ref":""},{"kind":"text","text":" mit aktualisiertem Code zu laden, erzeugt aber selbst keinen Fix. Ohne eingespieltes Update bleibt die Schwachstelle bestehen. Bei hoher Auslastung sollte das Wartungsfenster so gew\u00e4hlt werden, dass Anfragen geordnet abflie\u00dfen k\u00f6nnen und die Auswirkungen eines Worker-Neustarts beobachtbar bleiben.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Wie stark ein kontrollierter Neustart den Durchsatz beeinflusst, h\u00e4ngt von Zahl und Auslastung der PHP-Prozesse ab. F\u00fcr die Planung hilft es, Warteschlangen, laufende Jobs und kritische Transaktionen zu ber\u00fccksichtigen, statt Prozesse unkoordiniert zu beenden. Der Leitfaden ","ref":""},{"kind":"internal_link","text":"PHP Workers verstehen","ref":"I2"},{"kind":"text","text":" erkl\u00e4rt die Rolle dieser Prozesse bei parallelen dynamischen Anfragen.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Treten nach dem Patch Auff\u00e4lligkeiten auf, unterscheide zwischen Kompatibilit\u00e4tsfehlern der Anwendung und einem unvollst\u00e4ndigen Rollout. Vergleiche Konfiguration, aktivierte Erweiterungen und die Web-Laufzeit mit dem Stand vor der Wartung. Ein Rollback darf nicht dazu f\u00fchren, dass ein \u00f6ffentlich erreichbarer Dienst dauerhaft auf dem verwundbaren Stand verbleibt; kl\u00e4re dann z\u00fcgig einen kompatiblen, gepatchten Updatepfad.","ref":""}]}]},{"id":"prioritaeten-fuer-alte-und-versteckte-installationen","heading":"Alte und versteckte PHP-Installationen priorisieren","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Aufmerksamkeit ben\u00f6tigen Systeme, auf denen PHP nicht als bewusst installierte Laufzeit sichtbar ist: Docker-Images, virtuelle Appliances, NAS- und Netzwerkoberfl\u00e4chen sowie fertige Softwareprodukte. Ein Update des Hosts aktualisiert weder automatisch ein Container-Image noch die intern mitgelieferte Laufzeit eines Herstellerprodukts. Frage deshalb Hersteller gezielt nach ihrer Bewertung und nach einem Sicherheitsupdate f\u00fcr das konkrete Produkt.","ref":""},{"kind":"citation","text":"","ref":"S3"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei alten Zweigen sind drei F\u00e4lle sauber zu trennen. Ein regul\u00e4r unterst\u00fctzter PHP-Release erh\u00e4lt die vom PHP-Projekt ver\u00f6ffentlichten Sicherheitsupdates. Ein Distributions- oder Anbieter-Backport kann den Fix trotz abweichender sichtbarer Versionsnummer enthalten, muss aber durch die Sicherheitsmeldung oder das Changelog dieses Anbieters belegt sein. Selbst gepflegter Quellcode verlangt dagegen eigene Build-, Test- und Betriebsverantwortung; er ist kein gleichwertiger Ersatz f\u00fcr einen regul\u00e4ren Updatekanal.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"PHP 8.1 und \u00e4ltere Zweige erhalten keine regul\u00e4ren Upstream-Releases mehr. F\u00fcr PHP 8.2 steht zwar ein korrigierter Patchstand bereit, der Zweig erreicht jedoch Ende 2026 sein Supportende. Nutze einen verf\u00fcgbaren Fix f\u00fcr die akute Lage, plane bei alten oder auslaufenden Versionen aber zus\u00e4tzlich eine getestete ","ref":""},{"kind":"strong","text":"Migration","ref":""},{"kind":"text","text":" auf einen l\u00e4nger unterst\u00fctzten Zweig.","ref":""},{"kind":"citation","text":"","ref":"S4"}]},{"type":"list","ordered":true,"items":["\u00d6ffentlich erreichbare Dienste mit ungepatchter PHP-Laufzeit zuerst aktualisieren, besonders wenn Uploads oder Verwaltungsfunktionen erreichbar sind.","Apache mit mod_php und gesch\u00e4ftskritische Shops, APIs oder Kundenportale unmittelbar danach behandeln; die offizielle Sicherheitsmeldung hebt f\u00fcr mod_php einen besonders kritischen Risikofokus hervor.","Container, Appliances und Drittprodukte anhand von Images, Inventar und Herstellerstatus erfassen; fehlende sichtbare PHP-Pakete sind kein Entwarnungssignal.","Nicht unterst\u00fctzte oder nicht zeitnah patchbare Dienste isolieren und Zugriffe einschr\u00e4nken, parallel aber verbindlich Ersatz, Upgrade oder Migration planen."],"source_ids":["S1","S3"]},{"type":"paragraph","runs":[{"kind":"text","text":"Netzsegmentierung, VPN-Pflicht oder restriktive Zugriffsregeln k\u00f6nnen bei nicht sofort patchbaren Verwaltungsoberfl\u00e4chen Zeit gewinnen. Sie sind jedoch nur ","ref":""},{"kind":"strong","text":"\u00dcbergangsma\u00dfnahmen","ref":""},{"kind":"text","text":", weil interne Nutzerkonten, kompromittierte Ger\u00e4te und falsch konfigurierte Freigaben weiterhin Angriffswege schaffen k\u00f6nnen. Wird f\u00fcr ein Produkt kein Fix angeboten oder ist der PHP-Zweig dauerhaft au\u00dferhalb des Supports, ist Ersatz oder Migration die belastbare Entscheidung.","ref":""},{"kind":"citation","text":"","ref":"S3"}]}]}]},"_wh_make_word_report":{"words":2498,"min":2000,"max":3000,"target":2500,"ok":true,"missing":0,"excess":0,"lead_words":58,"section_words":{"alarmmeldung-richtig-einordnen":205,"rce-und-betroffene-php-wege":208,"risiko-haengt-vom-betrieb-ab":234,"patchstaende-und-supportstatus":311,"web-laufzeit-zuverlaessig-pruefen":237,"updatewege-nach-betriebsart":318,"sofortmassnahmen-und-neustarts":368,"betrieb-pruefen-und-auffaelligkeiten":260,"prioritaeten-fuer-alte-und-versteckte-installationen":299}},"_wh_make_review":{"verdict":"pass","issues":[],"checked_source_ids":["S1","S2","S3","S4"],"summary":"Der Artikel ist fachlich schl\u00fcssig und wird von den gepr\u00fcften Quellen getragen. CVE-Trennung, betroffene Web-SAPIs, korrigierte Patchst\u00e4nde, Supportzeitr\u00e4ume und die besondere Risikoeinordnung von mod_php sind korrekt dargestellt. Patch-Updates, Migrationen und dokumentierte Anbieter-Backports werden sauber unterschieden. Die Hinweise zu CLI- und Web-Laufzeit, Worker-Neustarts, Containern, eingebettetem PHP und begrenzten \u00dcbergangsma\u00dfnahmen vermeiden falsche Sicherheit. Codebeispiele werden nicht als vollst\u00e4ndige L\u00f6sung ausgegeben. Die Bildkonzepte sind als KI-generierte Symbolbilder gekennzeichnet und zeigen keine irref\u00fchrende technische Topologie oder vorget\u00e4uschte Tests."},"_wh_make_review_doc_hash":"9382f3bb3677c50d12c325a888a5177ebc10a4f76dc51c28425f9d46a32d85e4","_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"inline_featured_image":null,"_yoast_wpseo_linkdex":null,"_eael_widget_elements":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_trp_translated_slug_en_us":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_wh_make_writer_raw":null,"_wh_make_design_backup_204":null,"_wp_desired_post_slug":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":"1","_edit_lock":"1792748654:1","_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"120","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":"2026-10-22","_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":"25","rank_math_contentai_score":null,"ilj_limitincominglinks":"","ilj_maxincominglinks":"1","ilj_limitoutgoinglinks":"","ilj_maxoutgoinglinks":"1","ilj_limitlinksperparagraph":"","ilj_linksperparagraph":"1","ilj_blacklistdefinition":[],"ilj_linkdefinition":[],"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"PHP Sicherheitsl\u00fccke patchen","rank_math_og_content_image":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"21948","_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":"Kritische PHP-L\u00fccken pr\u00fcfen: sichere Versionen, Web-Laufzeit erkennen, Updates nach Betriebsart planen und Dienste kontrolliert neu starten.","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts\/21942","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/comments?post=21942"}],"version-history":[{"count":6,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts\/21942\/revisions"}],"predecessor-version":[{"id":21951,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts\/21942\/revisions\/21951"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/media\/21948"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/media?parent=21942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/categories?post=21942"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/tags?post=21942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}