Die Angriffsserie begann am 20. März, als Aqua Security feststellen musste, dass Unbekannte bereits einen Monat zuvor in die GitHub-Organisation eindringen konnten. Obwohl das Unternehmen Secrets und Tokens rotierte, war dieser Prozess nicht vollständig abgesichert — die Angreifer gelangten an die neuen, aufgefrischten Token. Sie nutzten dies, um Credential-Harvesting-Code in Trivy einzuschleusen und malware-infizierte Versionen des Tools zu veröffentlichen.
Nach schneller Reaktion publizierte Aqua am 20. März sichere neue Versionen und holte das Incident-Response-Unternehmen Sygnia zur Hilfe. Doch am 22. März kam der nächste Schlag: TeamPCP hatte sich erneut Zugang verschafft und griff abermals an. Die Supply-Chain-Sicherheitsfirma Socket identifizierte zwei kompromittierte Docker-Images (Version 0.69.5 und 0.69.6), die ohne entsprechende GitHub-Releases hochgeladen wurden — ein großes Warnsignal, da die letzte legitime Version 0.69.3 war.
Die Hackergruppe nutzte ein Service-Konto namens “Argon-DevOps-Mgt” aus, das auf beide GitHub-Organisationen von Aqua Zugriff hatte. Das Kernproblem: Das Konto war über einen Personal Access Token (PAT) authentifiziert — eine Art Passwort mit längerer Gültigkeit und ohne Multi-Factor-Authentication. Innerhalb von zwei Minuten ergänzte TeamPCP alle 44 Repositories in der privaten aquasec-com-Organisation mit dem Präfix “tpcp-docs-” und änderte alle Beschreibungen zu “TeamPCP Owns Aqua Security”.
Die Sicherheitsanalytiker von OpenSourceMalware gehen davon aus, dass TeamPCP den PAT via das TeamPCP Cloud Stealer-Malware-Tool erbeutet hat — ein Infostealer, der GitHub-Token, SSH-Keys und Cloud-Credentials aus CI-Runner-Umgebungen stiehlt.
Aqua Security versichert, dass die in seinen kommerziellen Produkten verwendeten Trivy-Versionen nicht betroffen sind, da diese einer strikten Integrationskontrolle unterliegen. Dennoch empfehlen Sicherheitsexperten allen Nutzern dringend, zu überprüfen, welche Trivy-Versionen sie einsetzen, und auf Updates zu warten. Der Vorfall unterstreicht ein fundamentales Problem: Selbst bei prompter Reaktion können Angreifer durch Ausnutzung von Authentifizierungslücken und mangelhafter Multi-Factor-Protection immer wieder zurückkehren.
