Die russische Hackergruppe „APT29“, auch bekannt als „The Dukes“ oder „Cozy Bear“, ist eine klassifizierte fortgeschrittene Bedrohung, welcher einer Verbindung zum russischen Geheimdienst nachgesagt wird.
In unserem Blogbeitrag möchten wir auf die jüngsten Methoden, Techniken und Verfahren dieser Gruppe eingehen..
Das National Cyber Security Centre (NCSC) des Vereinigten Königreichs und das Communications Security Establishment (CSE) Kanadas gehen davon aus, dass es sich bei APT29 (auch bekannt als “The Dukes” oder “Cozy Bear”) um eine Cyber-Spionagegruppe handelt, die mit ziemlicher Sicherheit zu den russischen Geheimdiensten gehört.
Die Nationale Sicherheitsbehörde der Vereinigten Staaten (NSA) stimmt dieser Zuschreibung und den in diesem Bericht gemachten Angaben zu.
Die Cybersecurity and Infrastructure Security Agency (DHS CISA) des US-Heimatschutzministeriums stimmt den technischen Details und den Ratschlägen zur Eindämmung der Gefahren in diesem Gutachten zu.
Die Gruppe setzt eine Vielzahl von Instrumenten und Techniken ein, um vorwiegend Ziele in den Bereichen Regierung, Diplomatie, Think-Tanks, Gesundheitsfürsorge und Energie zu erreichen, um nachrichtendienstliche Erkenntnisse zu gewinnen.
Im Laufe des Jahres 2020 hat APT29 verschiedene Organisationen, die an der Entwicklung von COVID-19-Impfstoffen in Kanada, den Vereinigten Staaten und dem Vereinigten Königreich beteiligt sind, ins Visier genommen, höchstwahrscheinlich mit der Absicht, Informationen und geistiges Eigentum im Zusammenhang mit der Entwicklung und Erprobung von COVID-19-Impfstoffen zu stehlen.
APT29 setzt benutzerdefinierte Malware namens “WellMess” und “WellMail” ein, um eine Reihe von Organisationen weltweit ins Visier zu nehmen. Dazu gehören auch die Organisationen, die sich mit der Entwicklung von COVID-19-Impfstoffen befassen. WellMess und WellMail wurden bisher nicht öffentlich mit APT29 in Verbindung gebracht.
Die Gruppe APT29 verwendet häufig öffentlich zugängliche Exploits, um weit verbreitete Scans und Angriffe auf anfällige Systeme
durchzuführen, wahrscheinlich in dem Bemühen, Authentifizierungsreferenzen zu erhalten, welche weiteren Zugriff ermöglichen. Durch diese breit angelegte Ausrichtung erhält die Gruppe potenziell Zugang zu einer großen Anzahl von Systemen weltweit, von welchen viele vermutlich nicht von unmittelbarem nachrichtendienstlichem Wert sind. Die Gruppe kann einen Vorrat an gestohlenen Berechtigungsnachweisen aufbewahren, um auf diese Systeme zugreifen zu können, falls sie in Zukunft für ihre Anforderungen relevanter werden sollten.
Bei den jüngsten Angriffen auf die Forschung und Entwicklung von COVID-19-Impfstoffen führte die Gruppe grundlegende Schwachstellen-Scans gegen spezifische externe IP-Adressen durch, welche den Organisationen gehören. Anschließend setzte die Gruppe öffentliche Exploits gegen die identifizierten verwundbaren Dienste ein.
Die Gruppe war erfolgreich, als sie mit kürzlich veröffentlichten Exploits erste Erfolge erzielte. Beispiele hierfür sind unter anderem:
Die Gruppe ist höchstwahrscheinlich bestrebt, eine Vielzahl neuer Errungenschaften uneingeschränkt zu nutzen, wenn sie veröffentlicht wird. Weitere Informationen über diese Exploits finden sich in früheren NCSC-Beratungen über Citrix– und VPN-Schwachstellen [1,2].
Die Gruppe benutzt außerdem Spear-Phishing, um Authentifizierungsdaten für die im Internet zugänglichen Anmeldeseiten von Zielorganisationen zu erhalten.
Wenn die Gruppe Zugang zu einem System erhält, lässt sie mit hoher Wahrscheinlichkeit weitere Tools zurück und/oder versucht, legitime Berechtigungen für die kompromittierten Systeme zu erhalten, um einen dauerhaften Zugang aufrechtzuerhalten. Der Angreifer wird bei der Verwendung der gestohlenen Zugangsdaten mit hoher Wahrscheinlichkeit Anonymisierungsdienste in Anspruch nehmen.
In einigen Fällen setzt APT29 auch benutzerdefinierte Malware namens WellMess oder WellMail ein, um weitere Eingriffe in das System des Opfers durchzuführen.
WellMess ist Malware, die entweder in Golang oder .NET geschrieben wurde und seit mindestens 2018 in Gebrauch ist. Über WellMess wurde erstmals im Juli 2018 von JPCERT– und LAC-Forschern berichtet[4][5]. Es ist nach einem der Funktionsnamen in der Malware benannt – ‘wellmess’. WellMess ist eine leichtgewichtige Malware, die darauf ausgelegt ist, beliebige Shell-Befehle auszuführen und Dateien hoch- und herunterzuladen. Die Malware unterstützt HTTP-, TLS- und DNS-Kommunikationsmethoden.
Indikatoren für die Kompromittierung (IOCs) von WellMess sind im Anhang verfügbar.
WellMail ist ein einfaches Tool zum Ausführen von Befehlen oder Skripten, deren Ergebnisse an einen hartkodierten Command and Control (C2)-Server gesendet werden. Das NCSC hat diese Malware aufgrund der Dateipfade, die das Wort “Mail” enthalten, und der Verwendung des in der analysierten Probe vorhandenen Server-Ports 25 als “WellMail” bezeichnet. Ähnlich wie WellMess verwendet WellMail hartkodierte Client- und Zertifizierungsautoritäts-TLS-Zertifikate zur Kommunikation mit C2-Servern. Die Binärdatei ist ein in Golang geschriebenes ELF-Dienstprogramm, das einen Befehl oder ein Skript empfängt, welches über die Linux-Shell ausgeführt wird.Soweit uns bekannt ist, wurde WellMail bisher nicht öffentlich namentlich aufgeführt.
IOCs für WellMail sind im Anhang verfügbar.
Die WellMess- und WellMail-Beispiele enthielten TLS-Zertifikate mit dem fest codierten SubjectKeyIdentifier (SKI) ‘0102030406’ und verwendeten die Subjects ‘C=Tunis, O=IT’ bzw. ‘O=GMO GlobalSign, Inc’. Diese Zertifikate können zur Identifizierung weiterer Malware-Proben und der Infrastruktur verwendet werden. Server mit diesem GlobalSign Zertifikats-Betreff können für andere Funktionen zusätzlich zur WellMail Malware-Kommunikation verwendet werden.
Malware, vom NCSC als “SoreFang” bezeichnet, ist ein Downloadprogramm der ersten Stufe, welches HTTP verwendet, um Opferinformationen zu exfiltrieren und Malware der zweiten Stufe herunterzuladen. Die vom NCSC analysierte Probe enthält die gleiche Infrastruktur wie eine WellMess-Probe (103.216.221[.]19).
Es ist wahrscheinlich, dass SoreFang auf SangFor-Geräte abzielt. Aus Berichten der Industrie geht hervor, dass andere Akteure, darunter angeblich auch “DarkHotel”, ebenfalls SangFor-Geräte ins Visier genommen haben. Daher beziehen sich nicht alle Aktivitäten zur Ausnutzung von SangFor auf das Targeting durch APT29.
APT29 wird wahrscheinlich auch weiterhin auf Organisationen abzielen, die an der Forschung und Entwicklung von COVID-19-Impfstoffen beteiligt sind, da sie versuchen, zusätzliche nachrichtendienstliche Fragen im Zusammenhang mit der Pandemie zu beantworten.
Es wird den Organisationen dringend empfohlen, die im Anhang aufgeführten Regeln und IOCs zu verwenden, um die in dieser Publikation beschriebenen Aktivitäten aufzudecken.
00654dd07721e7551641f90 cba832e98c0acb030e2848 e5efc0e1752c067ec07 |
0322c4c2d511f73ab55bf3f 43b1b0f152188d7146cc67ff 497ad275d9dd1c20f |
03e9adae529155961f1f182 12ff70181bde0e3da3d7f2 2961a6e2b1c9da2dd2e |
0b8e6a11adaa3df120ec158 46bb966d674724b6b92e ae34d63b665e0698e0193 |
14e9b5e214572cb13ff8772 7d680633f5ee238259043 357c94302654c546cad2 |
1fed2e1b077af08e73fb5ec ffd2e5169d5289a825dcaf 2d8742bb8030e487641 |
21129ad17800b11cdb369 06ba7f6105e3bd1cf44575 f77df58ba91640ba0cab9 |
2285a264ffab59ab5a1eb 4e2b9bcab9baf26750b6c 551ee3094af56a4442ac41 |
2daba469f50cd1b77481e 605aeae0f28bf14cedfcd8 e4369193e5e04c523bc38 |
49bfff6b91ee71bbf8fd94 829391a36b844ffba104c 145e01c92732ada52c8ba |
4c8671411da91eb5967f40 8c2a6ff6baf25ff7c40c65 ff45ee33b352a711bf9c |
5ca4a9f6553fea64ad2c7 24bf71d0fac2b372f9e7c e2200814c98aac64717 2fb |
797159c202ca41356bee1 8c5303d37e9d2a43ca43 d0ce02e1fd9e7045b925 d11 |
7c39841ba409bce4c2c 35437ecf043f2291098 4325c70b9530edf15d8 26147ee |
84b846a42d9443152 0d3d2d14262f3d3a5d 96762e56b0ae471b85 3d1603ca403 |
8749c1495af4fd73ccfc 84b32f56f5e78549d8 1feefb0c1d1c3475a74 345f6a8 |
92a856a2216e107496 ee086e1c8cfe14e1514 5e7a247539815fd37e 5a18b84d9 |
93e9383ae8ad2371d 457fc4c1035157d887 a84bbfe66fbbb3769 c5637de59c75 |
953b5fc9977e2d50f3 f72c6ce85e8942893 7117830c0ed67d468 e2d93aa7ec9a |
a03a71765b1b0ea7de4 fbcb557dcfa995ff906 8e92db9b2dada9dd0 841203145 |
a117b2a904c24df625 81500176183fbc282a 740e4f11976cdfc01fe 664a02292 |
a3ca47e1083b93ea90 ace1ca30d9ef71163e8 a95ee00500cbd3fd0 21da0c18af |
b75a5be703d9ba3721 d046db80f62886e10 009b455fa5cdfd73ce 78f9f53ec5a |
bec1981e422c1e01c14 511d384a33c9bcc66 456c1274bbbac073d a825a3f537d |
c1a0b73bad4ca30a5 c18db56c1cba4f5db 75f3d53daf62ddc59 8aae2933345f3 |
d7e7182f49844094 5fc8351f0e82ad2d5 844530ebdba39051 d2205b730400381 |
dd3da0c596fd6999 00cdd103f097fe661 4ac69787edfa6fa8 4a8f471ecb836bb |
e329607379a0148 3fc914a47c0062d 5a3a8d8d65f777fb ad2c5a841a90a0af09 |
e3d6057b4c2a7d8 fa7250f0781ea6da b4a977551c13fe2f 0a86f3519b2aaee7a |
f3af394d9c3f68dff 50b467340ca59a1 1a14a3d56361e6c ffd1cf2312a7028ad |
f622d031207d22c 633ccec187a24c5 0980243cb4717d2 1fad6588dacbf9c29e9 |
fd3969d32398bbe 3709e9da5f83269 35dde664bbc3675 3bd41a0b111712c0950 |
103.103.128[.]221 |
103.13.240[.]46 |
103.205.8[.]72 |
103.216.221[.]19 |
103.253.41[.]102 |
103.253.41[.]68 |
103.253.41[.]82 |
103.253.41[.]90 |
103.73.188[.]101 |
111.90.146[.]143 |
111.90.150[.]176 |
119.160.234[.]163 |
119.160.234[.]194 |
119.81.173[.]130 |
119.81.178[.]105 |
120.53.12[.]132 |
122.114.197[.]185 |
122.114.226[.]172 |
141.255.164[.]29 |
141.98.212[.]55 |
145.249.107[.]73 |
146.0.76[.]37 |
149.202.12[.]210 |
169.239.128[.]110 |
176.119.29[.]37 |
178.211.39[.]6 |
185.120.77[.]166 |
185.145.128[.]35 |
185.99.133[.]112 |
191.101.180[.]78 |
192.48.88[.]107 |
193.182.144[.]105 |
202.59.9[.]59 |
209.58.186[.]196 |
209.58.186[.]197 |
209.58.186[.]240 |
220.158.216[.]130 |
27.102.130[.]115 |
31.170.107[.]186 |
31.7.63[.]141 |
45.120.156[.]69 |
45.123.190[.]167 |
45.123.190[.]168 |
45.152.84[.]57 |
46.19.143[.]69 |
5.199.174[.]164 |
66.70.247[.]215 |
79.141.168[.]109 |
81.17.17[.]213 |
85.93.2[.]116 |
rule wellmess_dotne t_unique_strings { |
meta: |
description = “Rule t o detect WellMess .NET samples based on unique strings and function/variable names” |
author = “NCSC” |
hash = “2285a264ffab59 ab5a1eb4e2b9bca b9baf26750b6c55 1ee3094af56a4442ac41” |
strings: |
$s1 = “MaxPostSize” wide |
$s2 = “HealthInterval” wide |
$s3 = “Hello from Proxy” wide |
$s4 = “Start bot:” wide |
$s5 = “Choise” ascii wide |
$s7 = “FromNormalToBase64” ascii |
$s8 = “FromBase64ToNormal” ascii |
$s9 = “ConvBytesToWords” ascii |
$s10 = “WellMess” ascii |
$s11 = “chunksM” ascii |
condition: |
uint16(0) == 0x5a4d and uint16(uint16(0x3c)) == 0x4550 and 3 of them |
} |
rule wellmess_ botlib_ function_names { | ||||||||||||||||||||||||||||||||||||||||||||||||
meta: | ||||||||||||||||||||||||||||||||||||||||||||||||
description = “Rule to detect WellMess Golang samples based on the function names used by the actor” | ||||||||||||||||||||||||||||||||||||||||||||||||
author = “NCSC” | ||||||||||||||||||||||||||||||||||||||||||||||||
hash = “8749c1495af4fd73 ccfc84b32f56f5e7 8549d81feefb0c1d 1c3475a74345f6a8” | ||||||||||||||||||||||||||||||||||||||||||||||||
strings: | ||||||||||||||||||||||||||||||||||||||||||||||||
$s1 = “botlib.wellMess” ascii wide | ||||||||||||||||||||||||||||||||||||||||||||||||
$s2 = “botlib.saveFile” ascii wide | ||||||||||||||||||||||||||||||||||||||||||||||||
$s3 = “botlib.reply” ascii wide | ||||||||||||||||||||||||||||||||||||||||||||||||
$s4 = “botlib.init” ascii wide
|
rule wellmess_ certificate_base64_ snippets { |
meta: |
description = “Rule for detection of WellMess based on base64 snippets of certificates used” |
author = “NCSC” |
hash = “8749c1495af4fd7 3ccfc84b32f56f5e7 8549d81feefb0c1d1c3 475a74345f6a8” |
strings: |
$a1 = “BgNVHQ4E BwQFAQIDBA” |
$a2 = “YDVR0OBA cEBQECAwQG” |
$a3 = “GA1UdDgQH BAUBAgMEB” |
$b1 = “BgNVBAYTBVR1bm lzMQswCQYDVQQKEw JJVD” |
$b2 = “YDVQQGEwVUdW5 pczELMAkGA1UEC hMCSVQx” |
$b3 = “GA1UEBhMFVH VuaXMxCzAJBgN VBAoTAklUM” |
condition: |
((uint16(0) == 0x5a4d and uint16(uint16(0x3c)) == 0x4550) or uint32(0) == 0x464c457f) and any of ($a*) and any of ($b*) |
} |
rule wellmess_ regex_used_for_parsing_ beacons { |
meta: |
description = “Detects WellMess Golang and .NET samples based on the regex they used to parse commands and beacon information” |
author = “NCSC” |
hash = “8749c1495af4fd73c cfc84b32f56f5e7854 9d81feefb0c1d1c347 5a74345f6a8” |
strings: |
$a = “fileName:(?.*?)\\sargs:(?.*)\\snotwait:(?.*)” ascii wide |
$b = “<;(?[^;]*?);>(?[^<]*?)<;[^;]*?;>” ascii wide |
condition: |
((uint16(0) == 0x5a4d and uint16(uint16(0x3c)) == 0x4550) or uint32(0) == 0x464c457f) and any of them |
} |
83014ab5b3f63b0253cd ab6d715f5988ac901457 0fa4ab2b267c7cf9ba23 7d18 (UPX) |
0c5ad1e8fe43583e2792 01cdb1046aea742bae5 9685e6da24e963a41d f987494 (Unpacked) |
103.216.221.19
119.81.184[.]11 |
185.225.226[.]16 |
188.241.68[.]137 |
45.129.229[.]48 |
rule wellmail_unique_ strings { |
meta: description = “Rule for detection of WellMail based on unique strings contained in the binary” |
author = “NCSC” |
hash = “0c5ad1e8fe4358 3e279201cdb1046aea742ba e59685e6da24e963a4 1df987494” |
strings: |
$a = “C:\\Server\\Mail\\ App_Data\\Temp\\ agent.sh\\src” |
$b = “C:/Server/Mail/ App_Data/Temp/ agent.sh/src/main.go” |
$c = “HgQdbx4qRNv” |
$d = “042a51567eea19d5 aca71050b4535d33 d2ed43ba” |
$e = “main.zipit” |
$f = “@[^\\s]+?\\s(?P.*?)\\s” |
condition: |
uint32(0) == 0x464C457F and 3 of them |
} |
rule wellmail_certificate_ base64_snippets { |
meta: description = “ Rule for detection of WellMail based on base64 snippets of certificates used” |
author = “NCSC” |
hash = “0c5ad1e8fe43583 e279201cdb1046ae a742bae59685e6d a24e963a41df987494” |
strings: |
$a1 = “BgNVHQ4EB wQFAQIDBA” |
$a2 = “YDVR0OBAc EBQECAwQG” |
$a3 = “GA1UdDgQ HBAUBAgMEB” |
$b1 = “BgNVBAoTE0dNTy BHbG9iYWxTaWd uLCBJbm” |
$b2 = “YDVQQKExNHTU 8gR2xvYmFsU2lnbi wgSW5j” |
$b3 = “GA1UEChMTR01 PIEdsb2JhbFNpZ 24sIEluY” |
condition: |
uint32(0) == 0x464C457F and any of ($a*) and any of ($b*) |
} |
58d8e65976b53b7764 5c248bfa18c3b87a6ec fb02f306fe6ba4944db 96a5ede2 |
65495d173e3056256 96051944a36a031ea9 4bb3a4f13034d8be74 0982bc4ab75 |
a4b790ddffb3d2e669 1dcacae08fb0bfa1ae 56b6c73d70688b097 ffa831af064 |
103.216.221[.]19
rule sorefang_directory_enumeration_output_strings { |
meta: |
description = “Rule to detect SoreFang based on formatted string output for directory enumeration” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = “———-All usres directory———-“ |
$ = “———-Desktop directory———-“ |
$ = “———-Documents directory———-“ |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_encryption_key_2b62 { |
meta: |
description = “Rule to detect SoreFang based on hardcoded encryption key” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = “2b6233eb3e872ff78988f4a8f3f6a3ba” |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_encryption_key_schedule { |
meta: |
description = “Rule to detect SoreFang based on the key schedule used for encryption” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = {C7 05 ?? ?? ?? ?? 63 51 E1 B7 B8 BC D1 3B 01 8B 48 FC 81 E9 47 86 C8 61 89 08 83 C0 04 3D ?? ?? ?? ?? 7E EB 33 D2 33 C9 B8 2C 00 00 00 89 55 D4 33 F6 89 4D D8 33 DB 3B F8 0F 4F C7 8D 04 40 89 45 D0 83 F8 01 7C 4F 0F 1F 80 00 00 00 00} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_command_elem_cookie_ga_boundary_string { |
meta: |
description = “Rule to detect SoreFang based on scheduled task element and Cookie header/boundary strings” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = “<Command>” wide |
$ = “Cookie:_ga=” |
$ = “——974767299852498929531610575” |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and 2 of them |
} |
rule sorefang_encryption_round_function { |
meta: |
description = “Rule to detect SoreFang based on the encryption round function” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = {8A E9 8A FB 8A 5D 0F 02 C9 88 45 0F FE C1 0F BE C5 88 6D F3 8D 14 45 01 00 00 00 0F AF D0 0F BE C5 0F BE C9 0F AF C8 C1 FA 1B C0 E1 05 0A D1 8B 4D EC 0F BE C1 89 55 E4 8D 14 45 01 00 00 00 0F AF D0 8B C1} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_add_random_commas_spaces { |
meta: |
description = “Rule to detect SoreFang based on function that adds commas and spaces” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = {E8 ?? ?? ?? ?? B9 06 00 00 00 99 F7 F9 8B CE 83 FA 04 7E 09 6A 02 68 ?? ?? ?? ?? EB 07 6A 01 68 ?? ?? ?? ??} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_modify_alphabet_custom_encode { |
meta: |
description = “Rule to detect SoreFang based on arguments passed into custom encoding algorithm function” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = {33 C0 8B CE 6A 36 6A 71 66 89 46 60 88 46 62 89 46 68 66 89 46 64} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
$ = {E8 ?? ?? ?? ?? B9 06 00 00 00 99 F7 F9 8B CE 83 FA 04 7E 09 6A 02 68 ?? ?? ?? ?? EB 07 6A 01 68 ?? ?? ?? ??} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_custom_encode_decode { |
meta: |
description = “Rule to detect SoreFang based on the custom encoding/decoding algorithm function” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = {55 8B EC 8B D1 53 56 8B 75 08 8B DE 80 42 62 FA 8A 4A 62 66 D3 EB 57 3A 5A 5C 74 0F} |
$ = {3A 5A 5D 74 0A 3A 5A 58 74 05 3A 5A 59 75 05 FE C1 88 4A 62 8A 4A 62 B8 01 00 00 00} |
$ = {8A 46 62 84 C0 74 3E 3C 06 73 12 0F B6 C0 B9 06 00 00 00 2B C8 C6 46 62 06 66 D3 66 60 0F B7 4E 60} |
$ = {80 3C 38 0D 0F 84 93 01 00 00 C6 42 62 06 8B 56 14 83 FA 10 72 04 8B 06} |
$ = {0F BE 0C 38 8B 45 EC 0F B6 40 5B 3B C8 75 07 8B 55 EC B3 3E} |
$ = {0F BE 0C 38 8B 45 EC 0F B6 40 5E 3B C8 75 0B 8B 55 EC D0 EB C6 42 62 05} |
$ = {8B 55 EC 0F BE 04 38 0F B6 DB 0F B6 4A 5F 3B C1 B8 3F 00 00 00 0F 44 D8} |
$ = {8A 4A 62 66 8B 52 60 66 D3 E2 0F B6 C3 66 0B D0 8B 45 EC 66 89 50 60 8A 45 F3 02 C1 88 45 F3 3C 08 72 2E 04 F8 8A C8 88 45 F3 66 D3 EA 8B 4D 08 0F B6 C2 50} |
$ = {3A 5A 5C 74 0F 3A 5A 5D 74 0A 3A 5A 58 74 05 3A 5A 59 75 05 FE C1 88 4A 62} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and any of them |
} |
rule sorefang_remove_chars_comma_space_dot { |
meta: description = “Rule to detect SoreFang based on function that removes commas, spaces and dots” |
author = “NCSC” |
hash = “58d8e65976b53b77645c248bfa18c3b87a6ecfb02f306fe6ba4944db96a5ede2” |
strings: |
$ = {8A 18 80 FB 2C 74 03 88 19 41 42 40 3B D6 75 F0 8B 5D 08} |
$ = {8A 18 80 FB 2E 74 03 88 19 41 42 40 3B D6 75 F0 8B 5D 08} |
$ = {8A 18 80 FB 20 74 03 88 19 41 42 40 3B D6 75 F0 8B 5D 08} |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and all of them |
} |
rule sorefang_disk_enumeration_strings { |
meta: |
description = “Rule to detect SoreFang based on disk enumeration strings” |
author = “NCSC” |
hash = “a4b790ddffb3d2e6691dcacae08fb0bfa1ae56b6c73d70688b097ffa831af064” strings: |
$ = “\x0D\x0AFree on disk: “ |
$ = “Total disk: “ |
$ = “Error in GetDiskFreeSpaceEx\x0D\x0A” |
$ = “\x0D\x0AVolume label: “ |
$ = “Serial number: “ |
$ = “File system: “ |
$ = “Error in GetVolumeInformation\x0D\x0A” |
$ = “I can not het information about this disk\x0D\x0A” |
condition: |
(uint16(0) == 0x5A4D and uint16(uint32(0x3c)) == 0x4550) and all of them |
} |
Bei der Verteidigung gegen die in diesem Bericht beschriebenen Angriffe wird eine Reihe von Abhilfemaßnahmen von Nutzen sein:
Wir verwenden Cookies, und Google reCAPTCHA, das Google Fonts lädt und mit Google-Servern kommuniziert. Durch die weitere Nutzung unserer Website stimmen Sie der Verwendung von Cookies und unserer Datenschutzerklärung zu.