banner

Nachricht

Dec 12, 2023

Kompromittierung der 3CX-Software-Lieferkette, ausgelöst durch eine frühere Kompromittierung der Software-Lieferkette; Mutmaßlicher nordkoreanischer Schauspieler verantwortlich

Im März 2023 reagierte Mandiant Consulting auf eine Lieferkettenkompromittierung, die die 3CX Desktop App-Software betraf. Während dieser Antwort stellte Mandiant fest, dass der anfängliche Kompromittierungsvektor des 3CX-Netzwerks über Schadsoftware erfolgte, die von der Website von Trading Technologies heruntergeladen wurde. Dies ist das erste Mal, dass Mandiant beobachtet, dass ein Angriff auf die Software-Lieferkette zu einem weiteren Angriff auf die Software-Lieferkette führte.

Die 3CX Desktop App ist eine Unternehmenssoftware, die ihren Benutzern Kommunikationsmöglichkeiten wie Chat, Videoanrufe und Sprachanrufe bietet. Ende März 2023 verbreitete eine Kompromittierung der Software-Lieferkette Malware über eine trojanisierte Version der legitimen Software von 3CX, die auf der Website von 3CX heruntergeladen werden konnte. Bei der betroffenen Software handelte es sich um 3CX DesktopApp 18.12.416 und früher, die bösartigen Code enthielt, der einen Downloader, SUDDENICON, ausführte, der wiederum zusätzliche Befehls- und Kontrollserver (C2) von verschlüsselten Symboldateien erhielt, die auf GitHub gehostet wurden. Der entschlüsselte C2-Server wurde verwendet, um eine dritte Stufe namens ICONICSTEALER herunterzuladen, einen Dataminer, der Browserinformationen stiehlt. Mandiant verfolgt diese Aktivität als UNC4736, einem mutmaßlichen nordkoreanischen Nexus-Aktivitätscluster.

Die Untersuchung der 3CX-Lieferkettenkompromittierung durch Mandiant Consulting hat den ursprünglichen Angriffsvektor aufgedeckt: ein mit Malware infiziertes Softwarepaket, das über eine frühere Software-Lieferkettenkompromittierung verbreitet wurde, die mit einem manipulierten Installationsprogramm für X_TRADER, einem von Trading Technologies bereitgestellten Softwarepaket, begann (Abbildung 1). . Mandiant stellte fest, dass ein komplexer Ladeprozess zum Einsatz von VEILEDSIGNAL, einer mehrstufigen modularen Hintertür, und ihren Modulen führte.

Mandiant Consulting identifizierte ein Installationsprogramm mit dem Dateinamen X_TRADER_r7.17.90p608.exe (MD5: ef4ab22e565684424b4142b1294f1f4d), was zur Bereitstellung einer bösartigen modularen Hintertür führte: VEILEDSIGNAL.

Obwohl die X_TRADER-Plattform Berichten zufolge im Jahr 2020 eingestellt wurde, stand sie im Jahr 2022 immer noch zum Download auf der legitimen Trading Technologies-Website zur Verfügung. Diese Datei war mit dem Betreff „Trading Technologies International, Inc“ signiert und enthielt auch die ausführbare Datei Setup.exe mit demselben digitalen Zertifikat signiert. Das zum digitalen Signieren der Schadsoftware verwendete Codesignaturzertifikat sollte im Oktober 2022 ablaufen.

Das Installationsprogramm enthält Setup.exe und führt es aus, wodurch zwei trojanisierte DLLs und eine harmlose ausführbare Datei gelöscht werden. Setup.exe verwendet die harmlose ausführbare Datei, um eine der schädlichen DLLs seitlich zu laden. Beim Sideloading werden legitime ausführbare Windows-Dateien verwendet, um eine schädliche Datei zu laden und auszuführen, die als legitime Abhängigkeit getarnt wurde. Die geladenen schädlichen DLLs enthalten und verwenden SIGFLIP und DAVESHELL, um die Nutzdaten der anderen gelöschten schädlichen ausführbaren Datei zu entschlüsseln und in den Speicher zu laden. SIGFLIP basiert auf der RC4-Stream-Verschlüsselung, um die Nutzdaten Ihrer Wahl zu entschlüsseln, und verwendet die Bytesequenz FEEDFACE, um den Shellcode, in diesem Fall DAVESHELL, während der Entschlüsselungsphase zu finden.

