Keksec & Tsunami-Ryuk - Lacework

Keksec & Tsunami-Ryuk

Lacework Labs

June 10, 2021

Chris Hall
Cloud Security Researcher – Lacework Labs

 

Schlüsselerkentnisse 

  • Keksec nutzt jetzt eine neue Tsunami-DDoS-Malware mit dem Namen „Ryuk“ (nicht die Ransomware-Familie)
  • Die Gruppe hat ihren DGA-Algorithmus aktualisiert, der von der Python-Malware Necro verwendet wird
  • Ein Inventar der Malware-Verteilungsinfrastruktur von Keksec wird bereitgestellt
  • Neue Personendaten sind enthalten

 

Keksec, alias Necro oder Freakout, ist ein erfolgreicher Akteur, der mit dem Ziel von Crypto-Mining und DDos-Abläufen die Cloud-Infrastruktur ins Visier nimmt. Die Gruppe hat es vor kurzem wieder in die Nachrichten geschafft, indem sie ihre Infrastruktur und Fähigkeiten mit neuen Exploits und Verbreitungstechniken erweitert hat. Dieser Blog wirft einen umfassenden Blick auf die Intrusion-Infrastruktur von Keksec und enthält bisher unveröffentlichte Inhalte wie die Verwendung einer neuen Tsunami-Variante namens Ryuk, einen neuen DGA-Algorithmus und neue Personendaten.

 

Necro – DGA

Necro ist der Name für die Python-IRC-Malware und das Botnet von Keksec, wobei die neueste Version von Talos dokumentiert wird. Die Malware zeichnet sich durch ihre einzigartige Verschleierung aus, die eine Kombination aus zlib-Datenkomprimierung und einem Multibyte-XOR-Schlüssel nutzt. Im März 2021 veröffentlichte Lacework Labs ein Skript, das auch diese neueste Variante dekodiert.

In der neuesten Version wurden bedeutende Aktualisierungen vorgenommen, um Exploits einzuschließen, die auf Vesta Control Panel, ZeroShell 3.9.0, SCO OpenServer 5.0.7 und vCenter von VMWare (CVE-2021-21972) abzielen. Die Malware versucht nun auch, sich über SSH-Brute-Forcing zu verbreiten. Auch ein neuer DGA-Algorithmus wurde aufgenommen, der der vorherigen Necro-Version sehr ähnlich ist, aber ein paar kleine Änderungen bei den Parametern „see“ und „random range“ aufweist.

DGA component old new
seed 0x7774DEAD 0x7228827A
randrange parameters range(random.randrange(10,19)))).lower() range(random.randrange(8,19)))).lower()

 

Zwei DGA-Domains wurden bisher beobachtet. Es gibt insgesamt 255 mögliche Domains. Bisher hat Keksec nur die ersten paar Domains verwendet, bevor das DGA-Schema geändert wurde, daher ist es möglich, dass dies auch dieses Mal der Fall sein wird

  • ngiwge486ln9daoo.hopto.org
  • can6dodp.servepics.com

Dieses Skript kann verwendet werden, um diese neuen DGA-Domains zu generieren.

 

Malware-Verteilungsinfrastruktur

Die Infrastruktur von Keksec besteht hauptsächlich aus 20 Hosts und ist um URI-Pfadnamen in Download-URLs herum angeordnet. Zu den am häufigsten verwendeten zählen „/Ryuk/“,„/Simps/“ und „/S1eJ3/“. Beispiele:

  • http://107.172.156.158/Ryuk/ur0a.x86_64
  • http://206.81.26.46/Simps/mipsel
  • http://23.95.80.200/SimpsX/m68k
  • http://45.144.225.65/S1eJ3/IObeENwjspc

Die folgende Tabelle listet diese Hosts auf, geordnet nach der Anzahl der Malware-Dateien (von 01.01. bis 09.06.2021). Einige Hosts sind für die oben genannten URI-Pfade eindeutig, während sich andere überschneiden.

