Actor(s): Lazarus Group, Silent Chollima
There is no description at this point.
rule win_vsingle_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-05-04" version = "1" description = "Detects win.vsingle." 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.vsingle" malpedia_rule_date = "20260422" malpedia_hash = "a182e35da64e6d71cb55f125c4d4225196523f14" malpedia_version = "20260504" 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 = { 8945fc 56 57 c6850cffffff00 68ef000000 6a00 8d850dffffff } // n = 7, score = 700 // 8945fc | mov dword ptr [ebp - 4], eax // 56 | push esi // 57 | push edi // c6850cffffff00 | mov byte ptr [ebp - 0xf4], 0 // 68ef000000 | push 0xef // 6a00 | push 0 // 8d850dffffff | lea eax, [ebp - 0xf3] $sequence_1 = { 51 ff15???????? 8b5508 52 ff15???????? 83c001 } // n = 6, score = 700 // 51 | push ecx // ff15???????? | // 8b5508 | mov edx, dword ptr [ebp + 8] // 52 | push edx // ff15???????? | // 83c001 | add eax, 1 $sequence_2 = { 33c0 668985d4f6ffff 68fe070000 6a00 } // n = 4, score = 700 // 33c0 | xor eax, eax // 668985d4f6ffff | mov word ptr [ebp - 0x92c], ax // 68fe070000 | push 0x7fe // 6a00 | push 0 $sequence_3 = { 51 ff15???????? 8d94057cfeffff 52 } // n = 4, score = 700 // 51 | push ecx // ff15???????? | // 8d94057cfeffff | lea edx, [ebp + eax - 0x184] // 52 | push edx $sequence_4 = { 8945fc 64a130000000 8945f8 8b45f8 8b4dfc 33cd e8???????? } // n = 7, score = 700 // 8945fc | mov dword ptr [ebp - 4], eax // 64a130000000 | mov eax, dword ptr fs:[0x30] // 8945f8 | mov dword ptr [ebp - 8], eax // 8b45f8 | mov eax, dword ptr [ebp - 8] // 8b4dfc | mov ecx, dword ptr [ebp - 4] // 33cd | xor ecx, ebp // e8???????? | $sequence_5 = { 33c0 668985ccb6ffff 6800200000 6a00 8d8dceb6ffff } // n = 5, score = 700 // 33c0 | xor eax, eax // 668985ccb6ffff | mov word ptr [ebp - 0x4934], ax // 6800200000 | push 0x2000 // 6a00 | push 0 // 8d8dceb6ffff | lea ecx, [ebp - 0x4932] $sequence_6 = { 8955c5 8955c9 668955cd 8855cf c645d000 33c0 } // n = 6, score = 700 // 8955c5 | mov dword ptr [ebp - 0x3b], edx // 8955c9 | mov dword ptr [ebp - 0x37], edx // 668955cd | mov word ptr [ebp - 0x33], dx // 8855cf | mov byte ptr [ebp - 0x31], dl // c645d000 | mov byte ptr [ebp - 0x30], 0 // 33c0 | xor eax, eax $sequence_7 = { 83c408 894598 8b4508 3b4598 7508 8b4db0 8b4118 } // n = 7, score = 700 // 83c408 | add esp, 8 // 894598 | mov dword ptr [ebp - 0x68], eax // 8b4508 | mov eax, dword ptr [ebp + 8] // 3b4598 | cmp eax, dword ptr [ebp - 0x68] // 7508 | jne 0xa // 8b4db0 | mov ecx, dword ptr [ebp - 0x50] // 8b4118 | mov eax, dword ptr [ecx + 0x18] $sequence_8 = { 81f289e16a3d eb43 81c0e92289a3 81e807909f53 } // n = 4, score = 100 // 81f289e16a3d | xor edx, 0x3d6ae189 // eb43 | jmp 0x45 // 81c0e92289a3 | add eax, 0xa38922e9 // 81e807909f53 | sub eax, 0x539f9007 $sequence_9 = { 81c3e0fb4709 66890c2b 5b 0fb755e4 85d2 } // n = 5, score = 100 // 81c3e0fb4709 | add ebx, 0x947fbe0 // 66890c2b | mov word ptr [ebx + ebp], cx // 5b | pop ebx // 0fb755e4 | movzx edx, word ptr [ebp - 0x1c] // 85d2 | test edx, edx $sequence_10 = { 52 bab450bfad 81c2acf92436 81c2d42cb3d3 81ea65354a2c } // n = 5, score = 100 // 52 | push edx // bab450bfad | mov edx, 0xadbf50b4 // 81c2acf92436 | add edx, 0x3624f9ac // 81c2d42cb3d3 | add edx, 0xd3b32cd4 // 81ea65354a2c | sub edx, 0x2c4a3565 $sequence_11 = { 50 b831b265c9 81f0be517822 81c045df1a86 81f017fa817b 81c0a0322d59 } // n = 6, score = 100 // 50 | push eax // b831b265c9 | mov eax, 0xc965b231 // 81f0be517822 | xor eax, 0x227851be // 81c045df1a86 | add eax, 0x861adf45 // 81f017fa817b | xor eax, 0x7b81fa17 // 81c0a0322d59 | add eax, 0x592d32a0 $sequence_12 = { 21f0 5e 52 bad7593745 } // n = 4, score = 100 // 21f0 | and eax, esi // 5e | pop esi // 52 | push edx // bad7593745 | mov edx, 0x453759d7 $sequence_13 = { 5b 53 bb466ba2eb 81c316a49e00 } // n = 4, score = 100 // 5b | pop ebx // 53 | push ebx // bb466ba2eb | mov ebx, 0xeba26b46 // 81c316a49e00 | add ebx, 0x9ea416 $sequence_14 = { e9???????? 81e9699779d1 81c1cdd62061 e9???????? 81e9fcdd35b4 81e914eb6430 } // n = 6, score = 100 // e9???????? | // 81e9699779d1 | sub ecx, 0xd1799769 // 81c1cdd62061 | add ecx, 0x6120d6cd // e9???????? | // 81e9fcdd35b4 | sub ecx, 0xb435ddfc // 81e914eb6430 | sub ecx, 0x3064eb14 $sequence_15 = { 81eeef6a17e4 81c63f5b8880 81f63a06f592 81eee27f222c 81f6edd42c06 } // n = 5, score = 100 // 81eeef6a17e4 | sub esi, 0xe4176aef // 81c63f5b8880 | add esi, 0x80885b3f // 81f63a06f592 | xor esi, 0x92f5063a // 81eee27f222c | sub esi, 0x2c227fe2 // 81f6edd42c06 | xor esi, 0x62cd4ed condition: 7 of them and filesize < 940032 }
If your designated proposal does not fit in any other category, feel free to write a free-text in the comment field below. Changes regarding references should be proposed on the Malpedia library page.
Your suggestion will be reviewed before being published. Thank you for contributing!
YYYY-MM-DD
YYYY-MM
YYYY