SIGFLIP und DAVESHELL extrahieren und führen eine modulare Hintertür, VEILEDSIGNAL, und zwei entsprechende Module aus. VEILEDSIGNAL verlässt sich bei der Prozessinjektion und der Kommunikation mit dem C2-Server auf die beiden extrahierten Module.

VEILEDSIGNAL und die beiden dazugehörigen Komponenten bieten folgende Funktionalität:

Die C2-Konfiguration des identifizierten Beispiels von VEILEDSIGNAL (MD5: c6441c961dcad0fe127514a918eaabd4) basierte auf der folgenden hartcodierten URL: www.tradingtechnologies[.]com/trading/order-management.

Die kompromittierten X_TRADER- und 3CXDesktopApp-Anwendungen enthalten, extrahieren und führen beide eine Nutzlast auf die gleiche Weise aus, obwohl die endgültige Nutzlast unterschiedlich ist. Mandiant analysierte diese Proben und stellte die folgenden Ähnlichkeiten fest:

Der Angreifer nutzte eine kompilierte Version des öffentlich verfügbaren Fast Reverse Proxy-Projekts, um sich während des Angriffs seitlich innerhalb der 3CX-Organisation zu bewegen. Die Datei MsMpEng.exe (MD5: 19dbffec4e359a198daf4ffca1ab9165) wurde vom Bedrohungsakteur in C:\Windows\System32 abgelegt.

Mandiant war in der Lage, die Schritte des Angreifers in der gesamten Umgebung zu rekonstruieren, während er Anmeldeinformationen sammelte und sich seitlich bewegte. Schließlich gelang es dem Angreifer, sowohl die Windows- als auch die macOS-Build-Umgebung zu kompromittieren. In der Windows-Build-Umgebung stellte der Angreifer einen TAXHAUL-Launcher und einen COLDCAT-Downloader bereit, der durch die Übernahme der DLL-Suchreihenfolge über den IKEEXT-Dienst bestehen blieb und mit LocalSystem-Berechtigungen ausgeführt wurde. Der macOS-Build-Server wurde durch die POOLRAT-Hintertür kompromittiert, die Launch Daemons als Persistenzmechanismus nutzte.

In früheren Berichten wurde erwähnt, dass der macOS-Build-Server durch SIMPLESEA kompromittiert wurde. Mandiant Intelligence hat die Analyse der Probe abgeschlossen und festgestellt, dass es sich dabei um die Hintertür POOLRAT und nicht um eine neue Malware-Familie handelt.

UNC4736 zeigt unterschiedlich starke Überschneidungen mit mehreren von Mandiant Intelligence verfolgten nordkoreanischen Betreibern, insbesondere mit solchen, die an finanziell motivierten Cyberkriminalitätsoperationen beteiligt sind. Diese Cluster haben im Laufe der Zeit gezeigt, dass sie sich nachhaltig auf Kryptowährungen und Fintech-bezogene Dienstleistungen konzentrieren.

Mandiant geht mit mäßiger Sicherheit davon aus, dass UNC4736 mit finanziell motivierten nordkoreanischen „AppleJeus“-Aktivitäten zusammenhängt, wie von CISA berichtet. Dies wird durch Erkenntnisse von Google TAG weiter untermauert, das die Kompromittierung von www.tradingtechnologies[.]com im Februar 2022 meldete, bevor die kompromittierten X_TRADER-Updates von der Website verteilt wurden.

Es wurde auch eine schwache Überschneidung der Infrastruktur zwischen UNC4736 und zwei Clustern vermuteter APT43-Aktivität, UNC3782 und UNC4469, festgestellt.

