PHP Security Scanner

NEU v2.0 (01.011.2026)

PHP steckt auf Windows-Servern an Stellen, die niemand mehr auf dem Schirm hat: im Monitoring-Frontend, im Ticketsystem, in einer alten XAMPP-Testinstallation oder im Webordner einer Fachanwendung. Der ISW PHP Security Scanner durchsucht alle Windows-Server im Active Directory per WinRM, findet jede PHP-Installation und jede PHP-Webanwendung und zeigt auf einen Blick, wo Handlungsbedarf besteht – von PHP2Shell über Supportende bis zu den Spuren eines möglichen Angriffs.

„Jede PHP-Installation finden – bevor es ein Angreifer tut“

Für jede Installation bewertet der Scanner Version und Patchstand, die kritischen Lücken PHP2Shell (CVE-2026-109618 und CVE-2026-109619) und CVE-2024-4577, alle weiteren bekannten Schwachstellen aus der NVD mit Kennzeichnung aktiv ausgenutzter Lücken (CISA KEV), das Supportende, die Einbindung in IIS oder Apache und die wirksame php.ini. Dazu kommen Webanwendungen wie WordPress, Nextcloud oder phpMyAdmin samt Composer-Abhängigkeiten, riskante Dateien im Webverzeichnis und eine Spurensuche in Ereignis- und Webprotokollen. Der Scan ist rein lesend – auf den Servern wird nichts installiert und nichts verändert.

Zielgruppe

  • IT-Administratoren und System Engineers
  • Managed Service Provider (MSPs) mit vielen Kundenumgebungen
  • IT-Sicherheitsbeauftragte und Security-Auditoren
  • Compliance-Verantwortliche (BSI IT-Grundschutz, NIS2, ISO 27001)

Lizenzierung

Gute Software muss nicht teuer sein.

Einmalig 399,00 € (inkl. 19% MwSt.)

  • Standortlizenz ohne Benutzerbegrenzung
  • Keine Folgekosten, keine Abonnements
  • Kostenlose Updates innerhalb der Hauptversion

PHP Security Scanner Anwenderhandbuch

Handbuch

Send download link to:

Ich bestätige, die Datenschutzerklärung gelesen zu haben.

Typischer Einsatz

Nach PHP2Shell: alle PHP-Server finden und absichern

Mittelständisches Unternehmen · rund 60 Windows-Server · IIS-Fachanwendungen, Monitoring- und Ticketsystem mit PHP

Ausgangslage

Nach der Veröffentlichung von PHP2Shell soll die IT melden, welche Systeme betroffen sind. Bekannt sind zwei PHP-Server – ob auf weiteren Servern noch alte Installationen, Testumgebungen oder Webanwendungen mit PHP liegen, weiß niemand sicher.

Vorgehen

Im AD-Explorer werden die Server-OUs ausgewählt, die Vorprüfung klärt WinRM und Rechte. Ein Scan findet alle PHP-Installationen und Webanwendungen, prüft Version, Einbindung, php.ini und CVEs und sucht in Ereignis- und Webprotokollen nach Spuren seit Bekanntwerden der Lücke.

Ergebnis

Eine Liste aller betroffenen Installationen mit Schweregrad und fertiger Behebungshilfe. Nach dem Update belegt der nächste Scan, was behoben ist; der geplante Scan meldet künftig nur noch neue kritische Befunde.

  • 1 Scan für alle Server im AD
  • NVD + KEV CVE-Abgleich je Version
  • PDF · HTML Bericht und Behebungsplan

„Ein Scan über das ganze Active Directory statt Server für Server“

Warum gerade jetzt

Mit PHP2Shell sind im Oktober 2026 zwei Lücken im PHP-Kern bekannt geworden, über die sich im ungünstigsten Fall ohne Anmeldung Schadcode ausführen lässt – noch bevor der Code der Anwendung startet. Betroffen sind alle Betriebsarten, die Webanfragen bedienen: IIS mit FastCGI, Apache mit mod_php oder php-cgi. Korrigiert sind PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35. Für PHP 8.1 und älter gibt es keine Korrektur mehr.

Das eigentliche Problem

Ein Update hilft nur dort, wo man von PHP weiß. Genau diese Übersicht fehlt in den meisten Umgebungen: Welche Server haben PHP, in welcher Version, ist es überhaupt über den Webserver erreichbar, laufen nach dem Update noch alte Prozesse – und gab es vorher schon einen Angriff? Diese Fragen beantwortet der PHP Security Scanner für alle Server in einem Durchgang.

