De hackinggroep TeamPCP richt zich op Kubernetes-clusters met een kwaadaardig script dat alle machines wist zodra het systemen detecteert die zijn geconfigureerd voor Iran. Deze groep was eerder verantwoordelijk voor een supply-chain aanval op de Trivy kwetsbaarheidsscanner en een NPM-campagne genaamd ‘CanisterWorm’, die op 20 maart begon.
Onderzoekers van het applicatiebeveiligingsbedrijf Aikido melden dat de campagne die Kubernetes-clusters aanvalt dezelfde command-and-control infrastructuur, backdoor-code en drop-locatie gebruikt als bij de CanisterWorm-incidenten. De nieuwe campagne onderscheidt zich echter door een destructieve payload die specifiek Iraanse systemen aanvalt, terwijl op andere locaties de CanisterWorm-backdoor wordt geïnstalleerd. Het script maakt gebruik van dezelfde ICP canister en volgt het bekende lateral movement via Kubernetes DaemonSets, maar voegt nu een geopolitiek gerichte vernietigingsfunctie toe.
De malware is ontworpen om machines te vernietigen die overeenkomen met de Iraanse tijdzone en locale instellingen, ongeacht of Kubernetes aanwezig is. Bij detectie van een Iraans systeem met Kubernetes wordt een DaemonSet met de naam ‘Host-provisioner-iran’ ingezet in de ‘kube-system’ namespace. Deze maakt gebruik van privileged containers die het root-bestandssysteem van de host mounten. Elke pod draait een Alpine-container genaamd ‘kamikaze’ die alle hoofdmappen op het host-bestandssysteem verwijdert en vervolgens een herstart van het systeem forceert.
Op systemen met Kubernetes die niet Iraans zijn, wordt een andere DaemonSet ingezet, ‘host-provisioner-std’, die eveneens privileged containers gebruikt. In plaats van data te wissen, schrijft deze een Python-backdoor naar het host-bestandssysteem en installeert deze als een systemd-service, zodat de toegang persistent blijft op elke node. Op Iraanse systemen zonder Kubernetes wist de malware alle bestanden die toegankelijk zijn voor de gebruiker door het uitvoeren van het commando rm -rf / met de --no-preserve-root vlag. Indien rootrechten ontbreken, probeert de malware via passwordless sudo alsnog de verwijdering uit te voeren.
Indien geen van de voorwaarden wordt voldaan, onderneemt de malware geen kwaadaardige acties en stopt het proces. Een recentere versie van de malware gebruikt dezelfde ICP canister backdoor, maar laat de Kubernetes-laterale bewegingen achterwege en verspreidt zich via SSH. Hierbij worden authenticatielogs geanalyseerd op geldige credentials en worden gestolen private keys ingezet. Belangrijke indicatoren van deze activiteit zijn onder meer uitgaande SSH-verbindingen met ‘StrictHostKeyChecking+no’, verbindingen naar de Docker API op poort 2375 binnen het lokale subnet en privileged Alpine-containers via een niet-geauthenticeerde Docker API met het root-bestandssysteem als hostPath.
Reacties
Geef een reactie
Vereiste velden zijn gemarkeerd met *