Datum

Domain

UNC

20.12.2022

Curvefinances[.]com

UNC4469

29.12.2022

pbxphonenetwork[.]com

UNC4736

Datum

Domain

UNC

08.04.2022

journalistide[.]org

UNC4736

26.11.2021

nxmnv[.]site

UNC3782

Datum

Domain

UNC

09.01.2023

msedgepackageinfo[.]com

UNC4736

22.03.2023

apollo-crypto.org.shilaerc20[.]com

UNC4469

Die identifizierte Kompromittierung der Software-Lieferkette ist die erste uns bekannte, die zu einer kaskadierenden Kompromittierung der Software-Lieferkette geführt hat. Es zeigt die potenzielle Reichweite dieser Art von Kompromittierung, insbesondere wenn ein Bedrohungsakteur Einbrüche verketten kann, wie in dieser Untersuchung gezeigt. Untersuchungen zur UNC4736-Aktivität legen nahe, dass sie höchstwahrscheinlich mit finanziell motivierten nordkoreanischen Bedrohungsakteuren zusammenhängt. Kaskadierende Kompromittierungen in der Software-Lieferkette zeigen, dass nordkoreanische Betreiber den Netzwerkzugang auf kreative Weise nutzen können, um Malware zu entwickeln und zu verbreiten und zwischen Zielnetzwerken zu wechseln und gleichzeitig Operationen durchzuführen, die im Einklang mit den Interessen Nordkoreas stehen.

ICONICSTEALER

ICONICSTEALER ist ein C/C++-Data-Miner, der Anwendungskonfigurationsdaten sowie den Browserverlauf sammelt.

DAVESHELL

DAVESHELL ist Shellcode, der als In-Memory-Dropper fungiert. Seine eingebettete Nutzlast wird im Speicher abgebildet und ausgeführt.

SIGFLIP

SigFlip ist ein Tool zum Patchen von Authenticode-signierten PE-COFF-Dateien, um beliebigen Code einzufügen, ohne die Signatur der Datei zu beeinträchtigen oder zu zerstören.

POOLRAT

POOLRAT ist eine C/C++-MacOS-Hintertür, die grundlegende Systeminformationen sammeln und Befehle ausführen kann. Zu den ausgeführten Befehlen gehören das Ausführen beliebiger Befehle, das sichere Löschen von Dateien, das Lesen und Schreiben von Dateien sowie das Aktualisieren der Konfiguration.

Steuererhebung

TAXHAUL ist eine DLL, die bei Ausführung eine Shellcode-Nutzlast entschlüsselt, die unter C:\Windows\System32\config\TxR\.TxR.0.regtrans-ms erwartet wird. Mandiant hat festgestellt, dass TAXHAUL durch die Übernahme von DLL-Suchaufträgen fortbesteht.

COLDCAT

COLDCAT ist ein komplexer Downloader. COLDCAT generiert eindeutige Host-Identifikatorinformationen und sendet sie an einen C2, der in einer separaten Datei per POST-Anfrage mit den Daten im Cookie-Header angegeben wird. Nach einem kurzen Handshake erwartet die Malware, dass Base64-codierter Shellcode als Antwort ausgeführt wird.

LEITSIGNAL

VEILEDSIGNAL ist eine in C geschriebene Hintertür, die Shellcode ausführen und sich selbst beenden kann. Darüber hinaus ist VEILEDSIGNAL auf zusätzliche Module angewiesen, die über Windows-Named Pipes eine Verbindung herstellen, um mit der C2-Infrastruktur zu interagieren.

Besonderer Dank geht an Michael Bailey, Willi Ballenthin, Michael Barnhart und Jakub Jozwiak für ihre Zusammenarbeit und Rezension. Mandiant möchte außerdem der Google Threat Analysis Group (TAG) und dem Microsoft Threat Intelligence Center (MSTIC) für ihre Zusammenarbeit bei dieser Forschung danken.