Kernfunktionen

  • Serverauswahl im AD-Explorer: OU-Baum der Domäne, Filter für Server, Domänencontroller, deaktivierte und lange nicht angemeldete Computer – Server aus mehreren OUs sammeln, manuelle Ziele ergänzen, einzelne Server dauerhaft ausschließen
  • Vorprüfung als Ampel: Namensauflösung, WinRM-Port, Anmeldung, Administratorrechte, PowerShell und die Voraussetzungen der Spurensuche je Server – vor dem ersten Scan wissen, was funktioniert
  • PHP-Erkennung: über IIS (FastCGI-Anwendungen, Handler, web.config), Apache (mod_php, CGI, mod_fcgid), Windows-Dienste, laufende Prozesse, Registry, bekannte Ordner (C:\PHP, XAMPP, WAMP, Laragon) und eine Dateisuche auf allen lokalen Laufwerken
  • Wirksame php.ini: ermittelt wie PHP selbst (PHPRC, PHPIniDir, Registry, Programmordner) – einschließlich Zusatzdateien aus PHP_INI_SCAN_DIR, mit Herkunft je Einstellung
  • PHP2Shell und Patchstand: verwundbare Versionen, fehlende Sofortmaßnahmen und Prozesse, die nach dem Update noch mit altem Programmstand laufen
  • Schwachstellen online: CVE-Abgleich je PHP-Version und Webanwendung über die NVD, Kennzeichnung aktiv ausgenutzter Lücken (CISA KEV), Supportende und aktuelle Version von endoflife.date
  • Webanwendungen: WordPress, Nextcloud, Moodle, phpMyAdmin, Joomla, Drupal, GLPI, Zabbix-Frontend und Roundcube mit Version, CVEs und Supportende
  • Composer-Abhängigkeiten: alle Pakete aus composer.lock gegen die Sicherheitshinweise von Packagist
  • Riskante Dateien und Einstellungen: phpinfo()-Seiten, Adminer, Sicherungskopien, .env, SQL-Sicherungen, .git-Ordner sowie gefährliche Einträge in .user.ini und .htaccess
  • Spurensuche: Prozessstarts aus PHP und dem Webserver (Ereignis 4688, Sysmon), Webshell-Merkmale, Angriffe in IIS- und Apache-Protokollen – mit ehrlicher Bewertung der Aussagekraft je Server
  • Behebungshilfe: php.ini-Block mit den empfohlenen Werten, Download der passenden korrigierten Version und bei IIS ein PowerShell-Skript zur Umstellung
  • Verlauf und Ausnahmen: neu und behoben seit dem letzten Scan, „offen seit“, mittlere Behebungsdauer und befristete Risikoakzeptanz mit Begründung
  • Automatisierung: geplanter Scan als SYSTEM oder gMSA, Silent-Modus für RMM und Monitoring, eigenes Windows-Ereignisprotokoll
  • Berichte: PDF, HTML, CSV, JSON und Behebungsplan, Versand per SMTP – nach jedem Lauf, nur bei neuen HIGH/CRITICAL-Befunden oder nie

Was der Scanner prüft

Bereich Prüfungen
Version und Patchstand PHP2Shell, CVE-2024-4577, weitere CVEs aus der NVD, aktive Ausnutzung (KEV), Supportende, aktueller Stand im Zweig
Einbindung IIS FastCGI mit den betroffenen Sites, Apache mod_php/CGI/FastCGI, Windows-Dienst, laufender Prozess oder „nur Dateien“
php.ini Sofortmaßnahmen gegen PHP2Shell, allow_url_include, display_errors, disable_functions, expose_php, Upload- und Sitzungseinstellungen
Webanwendungen Neun verbreitete Anwendungen mit Version, CVEs und Supportende, Composer-Pakete gegen Packagist
Webverzeichnis phpinfo(), Adminer, *.php.bak, .env, SQL-Sicherungen, .git, .user.ini und .htaccess mit auto_prepend_file oder PHP-Handlern für Bilder
Spurensuche Shells und Werkzeuge, die von PHP oder vom Webserver gestartet wurden, Webshell-Merkmale, PHP in Upload-Ordnern, Angriffsmuster und Aufrufe verdächtiger Dateien in den Webprotokollen

Jeder Befund trägt einen Schweregrad von LOW bis CRITICAL, eine Empfehlung und den Bezug zu BSI IT-Grundschutz, NIS2 und CIS Controls. Bewertet wird nach Einbindung: Eine verwundbare Version am Webserver ist kritischer als ein vergessener Ordner ohne Einbindung.

Benutzeroberfläche

Das Hauptfenster ist in folgende Bereiche unterteilt:

  • Dashboard: Gesamtstatus, Kennzahlen, PHP-Zweige im Einsatz, häufigste Befunde und Datenstand
  • Server: ausgewählte Server mit Status, Vorprüfung und aktuellem Scan-Schritt; Doppelklick öffnet alle Details eines Servers
  • Installationen: jede PHP-Installation mit Einbindung, php.ini, CVEs und Behebungshilfe
  • Webanwendungen, Befunde, Verlauf, Berichte, Protokoll und Einstellungen
  • Fortschritt: Während des Scans zeigt eine Zeile am unteren Rand Fortschritt, Laufzeit und – aufgeklappt – den aktuellen Schritt je Server; das Fenster bleibt bedienbar

PHP Security Scanner Dashboard

Server gezielt auswählen

