<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Nextcloud on Schallberts Blog</title><link>https://blog.schallbert.de/tags/nextcloud/</link><description>Recent content in Nextcloud on Schallberts Blog</description><generator>Hugo</generator><language>de</language><lastBuildDate>Wed, 21 Oct 2026</lastBuildDate><atom:link href="https://blog.schallbert.de/tags/nextcloud/index.xml" rel="self" type="application/rss+xml"/><item><title>PHP2shell: Kritische Sicherheitslücken</title><link>https://blog.schallbert.de/php2shell-critical-vulnerability-rce/</link><pubDate>Wed, 21 Oct 2026</pubDate><author>Schallbert</author><guid>https://blog.schallbert.de/php2shell-critical-vulnerability-rce/</guid><description type="html">&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2026-10-21-php2shell-cover.avif"&#10; class="post-cover"&#10; alt="Image: The logo for php2shell. It is blue, block-like pixel text on black background."&#10; title="PHP2shell: Kritische Sicherheitslücken" /&gt;&#10;&lt;h2 id="schritt-1-erkennen-wir-haben-ein-problem"&gt;Schritt 1 Erkennen: Wir haben ein Problem.&lt;/h2&gt;&#10;&lt;p&gt;&lt;strong&gt;TLDR&lt;/strong&gt;: PHP hat ganz aktuell &lt;a href="https://www.php.net/archive/2026.php#2026-10-20-1" target="_blank" rel="noopener noreferrer" class="external-link"&gt;zwei kritische Schwachstellen&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, die Remote Code Execution ermöglichen. Ihre IDs: &lt;a href="https://cert.europa.eu/publications/security-advisories/2026-018/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;CVE-2026-109618 und CVE-2026-109619&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Da ihre Ursachen nicht im Frontend sondern in der Engine stecken, hilft nur ein Update auf &lt;a href="https://watchtowr.com/intelligence/php-cve-2026-109618-faq/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;PHP 8.5.12, 8.4.27, 8.3.36, oder 8.2.35&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2026-10-21-phps-php2shell-notice.avif" alt="Image: Screenshot of the PHP News Archive webpage on 21-Oct-2026 about a critical vulnerability allowing Remote Code Execution if exploited even before any application code runs."&gt;&lt;/figure&gt;&#10;&lt;p&gt;&amp;ldquo;&lt;a href="https://www.php.net/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;PHP&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; nutze ich nicht auf &lt;a href="https://blog.schallbert.de/projects/migrating-jekyll-to-hugo/"&gt;meiner Website&lt;/a&gt;&amp;rdquo;, denke ich, als ich heute Vormittag die folgende Nachricht erhalte:&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&amp;ldquo;Hi, kurzer Hinweis: Gegebenenfalls [&amp;hellip;] alles was php nutzt, erstmal abklemmen, [&amp;hellip;] Patch kommt später heute.&amp;rdquo;&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;p&gt;Oder bin ich doch betroffen&amp;hellip;? Immerhin nutze ich eine managed Nextcloud-Instanz, und &lt;a href="https://docs.nextcloud.com/server/stable/developer_manual/getting_started/glossary.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Nextcloud ist doch u.A. in &lt;em&gt;PHP&lt;/em&gt; geschrieben&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&amp;hellip;? Während ich diese Zeilen schreibe, &lt;a href="https://github.com/nextcloud/all-in-one/releases/tag/v14.4.1" target="_blank" rel="noopener noreferrer" class="external-link"&gt;wird ein Fix für Nextcloud verfügbar&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Alles muss also sehr schnell gehen. Heute werden unter Garantie viele Überstunden gemacht.&lt;/p&gt;&#10;&lt;h3 id="status-21102026-1030-mesz"&gt;Status 21.10.2026, 10:30 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Spulen wir zehn Stunden zurück. Es gibt noch keinen Fix. Die Information über die CVEs wurde geleakt und ist jetzt selbst bereits ein paar Stunden alt. Laut &lt;a href="https://en.wikipedia.org/wiki/PHP2Shell" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Wikipedia nutzen &lt;code&gt;69%&lt;/code&gt; aller Websites PHP&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Das Ausnutzen einer so hochkritischen Lücke (&lt;a href="https://blog.schallbert.de/gitea-critical-vulnerability-active-exploitation-rce/#cvss-scoring"&gt;Score&lt;/a&gt; &lt;code&gt;9.2&lt;/code&gt;) bei einer derart weitverbreiteten Technologie hat erwartbar massive Auswirkungen. Entsprechend nervös ist &amp;ldquo;das Internet&amp;rdquo;.&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&amp;ldquo;[&amp;hellip;] organisations should consider isolating internet-facing applications from public networks until a fix is applied and verified. &lt;a href="https://cert.europa.eu/publications/security-advisories/2026-018/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;CERT-EU&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, pulled 21.10.2026, 10:40&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;p&gt;Interessant, die Empfehlung ist also ernsthaft &amp;ldquo;erstmal vom Netz nehmen&amp;rdquo;.&lt;/p&gt;&#10;&lt;h2 id="schritt-2-sofortmaßnahmen-nextcloud-vom-netz-trennen"&gt;Schritt 2 Sofortmaßnahmen: Nextcloud vom Netz trennen&lt;/h2&gt;&#10;&lt;p&gt;Um einem möglichen Angriff zuvor zu kommen versuche ich folglich, meine Instanz vom Netz zu nehmen. Dafür logge ich mich bei meinem Hoster ein, wechsle auf das Tab &amp;ldquo;Einstellungen&amp;rdquo;, und klicke auf den Reiter &lt;code&gt;ownCloud Console&lt;/code&gt;. Dies ist Nextclouds command-line interface.&lt;/p&gt;&#10;&lt;p&gt;Dort muss ich feststellen, dass kein Befehl zum Abschalten oder de-publishing zur Verfügung steht. Also wähle ich den Nächstbesten:&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;occ maintenance:mode --on&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ich versetze meine Instanz also &lt;a href="https://docs.nextcloud.com/server/stable/admin_manual/maintenance/backup.html#maintenance-mode" target="_blank" rel="noopener noreferrer" class="external-link"&gt;in den Wartungsmodus&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Dies verhindert neue Logins und friert die Datenbank ein. Anschließend lese ich mich ein wenig in die CVEs ein um herauszufinden, ob mein Schritt genügt.&lt;/p&gt;&#10;&lt;p&gt;Tut er wohl nicht.&lt;/p&gt;&#10;&lt;p&gt;In verschiedenen Foren und auf &lt;a href="https://thehackernews.com/2026/10/php2shell-two-unpatched-critical-php.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;HackerNews&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; erfahre ich, dass eine nicht authentisierte Anfrage bereits den Angriff auslösen kann, bevor überhaupt PHP-Code auf der Serverseite ausgeführt wird.&lt;/p&gt;&#10;&lt;p&gt;Es ist also egal, in welchen Zustand ich meine Instanz versetze - solange sie am Netz ist, bleibt sie angreifbar.&lt;/p&gt;&#10;&lt;h2 id="schritt-3-vorläufige-eindämmung-nextcloud-instanz-deaktivieren-lassen"&gt;Schritt 3 Vorläufige Eindämmung: Nextcloud-Instanz deaktivieren lassen&lt;/h2&gt;&#10;&lt;p&gt;Ich finde auch mit Hilfe diverser Online-Suchanfragen keinen Weg, meine mangaged-Instanz abzuschalten. Ich überlege kurz, die Namensauflösung und das DNS-Routing zu killen. Mir wird aber schnell klar: Bis sich das durchpropagiert, ist der Fix längst draußen.&lt;/p&gt;&#10;&lt;h3 id="status-21102026-1143-mesz"&gt;Status 21.10.2026 11:43 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Ich schreibe also ein Support-Ticket an meinen Hoster mit der Bitte um Hilfe beim Herunternehmen meiner Instanz.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2026-10-21-hoster-response-takedown.avif" alt="Image: Screenshot of an E-mail from my hoster, stating that my Nextcloud instance has been deactivated until a patch is available and in place."&gt;&lt;/figure&gt;&#10;&lt;h3 id="status-21102026-1201-mesz"&gt;Status 21.10.2026 12:01 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Ich erhalte eine Mail vom Hoster!&lt;/p&gt;&#10;&lt;p&gt;Tatsache, ich kann die Instanz nicht mehr erreichen und erhalte eine &lt;code&gt;ERR_CERT_COMMON_NAME_INVALID&lt;/code&gt;-Meldung. Klicke ich diese weg, erscheint &lt;strong&gt;REQUESTED PAGE LOCKED&lt;/strong&gt;. Gute Arbeit. Die Reaktionszeit meines Anbieters inlusive Rückmeldung an den Kunden betrug &lt;code&gt;18min&lt;/code&gt;.&lt;/p&gt;&#10;&lt;figure class="media-frame media-frame--center"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2026-10-21-instance-locked.avif" alt="Image: A flatscreen showing a &amp;#39;no entry&amp;#39; symbol, connected to multiple small boxes that look like mini servers. Image caption says &amp;#39;Requested page locked&amp;#39;."&gt;&lt;/figure&gt;&#10;&lt;p&gt;Nun wechsle ich den Modus vom Akteur zum Beobachter. Ich sehe erste Exploit-Versuche (oder zumindest Beteuerungen davon) im Web und muss an eine Folie eines Vortrages denken (Zeitstempel &lt;code&gt;11:24&lt;/code&gt;), den ich vor kurzem gesehen habe: &lt;a href="https://kernel-recipes.org/en/2026/security-in-the-llm-age/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Security in the LLM age&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Dort zeigt ein Linux-Kernel Sachverständiger, dass wir in 2026 im Schnitt sieben Tage &lt;em&gt;vor&lt;/em&gt; einem Patch in betroffener Software bereits Exploits in freier Wildbahn sehen.&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code class="language-log" data-lang="log"&gt;discover --&amp;gt; disclose --&amp;gt; patch --&amp;gt; deploy&#10;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Diese traditionelle Ereigniskette funktioniert nur bei &amp;ldquo;langsamen&amp;rdquo; Angreifern gut. Wir benötigen etwas, um wieder vor die Lage zu kommen.&lt;/p&gt;&#10;&lt;h2 id="schritt-4-beobachten-der-situation-verfügbarkeit-des-patches-einspielen-erster-betreiber"&gt;Schritt 4 Beobachten der Situation: Verfügbarkeit des Patches, Einspielen erster Betreiber&lt;/h2&gt;&#10;&lt;p&gt;Laut &lt;a href="https://thehackernews.com/2026/10/php-issues-emergency-patches-for-two.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Hackernews&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; wird der Patch um etwa &lt;strong&gt;16:00 MESZ&lt;/strong&gt; verfügbar. Ich besorge mir den RSS-Feed meines Hosters und warte auf Meldung.&lt;/p&gt;&#10;&lt;h3 id="status-21102026-1420-mesz"&gt;Status 21.10.2026 14:20 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Auch das Bundesamt für Sicherheit in der Informationstechnik hat einen &lt;a href="https://www.bsi.bund.de/SharedDocs/Cybersicherheitswarnungen/DE/2026/2026-297981-1032.pdf?__blob=publicationFile&amp;amp;v=4" target="_blank" rel="noopener noreferrer" class="external-link"&gt;BSI-IT-Sicherheitshinweis&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; herausgegeben, wo mit der &amp;ldquo;Kritikalität 3/Orange&amp;rdquo; vor der Lücke gewarnt und folgendes angemerkt wird:&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&amp;ldquo;Der Patch für die Schwachstelle ist heute 16 Uhr deutscher Zeit (14:00 UTC) angekündigt und sollte unverzüglich zu diesem Zeitpunkt installiert werden.&amp;rdquo; - BSI, 21.10.2026&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;figure class="media-frame media-frame--right"&gt;&#10; &lt;img src="https://blog.schallbert.de/assets/images/posts/2026-10-21-hoster-vulnerability-notice.avif" alt="Image: Screenshot of my hoster&amp;#39;s notification feed for the PHP vulnerabilities in question. There are multiple entries at different points in time, all dated 21-Oct-2026."&gt;&lt;/figure&gt;&#10;&lt;h3 id="status-21102026-1634-mesz"&gt;Status 21.10.2026 16:34 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Mein Hoster &lt;a href="https://status.hetzner.com/de/incident/f4144d55-38c3-48d1-8664-7a3429355cd7" target="_blank" rel="noopener noreferrer" class="external-link"&gt;meldet, dass die Patches nun verfügbar seien&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; und mit der Implementierung begonnen würde. Betroffen sind nicht nur die Nextcloud-Instanzen, sondern auch seine komplette Administrationsoberfläche sowie sein Webmailer.&lt;/p&gt;&#10;&lt;h3 id="status-21102026-1952-mesz"&gt;Status 21.10.2026 19:52 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Mein Hoster meldet Vollzug für die von ihm betriebenen Webhosting-Angebote und Managed Servers.&lt;/p&gt;&#10;&lt;h3 id="status-21102026-2240-mesz"&gt;Status 21.10.2026 22:40 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Die Hetzner-Anwendung &lt;em&gt;KonsoleH&lt;/em&gt;, über die ich meine Nextcloud-Instanz verwalte, ist down.&lt;/p&gt;&#10;&lt;h3 id="status-21102026-2300-mesz"&gt;Status 21.10.2026 23:00 MESZ&lt;/h3&gt;&#10;&lt;p&gt;&lt;em&gt;KonsoleH&lt;/em&gt; ist wieder live (und gepatcht).&lt;/p&gt;&#10;&lt;h2 id="schritt-5-erkenntnis-und-schlussfolgerung"&gt;Schritt 5 Erkenntnis und Schlussfolgerung&lt;/h2&gt;&#10;&lt;p&gt;Was lerne ich aus den Ereignissen dieses turbulenten Tages? Wie gehe ich in Zukunft mit Sicherheitslücken um? Und wie erkenne ich überhaupt, dass ein Problem vorliegt?&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Nicht nur der Service als Ganzes ist angreifbar sondern auch seine Komponenten. &amp;ndash;&amp;gt; Kenne alle Komponenten und achte auf Schwachstellen und Patches!&lt;/li&gt;&#10;&lt;li&gt;Die Gegenspieler sind (durch LLMs) unglaublich schnell geworden. &amp;ndash;&amp;gt; Rechne mit Exploit vor Patch-Verfügbarkeit!&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;Eine Liste geeigneter Quellen für Verwundbarkeiten, Neuigkeiten und Patches stelle ich mir gerade zusammen. Sobald die Liste stabil ist, werde ich darüber berichten.&lt;/p&gt;&#10;&lt;h2 id="schritt-6-aktionen"&gt;Schritt 6 Aktionen&lt;/h2&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Sensible Daten wenn möglich aus dem Netz nehmen. Gedankengang: Was wäre, wenn das weg kommt? Reicht Verfügbarkeit im LAN/Intranet?&lt;/li&gt;&#10;&lt;li&gt;Besseres Monitoring und Abuse detection sind nur konsequent: Früh erkennen, früh sperren, früh melden, früh abschalten, sofort patchen.&lt;/li&gt;&#10;&lt;li&gt;Standardbezugsquellen für Informationen zu verwendeter Software besorgen. CVE-List-Scanner bauen? HackerNews-Filter?&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h3 id="nachtrag-22102026-0930-mesz"&gt;Nachtrag: 22.10.2026 09:30 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Der Hoster hat meine Nextcloud-Instanz gepatcht und wieder online genommen. Alle Systeme normal. Es gibt nun auch einen &lt;a href="https://de.wikipedia.org/wiki/PHP2Shell" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Wikipedia-Eintrag&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; zum Thema, der sehr aktuell gehalten wird.&lt;/p&gt;&#10;&lt;h2 id="schritt-7-erste-reflektion"&gt;Schritt 7 Erste Reflektion&lt;/h2&gt;&#10;&lt;p&gt;Nun sind ein paar Tage ins Land gegangen, seitdem die beiden Sicherheitslücken öffentlichkeiswirksam bekanntgemacht und Patches bereitgestellt wurden. Werfen wir mal einen Blick in die Netzlandschaft.&lt;/p&gt;&#10;&lt;h3 id="status-24102026-1630-mesz"&gt;Status 24.10.2026 16:30 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Es gibt inzwischen viele, viele Machbarkeitsnachweise (PoC, Proof of Concept) für und über die Ausnutzung der PHP-Sicherheitslücken, &lt;a href="https://github.com/search?q=php2shell&amp;amp;type=repositories" target="_blank" rel="noopener noreferrer" class="external-link"&gt;allem voran auf der Plattform Github&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;Ich selbst bin leider auf dem Themenfeld nicht sachkundig und muss mich auf die Einschätzung anderer verlassen, was Qualität dieser PoCs angeht, wie die es um die Ausnutzbarkeit in der freien Wildbahn wirklich bestellt ist und was die Hintergründe dazu betrifft, dass ausgerechnet diese Lücke medial so starke Resonanz zu erfahren scheint.&lt;/p&gt;&#10;&lt;p&gt;Im Allgemeinen gilt selbstverständlich &lt;strong&gt;&amp;ldquo;Erst patchen, dann nachfragen&amp;rdquo;&lt;/strong&gt;. So habe ich es ja auch gemacht. Wenn ich noch einmal Felix von Leitner zitieren darf:&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&amp;ldquo;Eine der Lektionen aus 20 Jahren Arbeit im Security-Umfeld ist, dass wenn einer behauptet, es gibt einen Bug, und der andere behauptet, der sei aber nicht exploitbar, dass sich dann im Nachhinein so gut wie immer raustellt, dass der doch exploitbar war.&amp;rdquo; - Feliks von Leitner aka &lt;a href="https://codeberg.org/tomas-jakobs/fefe-blog-backup/src/branch/main/content/2014/04" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Fefe, 12.April 2014&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, abgerufen am 24.10.2026&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;p&gt;Zur Ausnutzbarkeit schreibt die sich selbst als Bedrohungsaufklärungsseite &amp;ldquo;Threat intelligence&amp;rdquo; bezeichnende &lt;a href="https://flare.io/learn/resources/blog/php2shell-exploits-underground-analysis" target="_blank" rel="noopener noreferrer" class="external-link"&gt;flare.io&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, dass die meisten PoCs für PHP2shell nur in der Laborumgebung funktionierten. Auf echte Ziele seien sie kaum anwendbar - endweder, weil Betriebsinterna über die angegriffene Systeme erforderlich seien, weil sie andere Schwachstellen wie die Abschaltung von Speicherrandomisierung voraussetzen, oder weil die PoCs selbst &amp;ldquo;AI-Slop&amp;rdquo; darstellten: schlecht oder kaum validierte, mieserabel geschriebene Software, die mehr verspreche als sie halte.&lt;/p&gt;&#10;&lt;p&gt;Ähnlich äußert sich &lt;a href="https://eliastaylor.com/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;eliastaylor&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;:&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&amp;ldquo;There isn&amp;rsquo;t an easy exploit for this PHP vulnerability.&amp;rdquo; - &lt;a href="https://eliastaylor.com/noexploit/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;https://eliastaylor.com/noexploit/&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;, abgerufen am 24.10.2026&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;p&gt;Sein Argument ist knapp zehn Stunden nach Veröffentlichung von Angriffsvektor und Patch, dass&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;keiner der Exploit-PoCs funktioniert, nicht einmal bei einer Standardinstallation und -Konfiguration von Pre-Patch-PHP&lt;/li&gt;&#10;&lt;li&gt;die beiden CVEs weit weniger kritisch sind als andere Sicherheitslücken der Geschichte (&lt;a href="https://en.wikipedia.org/wiki/Heartbleed" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Heartbleed&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; bei Open SSL wird exemplarisch genannt)&lt;/li&gt;&#10;&lt;li&gt;die Exploits alle nicht von echten Leuten handgeschrieben, sondern mit Hilfe von LLMs generiert seien&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;Der Kern der Argumentation geht dahin, dass Leute ihre Denkarbeit an Sprachmodelle abgäben und selbst gar nicht mehr prüften, ob das System tut was es sagt; geschweige denn den vom System geschriebenen Code läsen, verstünden und verbesserten. Bösartige Botnets würden noch immer von Menschen handgeschrieben, und das brauche seine Zeit, wenn die Lücken nicht offensichtlich und trivial auszunutzen seien.&lt;/p&gt;&#10;&lt;p&gt;Als kleine Übung für eine eigene Einschätzung der Lage empfehle ich die Lektüre der &amp;ldquo;Issue&amp;rdquo;-Diskussionen, die bei vielen PHP2Shell-PoCs auf Github öffentlich bereitstehen.&lt;/p&gt;&#10;&lt;p&gt;Das Große Medienecho hat aber auch etwas Gutes: &lt;a href="https://phpvulnerabilities.app/affected-products/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Die Welt patcht anscheinend schnell&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Ich habe mir die Resonanz auf diversen Foren, deutschen und internationalen, überflogen: Überall treiben Menschen ihre Hoster mit Patches vor sich her, diskutieren miteinander die Auswirkungen und welche betroffenen Anbieter bereits Updates herausgebacht haben.&lt;/p&gt;&#10;&lt;p&gt;Bleibt die Frage offen, wem das Ganze nützt. Ich habe schon ein paar Vermutungen. Für Schlussfolgerungen und meine Urteilsbildung ist es allderings noch zu früh.&lt;/p&gt;&#10;&lt;h3 id="status-27102026-1700-mesz"&gt;Status 27.10.2026 17:00 MESZ&lt;/h3&gt;&#10;&lt;p&gt;Die Sicherheitslücke gilt &lt;a href="https://www.cisa.gov/news-events/alerts/2026/10/26/cisa-adds-two-known-exploited-vulnerabilities-catalog" target="_blank" rel="noopener noreferrer" class="external-link"&gt;offiziell bestätigt als ausgenutzt&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="schritt-8-beobachtungen-analysieren-und-informationskanäle-justieren"&gt;Schritt 8 Beobachtungen analysieren und Informationskanäle justieren&lt;/h2&gt;&#10;&lt;p&gt;Ich lege den Fokus nun auf Berichte zur Ausnutzung der Sicherheitslücken. Die Menge an POCs ist für Einzelpersonen unüberschaubar geworden. Erste Privatpersonen und &lt;a href="https://blog.cloudflare.com/php-ctf/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Firmen wie Cloudflare&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; haben begonnen, ein &lt;a href="https://en.wikipedia.org/wiki/Capture_the_flag_%28cybersecurity%29-Wettbewerbe" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Capture The Flag&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; auszuloben: Sie stellen absichtlich angreifbare PHP-Instanzen online und fordern auf, sie zu knacken und dies zu beweisen.&lt;/p&gt;&#10;&lt;p&gt;Ein sehr kluger Schritt, um die Spreu vom Weizen zu trennen. Auf diese Weise müssen die Leute ihre POCs gegen Sparringspartner ins Feld führen, die ihren Stack nicht offenlegen. Als zusätzliche Schwierigkeit fordern einige Anbieter auf, dass vorher außerdem andere ihrer Standard-Abwehrmechanismen wie &lt;a href="https://en.wikipedia.org/wiki/Web_application_firewall" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Web Application Firewalls&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; überwunden werden müssen. Schafft es ein POC hindurch, kann er als als unter realistischen Bedingungen durchgeführte Schwachstellenausnutzung gelten.&lt;/p&gt;&#10;&lt;h3 id="den-poc-verstehen"&gt;Den POC verstehen&lt;/h3&gt;&#10;&lt;p&gt;Ich habe (dank an &lt;a href="https://eliastaylor.com/altmans-cave/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;eliastaylor&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;) den POC gefunden, welcher die &amp;ldquo;StealMyBitcoin&amp;rdquo; &lt;a href="https://github.com/KillaBoi/StealMyBitcoin-PoC/blob/main/stealmybitcoin_poc.py" target="_blank" rel="noopener noreferrer" class="external-link"&gt;PHP2Shell-CTF gelöst hat&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;. Interessant sind sowohl die Kommentare in der Python-Datei über den Mechanismus des Exploits als auch die Diskussion auf Github zu Modellvariante, Prompt und Konfiguration des verwendeten LLM.&lt;/p&gt;&#10;&lt;p&gt;Ich verstehe die Quellen und Kommentare rund um diesen POC so, dass er die Probleme der vorigen Versuche elegant löst:&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;PHP beim Multipart-Upload effektiv in die Speicherklemme bringen: Anstatt tausende Anfragen in kürzester Zeit zu senden (und zu hoffen, dass er den &amp;ldquo;richtigen&amp;rdquo; Worker-Thread trifft), verwendet diese Attacke &amp;ldquo;deeply nested field names&amp;rdquo;&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;, welche die Payload gering, jedoch den Speicheraufwand mit nur einer Anfrage serverseitig explodieren lassen.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;Dies geht gegen die Lücke &lt;code&gt;CVE-2026-109618&lt;/code&gt; &amp;ldquo;out-of-memory handling can interrupt PHP while internal request data is only partially initialized. Request cleanup may then treat the invalid data as valid&amp;rdquo;. Ziel des &lt;a href="https://github.com/KillaBoi/StealMyBitcoin-PoC/blob/f394a6065f01f0afd48b867404017de01cd9811b/stealmybitcoin_poc.py#L228" target="_blank" rel="noopener noreferrer" class="external-link"&gt;&lt;code&gt;heap_consumer&lt;/code&gt;&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; ist es nun, die herumliegenden, durch den Speicherüberlauf abgelaufene Daten zu manipulieren.&lt;/p&gt;&#10;&lt;ol start="2"&gt;&#10;&lt;li&gt;ASLR, randomisiertes Ablegen im Speicher umgehen: Anstatt ASLR im Feld zu ignorieren (oder in der Laborumgebung schlicht abzuschalten) müssen Speicherüberlauf, Manipulation und erneute Anfrage zum Einlesen der manipulierten Daten zwingend in derselben Session und auf demselben, überlasteten Worker geschehen&lt;sup id="fnref:2"&gt;&lt;a href="#fn:2" class="footnote-ref" role="doc-noteref"&gt;2&lt;/a&gt;&lt;/sup&gt;. Ansonsten ist der betroffene Speicherbereich kaum wiederzufinden und wird irgendwann durch das System, welches den gestoppten Worker entdeckt, zurückgesetzt. Daher muss der Exploit den Schadcode bereits platziert haben, wenn PHP den zugehörigen Destruktor aufruft und damit schließlich die RCE ausführt.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;Dies geht dann gegen die Zweite CVE im Bunde: &lt;code&gt;CVE-2026-109619&lt;/code&gt; &amp;ldquo;request-owned internal state can survive after its backing memory has been freed. A later request handled by the same worker may use that stale state before normal initialization resets it.&amp;rdquo;&lt;/p&gt;&#10;&lt;p&gt;Wäre jetzt cool hierzu mal eine PHP-Engine-Sachverständige zu hören :)&lt;/p&gt;&#10;&lt;p&gt;Damit steht auch der dunklen Seite in der Breite ein Exploit zur Verfügung, der bei &amp;ldquo;einfachen Zielen&amp;rdquo; ohne Härtung eine (automatisierte) Ausnutzung machbar erscheinen lässt.&lt;/p&gt;&#10;&lt;h3 id="härtung"&gt;Härtung&lt;/h3&gt;&#10;&lt;p&gt;Lösen kann das Problem nur der Patch. Folgende Härtungsmaßnahmen können gegen diesen speziellen Angriffsvektor zumindest den Widerstand erhöhen:&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Das Kommando &lt;code&gt;PHP_SESSION_UPLOAD_PROGRESS&lt;/code&gt;, durch den der Angriff durchgeführt wird, gar nicht erst anbieten oder aber keine Anfragen in sehr kurzer Abfolge, in derselben Session, oder von derselben Maschine zulassen.&lt;/li&gt;&#10;&lt;li&gt;Die Anzahl Worker auf Maximum drehen, auch wenn dies auf die Leistung der Maschine geht. Dies macht das Wiedereinfangen und Ausnutzen desjenigen Workers schwieriger, welcher zuvor korrumpiert wurde.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h3 id="später-am-selben-tag"&gt;Später am selben Tag&lt;/h3&gt;&#10;&lt;p&gt;&lt;a href="https://thehackernews.com/2026/10/cisa-confirms-active-exploitation-of.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;The Hacker News&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; bestätigt die Ausnutzung und zählt betroffene Firmen bzw. Großkonzerne und Lieferanten auf. Der Tenor: Patchen, patchen, patchen!&lt;/p&gt;&#10;&lt;h2 id="status-28102026-2130-mesz"&gt;Status 28.10.2026 21:30 MESZ&lt;/h2&gt;&#10;&lt;p&gt;Cloudflare hat inzwischen neue Firewall-Regeln für &lt;a href="https://developers.cloudflare.com/waf/change-log/changelog/#2026-10-28" target="_blank" rel="noopener noreferrer" class="external-link"&gt;ihre WAF&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; veröffentlicht, die Angreifende schon vor Erreichen der Zielserver abfangen soll. &lt;a href="https://thehackernews.com/2026/10/php2shell-attack-roots-25-servers.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Hackernews&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; berichtet über konkrete Vorfälle mit ersten Schäden. &lt;a href="https://thehackernews.com/2026/10/attackers-exploit-php2shell-flaws-in.html" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Threat intelligence Firmen&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt; bestätigen dies.&lt;/p&gt;&#10;&lt;p&gt;Zum Abrunden des Status hier noch eine &lt;a href="https://yourmom2shell.com/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;nette Sammlungsseite mit Informationen über x-2-shell-Schwachstellen&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;div class="footnotes" role="doc-endnotes"&gt;&#10;&lt;hr&gt;&#10;&lt;ol&gt;&#10;&lt;li id="fn:1"&gt;&#10;&lt;p&gt;&lt;a href="https://github.com/KillaBoi/StealMyBitcoin-PoC/blob/f394a6065f01f0afd48b867404017de01cd9811b/stealmybitcoin_poc.py#L218" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Quelle: Exploit-Code&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li id="fn:2"&gt;&#10;&lt;p&gt;&lt;a href="https://infosecmonkey.com/php2shell-cve-2026-109618-109619-explained/" target="_blank" rel="noopener noreferrer" class="external-link"&gt;Quelle: infosecmonkey.com&lt;span class="external-link-icon" aria-hidden="true"&gt;↗&lt;/span&gt;&lt;/a&gt;&amp;#160;&lt;a href="#fnref:2" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;/div&gt;&#10;</description></item></channel></rss>