Ressourcenentwicklung

Erster Zugriff

Beharrlichkeit

Privilegieneskalation

Verteidigungsumgehung

Entdeckung

Steuerung und Kontrolle

Auswirkungen

Regel M_Hunting_3CXDesktopApp_Key {

Meta:

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

description = „Erkennt einen Schlüssel, der in einer schädlichen 3CXDesktopApp-Datei gefunden wurde“

md5="74bc2d0b6680faa1a5a76b27e5479cbc"

Datum = „29.03.2023“

Version = „1“

Saiten:

$key = "3jB(2bsG#@c7" breites ASCII

Zustand:

$key

}

Regel M_Hunting_3CXDesktopApp_Export {

Meta:

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

description = „Erkennt einen Export, der in 3CXDesktopApp-Malware verwendet wird“

md5="7faea2b01796b80d180399040bb69835"

Datum = „31.03.2023“

Version = „1“

Saiten:

$str1 = „DllGetClassObject“ breites ASCII

$str2 = „3CXDesktopApp“ breites ASCII

Zustand:

alles von ($str*)

}

Regel TAXHAUL{ Meta: Autor = "Mandiant" erstellt = "04/03/2023" geändert = "04/03/2023" Version = "1.0" Zeichenfolgen: $p00_0 = {410f45fe4c8d3d[4]eb??4533f64c8d3d[4] eb??4533f64c8d3d[4]eb} $p00_1 = {4d3926488b01400f94c6ff90[4]41b9[4]eb??8bde4885c074} Bedingung: uint16(0) == 0x5A4D und alle davon}

Regel M_Hunting_MSI_Installer_3CX_1

{

Meta:

Autor = „Mandiant“

md5 = „0eeb1c0133eb4d571178b2d9d14ce3e9, f3d4144860ca10ba60f7ef4d176cc736“

Saiten:

$ss1 = { 20 00 5F 64 33 64 63 6F 6D 70 69 6C 65 72 5F 34 37 2E 64 6C 6C 5F }

$ss2 = { 20 00 5F 33 43 58 44 65 73 6B 74 6F 70 41 70 70 2E }

$ss3 = { 20 00 5F 66 66 6D 70 65 67 2E 64 6C 6C 5F }

$ss4 = „3CX Ltd1“ ASCII

$sc1 = { 1B 66 11 DF 9C 9A 4D 6E CC 8E D5 0C 9B 91 78 73 }

$sc2 = „202303“ ASCII

Zustand:

(uint32(0) == 0xE011CFD0) und Dateigröße > 90 MB und Dateigröße < 105 MB und alle

}

Regel M_Hunting_TAXHAUL_Hash_1

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

Beschreibung = „Die Regel sucht nach fest codierten Werten, die im String-Hashing-Algorithmus verwendet werden, der in TAXHAUL-Instanzen beobachtet wird.“

md5="e424f4e52d21c3da1b08394b42bc0829"

Saiten:

$c_x64 = { 25 A3 87 DE [4-20] 25 A3 87 DE [4-20] 25 A3 87 DE }

Zustand:

Dateigröße < 15 MB und uint16(0) == 0x5a4d und uint32(uint32(0x3C)) == 0x00004550 und alle davon

}

Regel M_Hunting_SigFlip_SigLoader_Native

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

description = „Regel sucht nach Zeichenfolgen, die in SigLoader (nativ) vorhanden sind“

md5="a3ccc48db9eabfed7245ad6e3a5b203f"

Saiten:

$s1 = „[*]: Basic Loader…“ ASCII-Breite

$s2 = „[!]: Fehlender PE-Pfad oder Verschlüsselungsschlüssel …“ ASCII-Breite

$s3 = „[!]: Verwendung: %s “ ASCII-Wide

$s4 = „[*]: PE-Datei ‚%s‘ wird geladen/geparst“ ASCII-Breite

$s5 = „[!]: Datei %s konnte nicht gelesen werden“ im ASCII-Format