Host ASN country Hosted malware count URI Path name(s)
195.133.40.24 “SPDNet Telekomunikasyon Hizmetleri Bilgi Teknolojileri Taahhut Sanayi Ve Ticaret A.S.” Russia 235 S1eJ3 & Simps
45.145.185.83 213035:”Des Capital B.V.” Netherlands 81 S1eJ3
45.14.224.127 62068:”SpectraIP B.V.” Netherlands 55 Ryuk & Simps
185.224.129.235 62068:”SpectraIP B.V.” Netherlands 54 Ryuk & Simps
185.224.129.224 62068:”SpectraIP B.V.” Netherlands 40 Simps
45.144.225.65 35913:”DEDIPATH-LLC” United States 39 S1eJ3
23.95.80.200 36352:”AS-COLOCROSSING” United States 34 fagggotbaggot, Simps, SimpsX
45.144.225.96 35913:”DEDIPATH-LLC” United States 29 S1eJ3
45.153.203.124 213035:”Des Capital B.V.” Netherlands 18 S1eJ3
206.81.26.46 14061:”DIGITALOCEAN-ASN” Germany 15 Simps
45.14.224.197 62068:”SpectraIP B.V.” Netherlands 15 Simps
185.203.116.7 44901:”Belcloud LTD” Bulgaria 14 S1eJ3
172.245.36.128 36352:”AS-COLOCROSSING” United States 13 S1eJ3
b0tz.xyz NA NA 8 Simps & SimpsX
107.172.156.158 36352:”AS-COLOCROSSING” United States 5 Ryuk
45.14.224.200 62068:”SpectraIP B.V.” Netherlands 4 Simps
164.90.164.132 14061:”DIGITALOCEAN-ASN” Germany 3 S1eJ3
134.122.78.91 14061:”DIGITALOCEAN-ASN” Germany 1 Simps
192.236.146.182 54290:”HOSTWINDS” United States 1 Ryuk & S1eJ3

 

Der aktivste Host ist weiterhin die IP 195.133.40.43, die hauptsächlich im „S1eJ3“-Teil der Infrastruktur zur Bereitstellung der Tor-basierten Tsunami-Variante von Keksec verwendet wird. Lacework Labs hat diese Malware in einem Blog ausführlich beschrieben – The "Kek Security" Network. Zum Zeitpunkt dieser Analyse verwendete Keksec unter .onion den C2-Host vp3te7pkfczmnnl.onion. Die neuen Exemplare verwenden jedoch den Host dimumdjenyy4jwlc.onion zusammen mit demselben Chiffrierschlüssel, der für die Entschlüsselung verwendet wird:

%q*KC)&F98fsr2to4b3yi_:wB>z=;!k?”EAZ7.D-md<ex5U~h,j|[email protected]

 

Tsunami-Ryuk

Eine neue Komponente im Malware-Inventar von Keksec ist eine weitere Tsunami-basierte DDoS-Malware mit dem Namen „Ryuk“. Insgesamt wurden 83 Exemplare identifiziert, von denen die ersten im Zeitraum von Mitte Mai bis Mitte Juni auftauchten. Dieser Name ist nicht zu verwechseln mit der Ransomware Ryuk und stellt höchstwahrscheinlich eine Anspielung auf den fiktiven Charakter aus der Manga-Serie „Death Note“ dar. Außerdem gibt es Hinweise darauf, dass die Malware in den SSH-Brute-Forcing-Kampagnen von Necro als Payload verwendet wird. So berichten mehrere Kommentare in VirusTotal, dass die Dateien in SSH-Honeypots beobachtet wurden.

Es gibt verschiedene Varianten von Ryuk, die von der zuvor beschriebenen „Ryuk“-Komponente der Keksec-Infrastruktur gehostet werden. Viele Exemplare sind UPX-verpackt und nutzen außerdem eine einfache Kodierungsmethode, um C2-IPs zu verschleiern, sowie eine Nachricht, die in eine Protokolldatei geschrieben wird. Die kodierte Version ist statisch als folgende Zeichenkette beobachtbar:

