Cyberangriffe werden zunehmend automatisiert. Die Telemetriedaten von Qualys TRU zeigen, wie sich diese Angriffe entwickeln und welche Maßnahmen Verteidiger als Nächstes ergreifen können. Mir liegt eine Qualys-Analyse vor, was Sicherheitsteams angesichts der Zunahme von PHP- und IoT-Exploits wissen müssen. Ich stelle den Text mal im Blog zur Information ein.
Hintergrund ist, dass die Qualys Threat Research Unit (TRU) einen starken Anstieg von Angriffen auf PHP-Server, IoT-Geräte und Cloud-Gateways festgestellt hat. Diese Angriffe gehen in erster Linie von Botnetzen wie Mirai, Gafgyt und Mozi aus. Diese automatisierten Kampagnen nutzen bekannte CVE-Schwachstellen und Fehlkonfigurationen in der Cloud aus, um die Kontrolle über exponierte Systeme zu erlangen und Botnet-Netzwerke zu erweitern.
Da PHP mehr als 73 Prozent der Websites unterstützt und 82 Prozent der Unternehmen Vorfälle im Zusammenhang mit Fehlkonfigurationen in der Cloud melden, war die Angriffsfläche noch nie so groß wie heute. In diesem Beitrag werden die neuesten Exploit-Trends untersucht, aktive Angriffsziele aufgezeigt und umsetzbare Maßnahmen skizziert, mit denen Sicherheitsteams ihre Abwehrmaßnahmen verstärken und die Gefährdung minimieren können.
PHP-Server sind das Hauptziel
PHP ist nach wie vor eine grundlegende Komponente für Websites sowie für Webanwendungen, insbesondere in populären Content-Management-Systemen (CMS) wie WordPress. Diese Allgegenwärtigkeit schafft jedoch auch eine große und attraktive Angriffsfläche. Viele PHP-Implementierungen leiden unter:
- Veralteten Versionen und Plugins
- Fehlkonfigurierten Dateiberechtigungen
- Debugging-Komponenten, die in der Produktion aktiviert bleiben
- Unsichere Dateispeicherung
Diese Lücken ermöglichen es Angreifern, Remote-Code-Execution-Angriffe (RCE) zu starten, Daten zu exfiltrieren oder den Server als Startrampe für Malware zu nutzen. Wenn diese Probleme nicht behoben werden, kann selbst eine einzige falsch konfigurierte oder veraltete PHP-Instanz zum Einstiegspunkt für eine groß angelegte Kompromittierung werden. So wurden beispielsweise Anfang dieses Jahres Hunderte von Websites aufgrund einer Zero-Day-Sicherheitslücke im PHP-basierten Craft CMS kompromittiert.
PHP-Exploit-Trends und bemerkenswerte CVEs
Angreifer sind stets auf der Suche nach Schwachstellen in beliebten PHP-Frameworks und -Entwicklungstools. Im Folgenden finden sich einige Beispiele dafür, wie kritische Schwachstellen und unsichere Konfigurationen weiterhin Einfallstore für RCE und Datenkompromittierung bieten.
CVE-2022-47945: Remote-Code-Ausführung im ThinkPHP-Framework
CVE-2022-47945 ist eine kritische RCE-Sicherheitslücke in ThinkPHP-Versionen vor 6.0.14, die Anwendungen mit aktivierter Mehrsprachenunterstützung (lang_switch_on = true) betrifft. Der Fehler liegt in der unsachgemäßen Eingabereinigung des Parameters „lang", den Angreifer ausnutzen, um eine lokale Dateieinbindung (LFI) sensibler interner Skripte durchzuführen, wie z. B.:
/vendor/pear/pearcmd.php /usr/local/lib/php/pearcmd
Abbildung 1: CVE-2022-47945 Ausnutzungsbefehl im Netzwerkverkehr
Remote-Debugging mit XDEBUG in PHPStorm
Qualys-Forscher haben Exploit-Versuche beobachtet, bei denen Angreifer die Abfragezeichenfolge ?XDEBUG_SESSION_START=phpstorm nutzen, um eine Remote-Debugging-Sitzung mit dem XDebug-Plugin in Kombination mit einer integrierten Entwicklungsumgebung (IDE) -in der Regel PHPStorm – zu initiieren.
Bleibt XDebug unbeabsichtigt in Produktionsumgebungen aktiv, können Angreifer diese Sitzungen nutzen, um Einblicke in das Anwendungsverhalten zu gewinnen oder sensible Daten zu extrahieren.

