Actor(s): Lazarus Group
There is no description at this point.
rule win_hotcroissant_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2022-05-16" version = "1" description = "Detects win.hotcroissant." info = "autogenerated rule brought to you by yara-signator" tool = "yara-signator v0.6.0" signator_config = "callsandjumps;datarefs;binvalue" malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.hotcroissant" malpedia_rule_date = "20220513" malpedia_hash = "7f4b2229e6ae614d86d74917f6d5b41890e62a26" malpedia_version = "20220516" malpedia_license = "CC BY-SA 4.0" malpedia_sharing = "TLP:WHITE" /* DISCLAIMER * The strings used in this rule have been automatically selected from the * disassembly of memory dumps and unpacked files, using YARA-Signator. * The code and documentation is published here: * https://github.com/fxb-cocacoding/yara-signator * As Malpedia is used as data source, please note that for a given * number of families, only single samples are documented. * This likely impacts the degree of generalization these rules will offer. * Take the described generation method also into consideration when you * apply the rules in your use cases and assign them confidence levels. */ strings: $sequence_0 = { 52 50 ff15???????? 85c0 7506 6a0a ffd6 } // n = 7, score = 500 // 52 | push edx // 50 | push eax // ff15???????? | // 85c0 | test eax, eax // 7506 | jne 8 // 6a0a | push 0xa // ffd6 | call esi $sequence_1 = { 8b15???????? 52 ffd6 893d???????? 893d???????? 893d???????? 893d???????? } // n = 7, score = 500 // 8b15???????? | // 52 | push edx // ffd6 | call esi // 893d???????? | // 893d???????? | // 893d???????? | // 893d???????? | $sequence_2 = { b117 8955fc b829704902 39750c } // n = 4, score = 500 // b117 | mov cl, 0x17 // 8955fc | mov dword ptr [ebp - 4], edx // b829704902 | mov eax, 0x2497029 // 39750c | cmp dword ptr [ebp + 0xc], esi $sequence_3 = { e8???????? 6a00 c705????????00000000 ff15???????? 6a00 c705????????00000000 c705????????00000000 } // n = 7, score = 500 // e8???????? | // 6a00 | push 0 // c705????????00000000 | // ff15???????? | // 6a00 | push 0 // c705????????00000000 | // c705????????00000000 | $sequence_4 = { 6800000400 68???????? 68???????? 68???????? } // n = 4, score = 500 // 6800000400 | push 0x40000 // 68???????? | // 68???????? | // 68???????? | $sequence_5 = { 53 56 57 683f000f00 33db } // n = 5, score = 500 // 53 | push ebx // 56 | push esi // 57 | push edi // 683f000f00 | push 0xf003f // 33db | xor ebx, ebx $sequence_6 = { 85c0 7506 6a0a ffd6 } // n = 4, score = 500 // 85c0 | test eax, eax // 7506 | jne 8 // 6a0a | push 0xa // ffd6 | call esi $sequence_7 = { eb34 8b4508 68ff010f00 50 } // n = 4, score = 500 // eb34 | jmp 0x36 // 8b4508 | mov eax, dword ptr [ebp + 8] // 68ff010f00 | push 0xf01ff // 50 | push eax $sequence_8 = { c705????????01000000 ffd6 6800040000 68???????? 68???????? 68???????? ffd6 } // n = 7, score = 500 // c705????????01000000 | // ffd6 | call esi // 6800040000 | push 0x400 // 68???????? | // 68???????? | // 68???????? | // ffd6 | call esi $sequence_9 = { ffd7 807c30ff5c 8b1d???????? 740a 68???????? } // n = 5, score = 500 // ffd7 | call edi // 807c30ff5c | cmp byte ptr [eax + esi - 1], 0x5c // 8b1d???????? | // 740a | je 0xc // 68???????? | condition: 7 of them and filesize < 591872 }
rule win_hotcroissant_w0 { meta: author = "VMware CarbonBlack TAU" date = "2020-Mar-25" validity = 10 severity = 10 TID = "T1140, T1082, T1033, T1005, T1113, T1094, T1024, T1132, T1065" description = "Lazarus HotCroissant backdoor" link = "https://www.us-cert.gov/ncas/analysis-reports/ar20-045d" rule_version = 1 yara_version = "3.11.0" confidence = "Prod" priority = "Medium" tlp = "White" hash = "8ee7da59f68c691c9eca1ac70ff03155ed07808c7a66dee49886b51a59e00085" hash = "7ec13c5258e4b3455f2e8af1c55ac74de6195b837235b58bc32f95dd6f25370c" malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.hotcroissant" malpedia_version = "20200421" malpedia_sharing = "TLP:WHITE" malpedia_license = "" strings: // Crypto keys $b1 = { 8b d6 b8 00 [1-6] 17 [1-6] 29 70 49 02 } // Crypto algorithm $b2 = { 8A 1C 3E 32 DA 32 D8 32 D9 88 1C 3E 8A D8 32 D9 22 DA 8B 55 FC 8D 3C D5 00 00 00 00 33 FA 81 E7 F8 07 00 00 C1 E7 14 C1 EA 08 0B D7 8D 3C 00 33 F8 22 C8 C1 E7 04 33 F8 32 CB 8B D8 83 E7 80 C1 E3 07 33 FB C1 E7 11 C1 E8 08 } condition: uint16(0) == 0x5A4D and uint32(uint32(0x3C)) == 0x00004550 and filesize < 200KB and any of ($b*) }
If your designated proposal does not fit in any other category, feel free to write a free-text in the comment field below.
Please propose all changes regarding references on the Malpedia library page
Your suggestion will be reviewed before being published. Thank you for contributing!
YYYY-MM-DD
YYYY-MM
YYYY