Ymnx2Ij{nhj2Nx2Nskjhyji2G~2W~zp2Gtysjy2Nsxyflwfr?Ezw5fdInxhtwi?ZW5F(76>>2W~zp(9;:7

Die entschlüsselte Nachricht offenbart Instagram- und Discord-Konten.

This-Device-Is-Infected-By-Ryuk-Botnet-Instagram:@ur0a_Discord:UR0A#2199-Ryuk#4652

Der Name der für die Dekodierung verantwortlichen Funktion in der Binärdatei lautet „util_encryption“. Das Programm vermindert einfach jedes Zeichen in der Zeichenkette um den Wert 5. Die Untersuchung der Funktion xrefs ergab, dass sie zur Dekodierung des Inhalts der Protokolldatei, C2 und DDoS-Befehlen genutzt wird. Die Suche nach diesem Artefakt in VirusTotal ergab eine Reihe weiterer Tsunami-Varianten mit einem ähnlichen Dekodierungs-Routing gleichen Namens, aber mit einer Verminderung um den Wert 1 statt 5.

   

Abbildung 1. Dekodierprogramm IDS Pro von Tsunami-Ryuk

 

Das folgende Python-Skript kann für die Dekodierung dieser Ryuk-Konfigurationen sowie für andere Malware mit ähnlichen Methoden verwendet werden.

 

ryuk_strings = ['Ymnx2Ij{nhj2Nx2Nskjhyji2G~2W~zp2Gtysjy2Nsxyflwfr?Ezw5fdInxhtwi?ZW5F(76>>2W~zp(9;:7','9:3693779367<']
for str_ in ryuk_strings:
  decoded_ = []
  for s in str_:
    decrement = chr(ord(s) - 5)
    decoded_.append(decrement)
  print ''.join(decoded_)

Decoding Script for Ryuk configs

There are a few other Ryuk variants, with plaintext versions of the log file contents and c2 IP addresses. This message is consistent with Keksec’s habit of self-attributing malware and infrastructure.

This Device Has Been Infected by Ryuk Botnet Made By ur0a And Keksec Group 🙂

Additionally, the ‘ur0a’ handle is also used for several of the Ryuk payload names. For example:

  • ur0a.mipsel
  • ur0a.mips
  • ur0a.i686

 

Soziale Medien

Wie TeamTNT ist auch Keksec berüchtigt für Eigenwerbung. Dies wurde in den Artefakten der Ryuk-Malware deutlich, die Social-Media-Informationen für Discord und Instagram auflisten. Während sich das Discord-Konto als Sackgasse herausstellte, ist das Instagram-Konto online.

   

Abbildung 2. Instagram-Konto der Akteure

Das Instagram-Konto „ur0a_“ enthält keine Beiträge, folgt jedoch einigen anderen Konten von Interesse. Eines dieser Konten trägt den Namen „hellabootersonbotnet“. Am 10. Mai wurde auf diesem Konto ein Screenshot des IRC-Kontrollkanals von Necro gepostet. Der Kanal wurde aufgrund der IRC-Nachrichten als Necro identifiziert, insbesondere durch die Artefakte MB RAM total und die [HAX| in den IRC-Nachrichten. Diese sind als Formatierungs-Zeichenketten im Quellcode von Necro zu sehen. Zusätzlich erwähnt das Konto Freakout als Kommentar zu dem Beitrag „Freak out on top“.

 

   

Abbildung 3. IRC-Bots von Necro – „hellabootersonbotnet“ Instagram

 

Keksec aktualisiert häufig das Toolset und die Exploits-Suite und wird so zu einer sich weiterentwickelnden Bedrohung. Glücklicherweise erleichtert ihre Angewohnheit, Malware und Infrastruktur selbst zuzuordnen, die Verfolgung. Indikatoren und Tools für diese Aktivität finden Sie auf unserem GitHub. Wenn Sie diesen Blog hilfreich fanden, dann teilen Sie ihn bitte und folgen Sie uns auf LinkedIn und Twitter!