Abbildung 2: HTTP-Anfrage, bei der der Angreifer versucht, eine Remote-Debugging-Sitzung zu initiieren
CVE-2021-3129: RCE-Sicherheitslücke in Laravel
CVE-2021-3129 ist eine RCE-Sicherheitslücke, die Laravel-Anwendungen betrifft, wenn das Ignition-Debugging-Paket in Produktionsumgebungen verfügbar ist. Laravel Ignition macht die Route /_ignition/execute-solution im Debug-Modus verfügbar. Diese wird von Entwicklern genutzt, um Hilfsbefehle zur Fehlerbehebung auszuführen. Bleibt diese Funktion in der Produktion aktiviert, können Angreifer sie ausnutzen, um beliebigen Code auszuführen.
Im Folgenden findet sich ein Ausschnitt aus einem Netzwerkpaket, in dem Angreifer versuchen, CVE-2021-3129 auszunutzen. Der bösartige Befehl ist im nachfolgenden HTTP-Anforderungspaket Base64-codiert.
Abbildung 3: HTTP-Anforderung, bei der der Angreifer versucht, CVE-2021-3129 auszunutzen
CVE-2017-9841: PHPUnit RCE
Diese seit langem bestehende Schwachstelle befindet sich in PHPUnit, einem weit verbreiteten Testframework in PHP-Anwendungen. Der Fehler resultiert aus dem Vorhandensein des anfälligen Skripts „eval-stdin.php" in älteren PHPUnit-Versionen. Dadurch können nicht authentifizierte Angreifer beliebigen PHP-Code aus der Ferne ausführen.
Diese Schwachstelle wird häufig in falsch konfigurierten Produktionsumgebungen ausgenutzt, in denen Entwicklungstools unbeabsichtigt dem Internet ausgesetzt sind. HTTP-Anfrage-URLs, die häufig beim Scannen auftreten, sind unter anderem:
/api/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /app/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /apps/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /backup/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /blog/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /cms/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /crm/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /demo/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /laravel/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /lib/phpunit/phpunit/src/Util/PHP/eval-stdin.php /lib/phpunit/phpunit/Util/PHP/eval-stdin.php /lib/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /panel/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /public/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /test/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /testing/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /tests/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /V2/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /vendor/phpunit/phpunit/LICENSE/eval-stdin.php /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /vendor/phpunit/phpunit/Util/PHP/eval-stdin.php /vendor/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /workspace/drupal/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /ws/ec/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /ws/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /www/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /yii/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php /zend/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
Die Gefahren offengelegter Geheimnisse und Anmeldedaten
Unsicher gespeicherte Geheimnisse, wie beispielsweise Anmeldedaten, API-Schlüssel oder Zugriffstoken, die im Internet offengelegt werden, zählen zu den häufigsten und gefährlichsten Fehlkonfigurationen auf Servern. Unabhängig davon, ob sie beim Übergang von der Entwicklung zur Produktion zurückgelassen oder versehentlich in einer Bereitstellung beibehalten wurden: Geheimnisse in Klartextdateien können zu einer vollständigen Kompromittierung der Cloud-Infrastruktur führen. Während der ersten Erkundung und nach der Ausnutzung suchen Angreifer aktiv nach diesen Klartextdateien.
Qualys TRU hat fortlaufende Versuche von Angreifern identifiziert, auf sensible Amazon-Web-Services-(AWS)-Anmeldedaten auf offengelegten oder falsch konfigurierten Linux-Servern zuzugreifen. Häufig angegriffene Dateipfade sind unter anderem:
/.aws/credentials /aws/credentials /home/ec2-user/.aws/credentials /credentials /.aws/ecs-task-credentials /.aws/ecs-task-credentials.json /.aws/metadata/iam/security-credentials/ /.aws_creds.json /.db_credentials /.smtp-credentials /.well-known/credentials.json /admin/config?cmd=cat+/root/.aws/credentials /api/aws/credentials /api/v1/aws/credentials /api/v1/credentials /aws/credentials.json /aws/ecs/task-credentials /aws/ecs/task-credentials.json /aws/iam/credentials.json /aws/iam/ecs-task-credentials.json /aws/iam/temp-creds.json /aws/iam/temporary-credentials /aws/metadata/iam/security-credentials /aws/metadata/iam/security-credentials/ /aws/s3/credentials.bak /aws/s3/credentials.json /aws/s3/credentials.yml /aws_credentials.txt /aws_creds.js /data/aws/credentials /ecs/task-credentials /ecs/task-credentials.json /email/credentials.json /hidden/.aws/credentials /internal-api/aws/credentials /internal-api/iam/credentials /internal/aws/credentials /k8s/eks/credentials /latest/meta-data/iam/security-credentials/ /pms?module=logging&file_name=../../../../../../~/.aws/credentials&number_of_lines=10000 /private/aws_credentials.json /public/.aws/credentials /s3-credentials.bak /s3-credentials.json /s3/.aws/credentials /s3/public/credentials /tmp/.aws/credentials /vendor/.aws/credentials /vendor/aws/credentials
IoT-Geräte bleiben eine Schwachstelle in der Sicherheit
Angreifer nutzen nach wie vor unsichere oder veraltete IoT-Geräte aus. Oft verwenden diese Systeme veraltete Firmware, unsichere Protokolle und fest codierte Anmeldedaten, wodurch sie zu einem perfekten Ziel für Angriffe werden.
CVE-2024-3721: Befehlsinjektion in TBK-DVR-Geräten
CVE-2024-3721 ist eine kritische Befehlsinjektionsschwachstelle, die auf eine unsichere Firmware-Logik zurückzuführen ist. Sie betrifft die Modelle TBK DVR-4104 und DVR-4216 und wird aktiv von Mirai-ähnlichen Botnets ausgenutzt. Das Problem beruht auf nicht bereinigten [mdb/mdc]-Parametern in HTTP-Anfragen, die eine nicht authentifizierte Befehlsinjektion ermöglichen. Abbildung 4 zeigt einen Ausnutzungsversuch eines Angreifers.

