GTPDOOR-malware
Beveiligingsanalisten hebben een Linux-malware geïdentificeerd met de naam GTPDOOR, die expliciet is ontworpen voor inzet binnen telecomnetwerken in de buurt van GPRS-roaming-exchanges (GRX). Het innovatieve gebruik van het GPRS Tunneling Protocol (GTP) voor Command-and-Control (C2)-communicatie onderscheidt deze malware. Met GPRS-roaming hebben abonnees toegang tot hun GPRS-diensten wanneer ze zich buiten de dekking van hun mobiele thuisnetwerk bevinden. Dit wordt mogelijk gemaakt door een GRX, die het transport van roamingverkeer met behulp van GTP tussen het bezochte en eigen Public Land Mobile Network (PLMN) vergemakkelijkt.
Deskundigen vermoeden dat de GTPDOOR-achterdeur mogelijk verband houdt met een erkende dreigingsactor, LightBasin (ook bekend als UNC1945). Deze specifieke cybercriminele groep is in verband gebracht met een reeks aanvallen gericht op de telecommunicatiesector, met als doel abonneegegevens en metagegevens van oproepen te stelen.
De GTPDOOR-malware biedt illegale toegang aan cybercriminelen
Na uitvoering initieert GTPDOOR zijn bewerkingen door de procesnaam te wijzigen in '[syslog]', vermomd als een syslog die vanuit de kernel wordt aangeroepen. Het neemt maatregelen om kindsignalen te onderdrukken en gaat vervolgens over tot het openen van een ruwe socket, waardoor het implantaat UDP-berichten kan onderscheppen die op de netwerkinterfaces zijn gericht.
In wezen biedt GTPDOOR een mogelijkheid voor een bedreigingsacteur met gevestigde persistentie op het roaming-uitwisselingsnetwerk om te communiceren met een gecompromitteerde host. Deze communicatie wordt bereikt door het verzenden van GTP-C Echo Request-berichten die een schadelijke lading bevatten. Het GTP-C Echo Request-bericht dient als kanaal om opdrachten te verzenden die op de geïnfecteerde machine moeten worden uitgevoerd en de resultaten terug te sturen naar de externe host.
GTPDOOR kan discreet worden onderzocht vanaf een extern netwerk, waarbij een reactie wordt geactiveerd door een TCP-pakket naar een willekeurig poortnummer te sturen. Als het implantaat actief is, retourneert het een zelfgemaakt leeg TCP-pakket, samen met informatie over of de bestemmingspoort open was of reageerde op de host.
Dit implantaat lijkt op maat gemaakt om te verblijven op gecompromitteerde hosts die rechtstreeks zijn verbonden met het GRX-netwerk – dit zijn systemen die via de GRX communiceren met andere netwerken van telecommunicatiebedrijven.
De GTPDOOR-malware voert verschillende bedreigende acties uit zodra deze is geactiveerd
GTPDOOR houdt zich bezig met verschillende kwaadaardige activiteiten, waaronder het luisteren naar een specifiek wakeup-pakket, geïdentificeerd als een GTP-C-echoverzoekbericht (GTP-type 0x01). Opmerkelijk genoeg heeft de host geen actieve luistersockets of -diensten nodig, omdat alle UDP-pakketten in de gebruikersruimte worden ontvangen via het openen van een onbewerkte socket. Bovendien is GTPDOOR ontworpen om een commando uit te voeren op de host die is gespecificeerd in het magische pakket, de uitvoer terug te sturen naar de externe host en een 'reverse shell'-type functionaliteit te ondersteunen. Zowel verzoeken als antwoorden worden respectievelijk verzonden als GTP_ECHO_REQUEST en GTP_ECHO_RESPONSE berichten.
Het implantaat kan discreet worden onderzocht vanaf een extern netwerk, waarbij een reactie wordt opgeroepen door een TCP-pakket naar een willekeurig poortnummer te sturen. Als het implantaat actief is, retourneert het een vervaardigd leeg TCP-pakket, met informatie over de vraag of de bestemmingspoort open was of reageerde op de host.
Om veiligheidsredenen authenticeert en codeert GTPDOOR de inhoud van magische GTP-pakketberichten met behulp van een eenvoudig XOR-cijfer. Tijdens runtime kan het de opdracht krijgen om de authenticatie- en encryptiesleutel te wijzigen door het opnieuw te versleutelen, waardoor wordt voorkomen dat de standaardsleutel die hardgecodeerd is in het binaire bestand, wordt gebruikt door andere bedreigingsactoren. Om op te gaan in de omgeving verandert GTPDOOR de procesnaam zodat deze lijkt op een syslog-proces dat wordt aangeroepen als een kernelthread. Belangrijk is dat het werkt zonder dat wijzigingen in de firewall nodig zijn als de doelhost mag communiceren via de GTP-C-poort.