Nieuwe Linux Rootkit PUMAKIT gebruikt geavanceerde stealth-technieken om detectie te omzeilen

Cybersecurity-onderzoekers hebben een nieuwe Linux-rootkit ontdekt genaamd PUMAKIT dat wordt geleverd met mogelijkheden om privileges te escaleren, bestanden en mappen te verbergen en zichzelf te verbergen voor systeemtools, terwijl tegelijkertijd detectie wordt omzeild.

“PUMAKIT is een geavanceerde loadable kernel module (LKM) rootkit die gebruik maakt van geavanceerde stealth-mechanismen om zijn aanwezigheid te verbergen en de communicatie met command-and-control-servers te behouden”, aldus Elastic Security Lab-onderzoekers Remco Sprooten en Ruben Groenewoud in een technisch rapport dat donderdag is gepubliceerd.

De analyse van het bedrijf is afkomstig van artefacten die eerder dit september naar het VirusTotal-malwarescanplatform zijn geüpload.

De interne onderdelen van de malware zijn gebaseerd op een meerfasige architectuur die bestaat uit een dropper-component genaamd “cron”, twee in het geheugen aanwezige uitvoerbare bestanden (“/memfd:tgt” en “/memfd:wpn”), een LKM-rootkit (“puma .ko”), en een gedeelde object (SO) userland rootkit genaamd Kitsune (“lib64/libs.so”).

Het maakt ook gebruik van de interne Linux-functietracer (ftrace) om in te haken op maar liefst 18 verschillende systeemaanroepen en verschillende kernelfuncties zoals “prepare_creds” en “commit_creds” om het gedrag van het kernsysteem te veranderen en zijn doelen te bereiken.

Linux-rootkit PUMAKIT

“Er worden unieke methoden gebruikt om met PUMA te communiceren, waaronder het gebruik van de rmdir() syscall voor escalatie van bevoegdheden en gespecialiseerde commando’s voor het extraheren van configuratie- en runtime-informatie”, aldus de onderzoekers.

“Door de gefaseerde implementatie zorgt de LKM-rootkit ervoor dat deze alleen wordt geactiveerd als aan specifieke voorwaarden wordt voldaan, zoals veilige opstartcontroles of de beschikbaarheid van kernelsymbolen. Deze voorwaarden worden geverifieerd door de Linux-kernel te scannen en alle benodigde bestanden worden ingebed als ELF-binaire bestanden binnen de druppelaar.”

Het uitvoerbare bestand “/memfd:tgt” is de standaard binaire versie van Ubuntu Linux Cron zonder enige wijzigingen, terwijl “/memfd:wpn” een lader voor de rootkit is, ervan uitgaande dat aan de voorwaarden is voldaan. De LKM-rootkit bevat op zijn beurt een ingesloten SO-bestand dat wordt gebruikt om vanuit de gebruikersruimte met de groentje te communiceren.

Elastic merkte op dat elke fase van de infectieketen is ontworpen om de aanwezigheid van de malware te verbergen en te profiteren van in het geheugen aanwezige bestanden en specifieke controles voordat de rootkit wordt vrijgegeven. PUMAKIT is niet toegeschreven aan een bekende bedreigingsacteur of -groep.

“PUMAKIT is een complexe en sluipende bedreiging die gebruik maakt van geavanceerde technieken zoals syscall hooking, memory-resident executie en unieke privilege-escalatiemethoden. Het multi-architecturale ontwerp benadrukt de groeiende verfijning van malware die zich richt op Linux-systemen”, concludeerden de onderzoekers.

Thijs Van der Does