Aikido

Angriff auf die Lieferkette zielt mit einem Credential-Stealer auf Laravel-Lang-Pakete ab

Verfasst von
Ilyas Makari

Am 22. Mai 2026 haben wir einen aktiven Supply-Chain-Angriff auf Laravel-Lang entdeckt. Wir haben den Betreibern umgehend einen Bericht übermittelt. Der Angreifer veröffentlichte bösartige Versions-Tags in drei weit verbreiteten Repositorys und schleuste dabei Code ein, der Anmeldedaten stiehlt und über die Autoloader-Funktion von Composer automatisch geladen wird.

Das Besondere an dieser Vorgehensweise ist, dass der Schadcode nie in die offiziellen Repositorys eingecheckt wurde. GitHub erlaubt es, dass Versions-Tags auf Commits aus einem Fork desselben Repositorys verweisen. Der Angreifer nutzte dies aus, um Tags zu erstellen, die auf Commits in einem von ihm kontrollierten, bösartigen Fork verwiesen.

Derzeit sind 233 Versionen betroffen, und zwar in folgenden Bereichen:

  • laravel-lang/lang (7,8 Tausend Sterne)
  • laravel-lang/Attribute
  • laravel-lang/http-statuses

Wir haben den Angriff außerdem an Packagist gemeldet, das umgehend reagierte, indem es die schädlichen Versionen entfernte und die betroffenen Pakete vorübergehend aus dem Verzeichnis nahm, um weitere Installationen zu verhindern.

Phase 1: Der Tropfer

Der Angreifer hat eine Datei namens src/helpers.php in die entsprechenden Versions-Tags. Auf den ersten Blick sieht es aus wie ein gewöhnlicher Laravel-Lokalisierungshelfer, der zwei harmlose Funktionen definiert: laravel_lang_locale() und laravel_lang_fallback(). Unterhalb dieser Funktionen beginnt die eigentliche Arbeit.

Ein selbstausführender Code-Block wird auf jedem infizierten Rechner einmal ausgeführt. Er erstellt einen Fingerabdruck des Hosts anhand eines Hashwerts aus Dateipfad, Hostname und Inode und schreibt anschließend eine Markierungsdatei in das temporäre Verzeichnis des Systems, damit er nur einmal ausgelöst wird. Die C2-Domain ist in einem Integer-Array versteckt, das zur Laufzeit entschlüsselt wird, um statische Scanner zu umgehen. Sie lautet flipboxstudio[.]info.

Der Dropper ruft dann eine Nutzlast von flipboxstudio[.]info/payload unter Verwendung von `file_get_contents` mit einem `curl`-Fallback, jeweils bei deaktivierter SSL-Überprüfung. Unter Windows wird ein .vbs-Launcher abgelegt und die Payload im Hintergrund über `cscript` ausgeführt. Unter Linux und macOS wird die Payload im Hintergrund über exec().

Phase 2: Der Dieb

Die abgerufene Nutzlast ist ein etwa 5.900 Zeilen langer PHP-Stealer für Anmeldedaten, der in fünfzehn spezielle Sammelmodule unterteilt ist. Nachdem er alle auffindbaren Daten gesammelt hat, verschlüsselt er die Ergebnisse mit AES-256 und sendet sie an flipboxstudio[.]info/exfil. Anschließend löscht es sich selbst von der Festplatte, um forensische Spuren zu minimieren.

Was es stiehlt

Cloud

  • AWS-Zugriffsschlüssel, geheime Schlüssel und Sitzungstoken (aus der Umgebung, ~/.aws/credentials und Metadaten zu aktiven EC2-Instanzen)
  • Standard-Anmeldedaten für GCP-Anwendungen, Zugriffstoken-Datenbanken und alle benannten CLI-Konfigurationen
  • Azure-Zugriffstoken, MSAL-Cache und Dienstprinzipalprofile
  • Authentifizierungstoken von DigitalOcean, Heroku, Vercel, Netlify, Railway und Fly.io

secrets der Infrastruktur

  • Alle kubeconfig-Dateien, einschließlich /etc/kubernetes/admin.conf
  • HashiCorp Vault Tokens
  • Konfigurationen des Helm-Repositorys
  • Docker config.json

Entwickelnde

  • Private SSH-Schlüssel
  • Alle .git-credentials und .gitconfig Dateien
  • .netrc, .npmrc, .yarnrc, .pypirc, .gem/credentials, .composer/auth.json
  • Authentifizierungstoken für GitHub CLI, GitLab CLI und Hub CLI
  • Shell-Protokolldateien (bash, zsh, psql, mysql, python, node)
  • Alle .env Dateien und Konfigurationsdateien, die durch rekursives Durchsuchen des Arbeitsverzeichnisses gefunden wurden (wp-config.php, settings.py, docker-compose.yml, secrets.yaml und weitere)