Abbildung 4: CVE-2024-3721 Ausnutzungsbefehl im Netzwerkverkehr
Eine erfolgreiche Ausnutzung führt zum Herunterladen und Ausführen der bösartigen Skriptdatei selftbk.sh. Dieses Shell-Skript fungiert als Dropper, der eine auf die CPU-Architektur des Ziels (z. B. ARM7) zugeschnittene Variante der Mirai-Botnet-Malware herunterlädt und ausführt. Nach der Ausführung wird der infizierte DVR Teil eines Botnetzes, das DDoS-Angriffe starten, nach anderen anfälligen Geräten suchen und sich in der IoT-Infrastruktur halten kann.
MVPower DVR: Unauthenticated Command Execution
Ein weiteres wiederkehrendes Ziel ist der MVPower TV-7104HE DVR. Er enthält eine integrierte Hintertür, über die nicht authentifizierte Benutzer beliebige Systembefehle per HTTP-GET-Anfrage ausführen können. Obwohl es sich hierbei eher um eine Fehlkonfiguration als um eine Schwachstelle handelt, haben die Sicherheitsforscher beobachtet, dass diese aktiv von Mirai-Varianten ausgenutzt wird.
Im Folgenden findet sich ein Ausschnitt aus einem Paketerfassungsprotokoll, in dem das Mirai-Botnetz versucht, einen Befehl auf dem Remote-System auszuführen, indem es diese Schwachstelle ausnutzt.

Abbildung 5: MVPower DVR Shell – Ausführung nicht authentifizierter Befehle durch das MIRAI-Botnetz
Cloud-Schwachstellen: CVE-2022-22947
Auch Cloud-native Umgebungen werden über exponierte APIs und falsch konfigurierte Dienste angegriffen, wobei Angreifer bekannte Schwachstellen schnell ausnutzen. Ein Beispiel hierfür ist CVE-2022-22947, eine kritische RCE-Sicherheitslücke im Spring Cloud Gateway. Sie ermöglicht es nicht authentifizierten Angreifern, über eine böswillig gestaltete Anfrage an den Endpunkt /actuator/refresh beliebigen Code auszuführen.

