Dude mit Kaffee vor einem Whiteboard mit geprüften Servern, Cipher zeigt auf einen unbekannten Server im Keller

Am Diens­tag, dem 20. Okto­ber, kün­dig­ten die PHP-Ent­wick­ler ein Sicher­heits­up­date für den nächs­ten Tag an. Am Mitt­woch­mor­gen hat­ten vie­le Behör­den, Kli­ni­ken und Kom­mu­nen ihre Web­sei­ten schon vom Netz genom­men. Wer wis­sen will, ob der Patch wirkt, braucht mehr als ein Häk­chen im Changelog.

Der Daten­schutz Dude: „Patch drauf, Häk­chen dran, Feierabend?“

Was am 21. Okto­ber pas­siert ist

PHP steckt hin­ter einem gro­ßen Teil der Web­sei­ten, von Blogs bis zu Online­shops und Word­Press. Am 21. Okto­ber ver­öf­fent­lich­te das PHP-Pro­jekt Updates für zwei kri­ti­sche Lücken, CVE-2026–109618 und CVE-2026–109619, bei­de mit 9,2 von 10 bewer­tet. Angrei­fer kön­nen ohne Anmel­dung Schad­code auf dem Ser­ver aus­füh­ren. Nach Anga­ben des Pro­jekts ist das Risi­ko bei mod_​php am höchs­ten: Dort kann eine ein­zi­ge Anfra­ge den Angriff aus­lö­sen, bevor Anwen­dungs­code läuft.

Das BSI stuf­te die War­nung als „Oran­ge“ ein. Vize­prä­si­dent Tho­mas Cas­pers hielt eine groß­flä­chi­ge Aus­nut­zung inner­halb weni­ger Stun­den für wahr­schein­lich, weil KI-Werk­zeu­ge Exploits schnel­ler bau­en. Sein Satz dazu: „Es besteht also unver­züg­li­cher Hand­lungs­be­darf!“ Eine brei­te erfolg­rei­che Aus­nut­zung war nach dem BSI-Stand vom 22. Okto­ber noch nicht bekannt.

Der Patch ist der Anfang, nicht das Ende

Ein Update beant­wor­tet genau eine Fra­ge: Ist die bekann­te Lücke im Code geschlos­sen? Die wich­ti­ge­ren Fra­gen kom­men danach, in die­ser Reihenfolge:

  1. Inven­tar. Wo läuft PHP über­haupt? Auch in Appli­ances, Rou­tern, Her­stel­ler-Soft­ware oder beim Dienst­leis­ter. Was nicht auf der Lis­te steht, lässt sich nicht patchen.
  2. Ver­si­on prü­fen, nicht Voll­zug mel­den. Fix-Stän­de sind 8.5.12, 8.4.27, 8.3.36 und 8.2.35. Für PHP 8.1 und älter gibt es vom Pro­jekt kei­ne Updates mehr. Dort hel­fen nur Her­stel­ler­patches oder ein Versionssprung.
  3. Nach­züg­ler. Am 23. Okto­ber kam eine drit­te Lücke im Ses­si­on-Upload-Fort­schritt dazu (CVE-2026–115560). Bis zum nächs­ten Release emp­fiehlt das Pro­jekt, session.upload_progress.enabled auf 0 zu set­zen. Am 26. Okto­ber folg­ten aktua­li­sier­te Win­dows-Builds gegen eine Lücke in der Brot­li-Biblio­thek (CVE-2026–111497).
  4. Logs. Ab dem 20. Okto­ber auf auf­fäl­li­ge Anfra­gen an PHP-Anwen­dun­gen prü­fen und das Ergeb­nis doku­men­tie­ren. Wer nichts fin­det, hat eine Aus­sa­ge mit Zeit­stem­pel, aber kei­ne Entwarnung.
  5. Pro­vi­so­ri­en. Abschal­tun­gen und Not­fall-Ein­stel­lun­gen: Was war wann aktiv, und wann wur­de es zurückgebaut?

