Acht Shell-Skripte dienten dem Angreifer dazu, die Firmware-Version der FortiGate-Appliance zu bestimmen, nach Schwachstellen zu suchen und anschließend passende Exploits auszuliefern. Geprüft wurden unter anderem CVE-2018-13379, CVE-2022-42475, CVE-2023-27997 und CVE-2024-21762. Nachdem die Firmware-Version bestätigt war, kam ein Exploit für CVE-2024-21762 zum Einsatz, der Codeausführung aus der Ferne ermöglichte.
Parallel dazu nahm der Angreifer die F5-BIG-IP-Instanz des Unternehmens ins Visier und testete sie auf mehrere Lücken, darunter CVE-2021-22986, CVE-2022-1388 und CVE-2023-46747. Ebenfalls untersucht wurde das interne Vertriebsportal von 3BB, das hinter dem Load Balancer betrieben wird.
Nach dem Erstzugang versuchten die Eindringlinge, auf mehreren Linux-Systemen Root-Rechte zu erlangen — mit Exploits für PwnKit und Dirty COW sowie einem eigens gebauten Installationsprogramm für eine SUID-Hintertür. „Nach der erfolgreichen Kompromittierung eines Hosts richtete der Akteur dauerhaften Fernzugriff ein und nutzte MeshCentral als Command-and-Control-Plattform für die Fernadministration", berichtet Hunt.io.
Im weiteren Verlauf setzten die Angreifer verschiedene Skripte zur Hosterkennung, für Fernzugriff und zum Sammeln von Zugangsdaten ein, um sich seitlich durch die interne Umgebung von 3BB zu bewegen. Ziel war das Auslesen von SSH-Schlüsseln, PHP-Konfigurationen, Datenbank-Zugangsdaten, SNMP-Community-Strings und Radius-Authentifizierungsdaten; zudem versuchten sie, sich ohne Passwort an internen MySQL-Datenbanken anzumelden.
Zwei weitere Skripte dienten laut Hunt.io dazu, „sensible Dateien zu lesen, PHP-Webshells abzulegen, SSH-Schlüssel einzuschleusen und Datenbankrechte zu verändern, was mehrere Mechanismen für Persistenz und seitliche Bewegung in der Umgebung bereitstellte".
Zum Abschluss führten die Angreifer ein Aufräumskript aus, das Spuren der Schwachstellenausnutzung und der Hintertür-Installation beseitigen sollte — einschließlich der PHP-Webshells, der MeshCentral-Installationsskripte und der Systemprotokolle. „Das Skript prüft zum Schluss, ob die Persistenzmechanismen weiterhin funktionieren, kontrolliert also die versteckte SUID-Binärdatei und vergewissert sich, dass der MeshCentral-Dienst noch läuft. Das zeigt, dass die Bereinigung den Einbruch verschleiern und zugleich den fortgesetzten Fernzugriff auf die kompromittierten Systeme sicherstellen sollte", so Hunt.io.