Abbildung 6: Böswillige HTTP-Anfrage während der Ausnutzung von CVE-2022-22947
Bedrohungsakteure nutzen Cloud-Ressourcen für Aufklärungszwecke
Bei der Analyse der Quell-IPs, die an den jüngsten Scan-Aktivitäten beteiligt waren, wurde festgestellt, dass ein erheblicher Anteil der Scans von Cloud-Infrastrukturanbietern ausging. Dazu gehören namhafte Dienste wie Amazon Web Services (AWS), Google Cloud Platform (GCP), Microsoft Azure, DigitalOcean und Akamai Cloud.
Dies entspricht der Vorgehensweise von Bedrohungsakteuren, die Cloud-Ressourcen häufig missbrauchen, indem sie billige, temporäre oder kompromittierte Computerinstanzen nutzen, um Aufklärungs- und Ausnutzungsversuche durchzuführen und dabei ihre tatsächliche Herkunft zu verschleiern. Ein Großteil dieser Scan-Aktivitäten scheint mit der aktiven Ausnutzung von Schwachstellen in Verbindung zu stehen, beispielsweise mit Versuchen, die auf PHP, ThinkPHP, DVR-Geräte, Laravel, Spring Cloud Gateway-Server, SSH-Brute-Force-Angriffe, Fehlkonfigurationen und die Offenlegung von Geheimnissen abzielen.
Laut der Qualys TRU-Studie sind die Organisationen mit den höchsten autonomen Systemnummern (ASN) nach Gesamtzahl der Scan-Quell-IPs:

Dies verdeutlicht, wie einfach Angreifer groß angelegte Scans durchführen können: Sie verschleiern ihre Herkunft, indem sie kurzlebige virtuelle Maschinen (VMs) bei Anbietern wie AWS und GCP schnell hochfahren, diese dann wieder abschalten und den Zyklus wiederholen. Durch diese Taktik wird die Zuordnung erschwert, da der Datenverkehr scheinbar aus einer vertrauenswürdigen Cloud-Infrastruktur stammt.
5 bewährte Methoden zur Verringerung des Ausnutzungsrisikos
Um die oben genannten Risiken zu verringern, ist eine mehrschichtige Verteidigungsstrategie erforderlich, die die Transparenz verbessert, die Gefährdung begrenzt und die Behebung von Schwachstellen in den kritischsten Bereichen Ihrer Umgebung priorisiert.
Qualys listet einige bewährte Methoden auf, mit denen Sicherheitsteams diesen sich ständig weiterentwickelnden Bedrohungen einen Schritt voraus sein können:
- Sorgen Sie für zeitnahe Updates und Patches: Aktualisieren Sie regelmäßig alle Software-Abhängigkeiten, Bibliotheken und Frameworks. Überwachen Sie die Beratungskanäle der Anbieter auf neue CVEs. In containerisierten Umgebungen sollten Sie Images immer mit den neuesten Basis- und Anwendungsversionen neu erstellen.
- Entfernen Sie Entwicklungs- und Debugging-Tools aus der Produktion: Viele der ausgenutzten Schwachstellen existieren, weil Dev-Debug-Komponenten in der Produktion eingesetzt werden. Stellen Sie immer sicher, dass diese Komponenten in der Produktion deaktiviert sind.
- Schützen Sie sensible Dateien und Geheimnisse: Speichern Sie Geheimnisse nicht in Klartextdateien, sondern verwenden Sie einen verwalteten Speicher wie AWS Secrets Manager oder HashiCorp Vault. Es ist auch wichtig, Server und Container regelmäßig auf fest codierte Geheimnisse zu überprüfen.
- Verstärken Sie die Netzwerksicherheit: Erlauben Sie nur notwendigen IPs den Zugriff auf Ihre Cloud-Infrastruktur. Beschränken Sie den öffentlichen Zugriff auf Debug-Ports, IoT-Geräteshells und interne Dateipfade.
- Sichern Sie den Cloud-Zugriff und die Kontrollen: Verwenden Sie Sicherheitsgruppen, um den Port- und IP-Zugriff streng zu beschränken. Überwachen Sie die Cloud-Zugriffsprotokolle auf IAM-Missbrauch oder Versuche, Geheimnisse auszuspähen.
Heutige Angreifer müssen nicht besonders raffiniert sein, um erfolgreich zu sein. Mit weit verbreiteten Exploit-Kits, Botnet-Frameworks und Scan-Tools können selbst unerfahrene Angreifer erheblichen Schaden anrichten. Die Sicherheitsforscher bringen natürlich die eigene Qualys-Plattform ins Spiel, die Transparenz, Automatisierung und risikobasierte Priorisierung kombiniert. Mehr Informationen dazu gibt es hier.