Agen­tin Cipher: „Doku­men­tiert ist nicht erledigt.“

Für den Daten­schutz: Was der DSB jetzt auf dem Tisch hat

Lie­gen auf dem Ser­ver per­so­nen­be­zo­ge­ne Daten? Ein Web­ser­ver mit Kon­takt­for­mu­lar, Shop oder Log­in ver­ar­bei­tet sie fast immer.

Eine offe­ne Lücke ist allein noch kei­ne Ver­let­zung des Schut­zes per­so­nen­be­zo­ge­ner Daten im Sin­ne von Art. 4 Nr. 12 DSGVO. Gibt es aber Anhalts­punk­te für einen Zugriff, läuft die Frist von 72 Stun­den nach Art. 33 DSGVO, es sei denn, ein Risi­ko für Betrof­fe­ne ist vor­aus­sicht­lich aus­ge­schlos­sen. Unab­hän­gig davon ver­langt Art. 33 Abs. 5 DSGVO die Doku­men­ta­ti­on jeder Ver­let­zung, auch der nicht gemeldeten.

Zur Fra­ge nach Art. 32 DSGVO: Waren die Maß­nah­men ange­mes­sen, und wur­de das Update in ver­tret­ba­rer Zeit ein­ge­spielt? Das LG Traun­stein hat am 17. Juli 2026 ent­schie­den, dass ein Hacker­an­griff allein kei­nen Ver­stoß gegen Art. 32 DSGVO beweist. Ent­schei­dend ist, was vor­her getrof­fen war, und das muss schrift­lich vorliegen.

Betreibt ein Dienst­leis­ter den Ser­ver, gehört die Fra­ge in die Auf­trags­ver­ar­bei­tung: Wer hat wann gepatcht, und steht das im Ver­trag oder in der Doku­men­ta­ti­on? Ein Ver­trag nach Art. 28 DSGVO regelt das nicht von allein.

Der Dude: „Und wer patcht eigent­lich die Kis­te im Kel­ler, die der Dienst­leis­ter vor drei Jah­ren auf­ge­stellt hat?“

Not­fall: Vom Abschal­ten bis zu den Les­sons Learned

Die schwie­rigs­te Ent­schei­dung war nicht tech­nisch: abschal­ten oder wei­ter­lau­fen las­sen? Wer sie erst am Mitt­woch­mor­gen trifft, ent­schei­det unter Zeit­druck und mit hal­ber Infor­ma­ti­on. Die Cha­ri­té sprach von einer Vor­sichts­maß­nah­me, doch die Online-Ter­min­bu­chung war nicht möglich.

Für die Les­sons Lear­ned: Wer steht auf der Lis­te der PHP-Sys­te­me? Wer ent­schei­det über eine Abschal­tung, und wer ist dafür erreich­bar? Die PHP-Ent­wick­ler haben den Ter­min einen Tag vor­her ange­kün­digt. Wer in die­ser Zeit nicht wuss­te, wel­che Sys­te­me betrof­fen sind, hat den Tag für Inven­tur und Ent­schei­dung verloren.

Ein Sys­tem, das nie­mand inven­ta­ri­siert hat, ist nicht sicher. Es ist unbekannt.

Ciphers Fazit: Klar­text zur Lage

Die Lücke ist dort geschlos­sen, wo das Update ein­ge­spielt wur­de. Ob sie aus­ge­nutzt wur­de, lässt sich aus den bis­he­ri­gen Quel­len nicht sagen. Genau des­halb zählt die Doku­men­ta­ti­on: Sie zeigt spä­ter, was man wuss­te und ent­schie­den hat.

Der Dude: „Chil­lig blei­ben, aber auf­schrei­ben, was du geprüft hast. Dann stehst du bei der nächs­ten Fra­ge nicht mit dem Bauch­ge­fühl allein da. Und sei ver­si­chert — irgend­je­mand wird fragen :-)“

No responses yet

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Über a.s.k. Daten­schutz e.K.
Mit­glied­schaf­ten