$s6 = „[!]: ‚%s‘ ist keine gültige PE-Datei“ im ASCII-Format

$s7 = „[+]: Zertifikatstabelle RVA %x“ ASCII-Breite

$s8 = „[+]: Zertifikatstabellengröße %d“ ASCII-Breite

$s9 = „[*]: Tag gefunden 0x%x%x%x%x“ ASCII-Breite

$s10 = „[!]: Daten/Shellcode konnten nicht gefunden werden“ im ASCII-Format

$s11 = „[+]: Verschlüsselte/entschlüsselte Datengröße %d“ ASCII-Breite

Zustand:

Dateigröße < 15 MB und uint16(0) == 0x5a4d und uint32(uint32(0x3C)) == 0x00004550 und 4 von ($s*)

}

Regel M_Hunting_Raw64_DAVESHELL_Bootstrap

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

Beschreibung = „Regel sucht nach Bootstrap-Shellcode (64 Bit), der in DAVESHELL vorhanden ist“

md5="8a34adda5b981498234be921f86dfb27"

Saiten:

$b6ba50888f08e4f39b43ef67da27521dcfc61f1e = { E8 00 00 00 00 59 49 89 C8 48 81 C1 ?? ?? ?? ?? BA ?? ?? ?? ?? 49 81 C0 ?? ?? ?? ?? 41 B9 ?? ?? ?? ?? 56 48 89 E6 48 83 E4 F0 48 83 EC 30 C7 44 24 20 ?? ?? ?? ?? E8 ?? 00 00 00 48 89 F4 5E C3 }

$e32abbe82e1f957fb058c3770375da3bf71a8cab = { E8 00 00 00 00 59 49 89 C8 BA ?? ?? ?? ?? 49 81 C0 ?? ?? ?? ?? 41 B9 ?? ?? ?? ?? 56 48 89 E6 48 83 E4 F0 48 83 EC 30 48 89 4C 24 28 48 81 C1 ?? ?? ?? ?? C7 44 24 20 ?? ?? ?? ?? E8 ?? 00 00 00 48 89 F4 5E C3 }

Zustand:

Dateigröße < 15 MB und alle davon

}

Regel M_Hunting_MSI_Installer_3CX_1

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

description = „Diese Regel sucht nach hartcodierten Werten innerhalb des MSI-Installationsprogramms, die in Zeichenfolgen und Signaturzertifikaten beobachtet werden.“

md5="0eeb1c0133eb4d571178b2d9d14ce3e9"

Saiten:

$ss1 = { 20 00 5F 64 33 64 63 6F 6D 70 69 6C 65 72 5F 34 37 2E 64 6C 6C 5F }

$ss2 = { 20 00 5F 33 43 58 44 65 73 6B 74 6F 70 41 70 70 2E }

$ss3 = { 20 00 5F 66 66 6D 70 65 67 2E 64 6C 6C 5F }

$ss4 = „3CX Ltd1“ ASCII

$sc1 = { 1B 66 11 DF 9C 9A 4D 6E CC 8E D5 0C 9B 91 78 73 }

$sc2 = „202303“ ASCII

Zustand:

(uint32(0) == 0xE011CFD0) und Dateigröße > 90 MB und Dateigröße < 100 MB und alle

}

Regel M_Hunting_VEILEDSIGNAL_1

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5 = „404b09def6054a281b41d309d809a428, c6441c961dcad0fe127514a918eaabd4“

Saiten:

$rh1 = { 68 5D 7A D2 2C 3C 14 81 2C 3C 14 81 2C 3C 14 81 77 54 10 80 26 3C 14 81 77 54 17 80 29 3C 14 81 77 54 11 80 AB 3C 14 8 1 D4 4C 11 80 33 3C 14 81 D4 4C 10 80 22 3C 14 81 D4 4C 17 80 25 3C 14 81 77 54 15 80 27 3C 14 81 2C 3C 15 81 4B 3C 14 81 94 4D 1D 80 28 3C 14 81 94 4D 14 80 2D 3C 14 81 94 4D 16 80 2D 3C 14 81 }