MVP: 2013 – 2016





naja 2 der 3 Arten kann man relativ einfach schließen: IoT hat keinen Internetzugang zu haben (setzt halt voraus das man ordentliches IoT kauft, welche lokal laufen); Cloud ist auch nicht notwendig wenn man auf On Prem setzt, bleibt noch php übrig, da muss man sich halt um die Pflege kümmern, wenn man das nutzt und braucht!
Im Prinzip also alles lediglich Layer 8 Fehler! Und da weis man ja diese Lücke ist unpatchbar ;-P da hilft nur ersetzen.
Die Homepage nie selbst hosten, sondern extern bei einem der üblichen Anbieter (Strato, Hetzner, IONOS, all-inkl, etc . etc.).
Wird die Homepage komprimitiert, ist das eigene Netz immer noch sicher.
Und ja, IoT hat keinen Internetzugang zu haben.
Es gehört sogar in ein eigenes VLAN.
Und Cloud?
Ja, alles On-Prem machen, wenn man nicht die Hoheit über die eigenen Daten verlieren will.
Der Ansatz gilt als stark veraltet alles hinter dem Internet Perimeter als sicher zu betrachten. Kompromittierungen können auch von innen heraus passieren od. über lateral movement, da nützt dir das nichts, dass IoT keinen Internetzugang hat.
Die Pfade habe ich schon seit Monaten auf dem Schirm. Fail2ban sperrt die IPS direkt dann für mehrere Tage.
Bei uns sind es weit überwiegend (>90%) IPs aus Russland, China, Hongkong sowie seit ca 7-8 Monaten IPs von chinesischen Anbietern (Tencent & Co) die aber ihre Server weltweit stehen haben, auch in DE
Liest sich ja so schön, eigentlich bin ich ja dafür, aber grau ist die Theorie:
"Sorgen Sie für zeitnahe Updates und Patches: Aktualisieren Sie regelmäßig alle Software-Abhängigkeiten, Bibliotheken und Frameworks"
Bibliotheken und Frameworks, das Thema ist kaputt. Das npm-Zeugs darf man eigentlich nicht mehr verwenden und ganz nebenbei macht es die euvd Schwachstellen-Datenbank unbrauchbar, denn die wird seit Wochen mit Einträgen aus der Malware-Kategorie (MAL-2025-…) geflutet, so das man die für die eigene Arbeit interessanten CVE-Einträge nicht mehr sieht. Schauts euch selbst an:
https://euvd.enisa.europa.eu/search
Dort sind dutzende Seiten nur noch mit solchen MAL-Einträgen voll, alle mit Beschreibungen wie "Malicious code in yelling_condor_z3n (npm)" Heute Morgen habe ich nach über 80 Seiten und trotzdem nur 7 Stunden alten Einträgen zu npm Bibliotheken abgebrochen, dort noch nach für mich relevanten CVE-Einträgen zu suchen.
Bei hunderten npm Paketen mit Malicios code pro Woche kann man der ganzen npm-Plattform doch nicht mehr trauen. Hab schon die Empfehlung gelesen, man soll nur npm Pakete verwenden, die mindestens 2 Wochen alt sind, was obiger Updatestrategie (nur das Neueste ist das sicherste und beste) wiederspricht. Denn so erhofft man sich, dass schon jemand anders die Fehler und den Schadcode darin gefunden hat. Das ist doch absurd!