Der AD-Explorer zeigt die Domäne mit ihren Organisationseinheiten. Sie wählen eine OU, sehen die Windows-Server darin samt Betriebssystem, Rolle und letzter Anmeldung und markieren genau die Server, die geprüft werden sollen – auch über mehrere OUs hinweg. Server außerhalb der Domäne tragen Sie von Hand ein. Wer bestimmte Systeme nie scannen möchte, schließt sie dauerhaft aus; auch der geplante Scan überspringt sie dann.

PHP Security Scanner AD Explorer

Installationen und Behebungshilfe

Zu jeder gefundenen Installation zeigt der Detailbereich Version, Build, aktuelle Version im Zweig, PHP2Shell-Status, Supportende, Einbindung, IIS-Sites, laufende Prozesse und die wirksame php.ini mit allen Zusatzdateien. Darunter stehen die Befunde, die bekannten CVEs und die Behebungshilfe: ein fertiger php.ini-Block, der Link auf die passende korrigierte Version (NTS oder TS, Compiler, Architektur) und für IIS ein PowerShell-Skript, das FastCGI-Anwendung, Handler und PHPRC auf den neuen Ordner umstellt – mit vorheriger Sicherung der IIS-Konfiguration.

PHP Security Scanner Installationen und Behebungshilfe

Hinweis

Ein Update wirkt erst, wenn alle PHP-Prozesse neu gestartet sind. Der Scanner meldet Prozesse, die noch mit dem alten Programmstand laufen, und .user.ini-Dateien, die eine Sofortmaßnahme für ihr Verzeichnis wieder aufheben.

Spurensuche mit ehrlicher Aussagekraft

Ist eine Lücke schon länger offen, stellt sich die Frage, ob sie ausgenutzt wurde. Der Scanner prüft dafür, ob PHP oder der Webserver Shells und Werkzeuge gestartet haben (Ereignis 4688 und Sysmon), ob neue oder geänderte PHP-Dateien Webshell-Merkmale tragen, ob in Upload-Ordnern PHP-Dateien liegen und ob die IIS- und Apache-Protokolle Angriffsmuster oder Aufrufe verdächtiger Dateien enthalten.

„Keine Treffer“ ist nur dann eine Aussage, wenn Prozessstarts auch protokolliert werden und das Sicherheitsprotokoll weit genug zurückreicht. Deshalb bewertet der Scanner je Server die Aussagekraft – Überwachungsrichtlinie, Befehlszeile, Sysmon und Reichweite des Protokolls – und meldet es offen, wenn die Spurensuche dort nicht belastbar ist.

PHP Security Scanner Spurensuche

Automatische Überwachung

Der geplante Scan wird direkt in den Einstellungen eingerichtet – täglich oder wöchentlich, als SYSTEM oder als gMSA, ohne gespeichertes Administratorkennwort. Kennwörter liegen AES-256-verschlüsselt in einem Tresor, auf den nur SYSTEM und Administratoren zugreifen. Nach jedem Lauf vergleicht der Scanner mit dem vorherigen Ergebnis, legt die Berichte ab und schickt die E-Mail nach Ihrer Regel. Neue Befunde der Stufe HIGH oder CRITICAL landen zusätzlich im eigenen Windows-Ereignisprotokoll – bereit für SIEM und Monitoring.

Für RMM-Werkzeuge und eigene Skripte gibt es den Silent-Modus mit festen Rückgabewerten:

Rückgabewert Bedeutung
0 Keine Befunde HIGH oder CRITICAL
1 Mindestens ein Befund HIGH
2 Mindestens ein Befund CRITICAL
3 · 4 · 5 Fehler · Lizenzproblem · keine Administratorrechte

Aufruf: „PHP Security Scanner.exe“ /scan [/report pdf,html,csv,json] [/mail] [/out Ordner] [/targets srv1;srv2]

Sicherheit und Datenschutz

  • Rein lesender Scan – auf den Zielservern wird nichts installiert oder geändert
  • Kennwörter AES-256-verschlüsselt, an PowerShell nur über die Standardeingabe übergeben
  • Abgesicherter Datenordner: fremde Versions- oder Ergebnisdateien werden nicht verwendet
  • Online-Abgleich überträgt nur Produktnamen und Versionen, keine Server- oder Firmennamen
  • Ohne Internet bleibt der Scan vollständig – PHP2Shell und Supportende sind eingebaut
  • Jede Aktion im Protokoll mit Zeit, Konto und Ergebnis

Systemvoraussetzungen

Komponente Anforderung
Verwaltungsrechner Windows Server 2016 oder neuer bzw. Windows 11, .NET 10 Desktop Runtime, Mitglied der Domäne
Zielserver Windows Server mit Windows PowerShell 5.1, WinRM aktiviert (TCP 5985 bzw. 5986)
Konto für den Scan Lokaler Administrator auf den Zielservern
Internet (optional) HTTPS zu services.nvd.nist.gov, endoflife.date und packagist.org

PHP Security Scanner – „Jede PHP-Installation finden – bevor es ein Angreifer tut“

Teil der ISW-Tools Suite von IT-Service Walter

© 2027 IT-Service Walter | Alle Rechte vorbehalten