Browser und Passwortmanager

  • Gespeicherte Passwörter aus 17 Chromium-basierten Browsern: Chrome, Edge, Brave, Opera, Opera GX, Vivaldi, Chromium, Yandex und weitere. Unter Windows ein mitgelieferter Hilfsdienst .exe wird abgelegt, um die durch DPAPI geschützte Anmeldedatenbank von Chrome zu entschlüsseln
  • Firefox und Thunderbird logins.json und key4.db in allen Profilen
  • KeePass .kdbx und .kdb Datenbankdateien
  • Lokale Tresordateien von 1Password Bitwarden

Kryptowährungs-Wallets

  • Wallet-Dateien für Bitcoin, Ethereum, Monero, Litecoin, Dash, Dogecoin und Zcash
  • Electrum-, Exodus-, Atomic-, Ledger Live-, Trezor-, Wasabi- und Sparrow-Wallets
  • Browser-Erweiterungs-Wallets nach Erweiterungs-ID: MetaMask, Phantom, Trust Wallet, Ronin, Keplr, Solflare und Rabby

Windows-spezifisch

  • Einträge im Windows-Anmeldeinformations-Manager und im Tresor
  • Gespeicherte Sitzungen in PuTTY und WinSCP (WinSCP-Passwörter werden aktiv entschlüsselt)
  • .rdp Dateien vom Desktop, aus den Ordnern „Dokumente“ und „Downloads“
  • Outlook-Registrierungsprofile, Bestandsliste der OST-/PST-Dateien und Einträge im Anmeldeinformations-Manager für Microsoft-Dienste

Kommunikationsplattformen

  • Slack-Token
  • Discord-Bot-Token 
  • Telegram-Bot-Token

VPN-Konfigurationen

  • Konfigurationsdateien und extrahierte Anmeldedaten für NordVPN, ExpressVPN, ProtonVPN, CyberGhost, Private Internet Access, Windscribe, Mullvad, Surfshark, WireGuard und OpenVPN

Wie Aikido dies erkennt

Wenn Sie ein Aikido-Benutzer sind, überprüfen Sie Ihren zentralen Feed und filtern Sie nach Malware-Problemen. Dies wird als kritisches Problem mit 100/100 angezeigt. Aikido führt nächtliche Rescans durch, aber wir empfehlen, jetzt einen manuellen Rescan auszulösen.

Wenn Sie noch kein Aikido-Benutzer sind, können Sie ein Konto erstellen und Ihre Repos verbinden. Unsere Malware-Abdeckung ist im kostenlosen Plan enthalten, keine Kreditkarte erforderlich.

Für eine umfassendere Abdeckung Ihres gesamten Teams bietet Aikidos Endpoint Protection Ihnen Transparenz und Kontrolle über die Softwarepakete, die auf den Geräten Ihres Teams installiert sind. Es deckt Browser-Erweiterungen, Code-Bibliotheken, IDE-Plugins und Build-Abhängigkeiten ab, alles an einem Ort. Stoppen Sie Malware, bevor sie installiert wird.

Für zukünftigen Schutz sollten Sie Aikido Safe Chain (Open Source) in Betracht ziehen. Safe Chain integriert sich in Ihren bestehenden Workflow, indem es npm-, npx-, yarn-, pnpm- und pnpx-Befehle abfängt und Pakete vor der Installation gegen Aikido Intel prüft.

Anzeichen für eine Kompromittierung

Netzwerk

  • flipboxstudio.info (C2-Domäne)
  • flipboxstudio.info/payload (Tropfer holen)
  • flipboxstudio.info/exfil (Endpunkt der Datenexfiltration)

Dateien und Pfade

  • <tmp>/.laravel_locale/<md5_hash> (Infektionsmarker)
  • <tmp>/.laravel_locale/<12 random hex chars>.php (abgeworfener Dieb)
  • <tmp>/.laravel_locale/<8 random hex chars>.vbs (Windows-Startprogramm)
Teilen:

https://www.aikido.dev/blog/supply-chain-attack-targets-laravel-lang-packages-with-credential-stealer

Nachrichten abonnieren

4.7/5
Falschpositive Ergebnisse leid?

Probieren Sie Aikido, wie 100.000 andere.
Jetzt starten
Erhalten Sie eine personalisierte Führung

Von über 100.000 Teams vertraut

Jetzt buchen
Scannen Sie Ihre App nach IDORs und realen Angriffspfaden

Von über 100.000 Teams vertraut

Scan starten
Erfahren Sie, wie KI-Penetrationstests Ihre App testen

Von über 100.000 Teams vertraut

Testen starten

Sicherheit jetzt implementieren

Sichern Sie Ihren Code, Ihre Cloud und Ihre Laufzeit in einem zentralen System.
Finden und beheben Sie Schwachstellen schnell und automatisch.

Keine Kreditkarte erforderlich | Scan-Ergebnisse in 32 Sek.