$rh2 = { 00 E5 A0 2B 44 84 CE 78 44 84 CE 78 44 84 CE 78 1F EC CA 79 49 84 CE 78 1F EC CD 79 41 84 CE 78 1F EC CB 79 C8 84 CE 78 BC F4 CA 79 4A 84 CE 78 BC F4 CD 79 4D 84 CE 78 BC F4 CB 79 65 84 CE 78 1F EC CF 79 43 84 CE 78 44 84 CF 78 22 84 CE 78 FC F5 C7 79 42 84 CE 78 FC F5 CE 79 45 84 CE 78 FC F5 CC 79 45 84 CE 78}

$rh3 = { DA D2 21 22 9E B3 4F 71 9E B3 4F 71 9E B3 4F 71 C5 DB 4C 70 94 B3 4F 71 C5 DB 4A 70 15 B3 4F 71 C5 DB 4B 70 8C B3 4F 71 66 C3 4B 70 8C B 3 4F 71 66 C3 4C 70 8F B3 4F 71 C5 DB 49 70 9F B3 4F 71 66 C3 4A 70 B0 B3 4F 71 C5 DB 4E 70 97 B3 4F 71 9E B3 4E 71 F9 B3 4F 71 26 C2 46 7 0 9F B3 4F 71 26 C2 B0 71 9F B3 4F 71 9E B3 D8 71 9F B3 4F 71 26 C2 4D 70 9F B3 4F 71 }

$rh4 = { CB 8A 35 66 8F EB 5B 35 8F EB 5B 35 8F EB 5B 35 D4 83 5F 34 85 EB 5B 35 D4 83 58 34 8A EB 5B 35 D4 83 5E 34 09 EB 5B 35 77 9B 5E 34 92 EB 5B 35 77 9B 5F 34 81 EB 5B 35 77 9B 58 34 86 EB 5B 35 D4 83 5A 34 8C EB 5B 35 8F EB 5A 35 D3 EB 5B 35 37 9A 52 34 8C EB 5B 35 37 9A 58 34 8E EB 5B 35 37 9A 5B 34 8E EB 5B 35 37 9A 59 34 8E EB 5B 35 }

Zustand:

uint16(0) == 0x5A4D und uint32(uint32(0x3C)) == 0x00004550 und 1 von ($rh*)

}

Regel M_Hunting_VEILEDSIGNAL_2

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5="404b09def6054a281b41d309d809a428"

Saiten:

$sb1 = { C1 E0 05 4D 8? [2] 33 D0 45 69 C0 7D 50 BF 12 8B C2 41 FF C2 C1 E8 07 33 D0 8B C2 C1 E0 16 41 81 C0 87 D6 12 00 }

$si1 = „CryptBinaryToStringA“ Vollwort

$si2 = „BCryptGenerateSymmetricKey“ Vollwort

$si3 = „CreateThread“ Vollwort

$ss1 = „ChainingModeGCM“ breit

$ss2 = „__hold“ vollständiges Wort

Zustand:

(uint16(0) == 0x5A4D) und (uint32(uint32(0x3C)) == 0x00004550) und (uint16(uint32(0x3C)+0x18) == 0x020B) und alle davon

}

Regel M_Hunting_VEILEDSIGNAL_3

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5 = „c6441c961dcad0fe127514a918eaabd4“

Saiten:

$ss1 = { 61 70 70 6C 69 63 61 74 69 6F 6E 2F 6A 73 6F 6E 2C 20 74 65 78 74 2F 6A 61 76 61 73 63 72 69 70 74 2C 20 2A 2F 2A 3 B 20 71 3D 30 2E 30 31 00 00 61 63 63 65 70 74 00 00 65 6E 2D 55 53 2C 65 6E 3B 71 3D 30 2E 39 00 00 61 63 63 65 70 74 2D 6C 61 6E 67 75 61 6 7 6 5 00 63 6F 6F 6B 69 65 00 00 }

$si1 = „HttpSendRequestW“ Vollwort

$si2 = „CreateNamedPipeW“ Vollwort

$si3 = „CreateThread“ Vollwort

$se1 = „DllGetClassObject“ Vollwort

Zustand:

(uint16(0) == 0x5A4D) und (uint32(uint32(0x3C)) == 0x00004550) und (uint16(uint32(0x3C)+0x18) == 0x020B) und alle davon

}

Regel M_Hunting_VEILEDSIGNAL_4

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5 = „404b09def6054a281b41d309d809a428, c6441c961dcad0fe127514a918eaabd4“

Saiten:

$sb1 = { FF 15 FC 76 01 00 8B F0 85 C0 74 ?? 8D 50 01 [6-16] FF 15 [4] 48 8B D8 48 85 C0 74 ?? 89 ?? 24 28 44 8B CD 4C 8B C? 48 89 44 24 20 }

$sb2 = { 33 D2 33 C9 FF 15 [4] 4C 8B CB 4C 89 74 24 28 4C 8D 05 [2] FF FF 44 89 74 24 20 33 D2 33 C9 FF 15 }

$si1 = „CreateThread“ Vollwort

$si2 = „MultiByteToWideChar“ Vollwort

$si3 = „LocalAlloc“-Vollwort

$se1 = „DllGetClassObject“ Vollwort

Zustand:

(uint16(0) == 0x5A4D) und (uint32(uint32(0x3C)) == 0x00004550) und (uint16(uint32(0x3C)+0x18) == 0x020B) und alle davon

}

Regel M_Hunting_VEILEDSIGNAL_5

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5="6727284586ecf528240be21bb6e97f88"

Saiten:

$sb1 = { 48 8D 15 [4] 48 8D 4C 24 4C E8 [4] 85 C0 74 ?? 48 8D 15 [4] 48 8D 4C 24 4C E8 [4] 85 C0 74 ?? 48 8D 15 [4] 48 8D 4C 24 4C E8 [4] 85 C0 74 ?? 48 8D [3] 48 8B CB FF 15 [4] EB }

$ss1 = „chrome.exe“ breites Vollwort

$ss2 = „firefox.exe“ breites Vollwort

$ss3 = „msedge.exe“ breites Vollwort

$ss4 = "\\\\.\\pipe\\*" ASCII-Vollwort

$ss5 = „FindFirstFileA“ ASCII-Vollwort

$ss6 = „Process32FirstW“ ASCII-Vollwort

$ss7 = „RtlAdjustPrivilege“ ASCII-Vollwort

$ss8 = „GetCurrentProcess“ ASCII-Vollwort

$ss9 = „NtWaitForSingleObject“ ASCII-Vollwort

Zustand:

(uint16(0) == 0x5A4D) und (uint32(uint32(0x3C)) == 0x00004550) und (uint16(uint32(0x3C)+0x18) == 0x020B) und alle davon

}

Regel M_Hunting_VEILEDSIGNAL_6

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5="00a43d64f9b5187a1e1f922b99b09b77"

Saiten:

$ss1 = „C:\\Programdata\\“ breit

$ss2 = „devobj.dll“ breites Vollwort

$ss3 = „msvcr100.dll“ breites Vollwort

$ss4 = „TpmVscMgrSvr.exe“ breites Vollwort

$ss5 = „\\Microsoft\\Windows\\TPM“ breites Vollwort

$ss6 = „CreateFileW“ ASCII-Vollwort

Zustand:

(uint16(0) == 0x5A4D) und (uint32(uint32(0x3C)) == 0x00004550) und (uint16(uint32(0x3C)+0x18) == 0x010B) und alle

}

Rule MTI_Hunting_POOLRAT { meta: author = "Mandiant" disclaimer = "Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet" description = "Erkennt in POOLRAT gefundene Zeichenfolgen. " md5 = "451c23709ecd5a8461ad060f6346930c" date = "10/ 28/2020“ version = „1“ strings: $str1 = „name=\“uid\“%s%s%u%s“ wide ascii $str2 = „name=\“session\“%s%s%u %s" wide ascii $str3 = "name=\"action\"%s%s%s%s" wide ascii $str4 = "name=\"token\"%s%s%u%s" wide ascii $ border = "--N9dLfqxHNUUw8qaUPqggVTpX-" Wide ASCII Nocase-Bedingung: beliebig ($str*) oder $boundary}

Regel M_Hunting_FASTREVERSEPROXY

{

Meta:

Autor = „Mandiant“

disclaimer = „Diese Regel ist für die Jagd gedacht und wurde nicht für die Ausführung in einer Produktionsumgebung getestet.“

md5="19dbffec4e359a198daf4ffca1ab9165"

Saiten:

$ss1 = „Gehe Build-ID:“ Vollwort

$ss2 = „Go buildinf:“ fullword

$ss3 = "net/http/httputil.(*ReverseProxy)." ASCII

$ss4 = „github.com/fatedier/frp/client“ ASCII

$ss5 = "\"server_port\"" ascii

$ss6 = „github.com/armon/go-socks5.proxy“ ASCII

Zustand:

uint16(0) == 0x5A4D und uint32(uint32(0x3C)) == 0x00004550 und alle

}

Warnung TCP Beliebig Beliebig -> Beliebig Beliebig (msg:"Möglicherweise böswillige 3CXDesktopApp identifiziert"; Inhalt:"raw.githubusercontent.com/IconStorages/images/main/"; Schwellenwert: Typlimit, Track by_src, Anzahl 1, Sekunden 3600; Sid : 99999999;)

alarm tcp any any -> any any (msg:"Möglicherweise böswillige 3CXDesktopApp identifiziert"; Inhalt:"3cx_auth_id=%s\;3cx_auth_token_content=%s\;__tutma=true"; Schwellenwert: Typlimit, Verfolgung von_src, Anzahl 1, Sekunden 3600; Sid: 99999999;)

Warnung TCP Beliebig Beliebig -> Beliebig Beliebig (msg:"Möglicherweise böswillige 3CXDesktopApp identifiziert"; Inhalt:"__tutma"; Schwellenwert: Typlimit, Track by_src, Anzahl 1, Sekunden 3600; Sid: 99999999;)

Warnung TCP Beliebig Beliebig -> Beliebig Beliebig (msg: „Möglicherweise böswillige 3CXDesktopApp identifiziert“; Inhalt: „__tutmc“; Schwellenwert: Typlimit, Track by_src, Anzahl 1, Sekunden 3600; Sid: 99999999;)

Organisationen können ihre Sicherheitskontrollen mithilfe der folgenden Aktionen mit Mandiant Security Validation validieren.

BEI

Name

A106-319

Befehl und Kontrolle – UNC4736, DNS-Abfrage, Variante Nr. 1

A106-321

Befehl und Kontrolle – UNC4736, DNS-Abfrage, Variante Nr. 2

A106-323

Befehl und Kontrolle – UNC4736, DNS-Abfrage, Variante Nr. 3

A106-324

Host-CLI – UNC4736, 3CX-Ausführungsschlüssel, Registrierungsänderung

A106-322

Schädliche Dateiübertragung – UNC4736, SUDDENICON, Download, Variante Nr. 1

S100-272

Bewertung: UNC4736 führt einen Lieferkettenangriff durch, der auf das 3CX-Telefonverwaltungssystem abzielt

Link zum RSS-Feed

Mandiant-Experten beantworten gerne Ihre Fragen.

Datumsdomäne UNC Datumsdomäne UNC Datumsdomäne UNC ICONICSTEALER DAVESHELL SIGFLIP POOLRAT TAXHAUL COLDCAT VEILEDSIGNAL VID-Name
AKTIE