Actor(s): Equation Group
There is no description at this point.
rule win_fanny_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2023-07-11" version = "1" description = "Detects win.fanny." 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.fanny" malpedia_rule_date = "20230705" malpedia_hash = "42d0574f4405bd7d2b154d321d345acb18834a41" malpedia_version = "20230715" 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 = { ff35???????? ffd6 e8???????? e8???????? e8???????? } // n = 5, score = 200 // ff35???????? | // ffd6 | call esi // e8???????? | // e8???????? | // e8???????? | $sequence_1 = { 83f8ff 740a 53 50 } // n = 4, score = 200 // 83f8ff | cmp eax, -1 // 740a | je 0xc // 53 | push ebx // 50 | push eax $sequence_2 = { 53 eb0b 8b4704 83c708 } // n = 4, score = 200 // 53 | push ebx // eb0b | jmp 0xd // 8b4704 | mov eax, dword ptr [edi + 4] // 83c708 | add edi, 8 $sequence_3 = { 59 8bf0 59 33c9 3bf1 745c 8b542414 } // n = 7, score = 200 // 59 | pop ecx // 8bf0 | mov esi, eax // 59 | pop ecx // 33c9 | xor ecx, ecx // 3bf1 | cmp esi, ecx // 745c | je 0x5e // 8b542414 | mov edx, dword ptr [esp + 0x14] $sequence_4 = { 55 8bec 837d0c00 742e 8b450c } // n = 5, score = 200 // 55 | push ebp // 8bec | mov ebp, esp // 837d0c00 | cmp dword ptr [ebp + 0xc], 0 // 742e | je 0x30 // 8b450c | mov eax, dword ptr [ebp + 0xc] $sequence_5 = { 8945d4 c745c400000000 8b4dc4 3b4dd0 7d26 } // n = 5, score = 200 // 8945d4 | mov dword ptr [ebp - 0x2c], eax // c745c400000000 | mov dword ptr [ebp - 0x3c], 0 // 8b4dc4 | mov ecx, dword ptr [ebp - 0x3c] // 3b4dd0 | cmp ecx, dword ptr [ebp - 0x30] // 7d26 | jge 0x28 $sequence_6 = { c7460811000000 894604 8a0d???????? 50 884e10 ff75fc } // n = 6, score = 200 // c7460811000000 | mov dword ptr [esi + 8], 0x11 // 894604 | mov dword ptr [esi + 4], eax // 8a0d???????? | // 50 | push eax // 884e10 | mov byte ptr [esi + 0x10], cl // ff75fc | push dword ptr [ebp - 4] $sequence_7 = { 8b742410 57 8b7c2410 56 57 e8???????? 83c408 } // n = 7, score = 200 // 8b742410 | mov esi, dword ptr [esp + 0x10] // 57 | push edi // 8b7c2410 | mov edi, dword ptr [esp + 0x10] // 56 | push esi // 57 | push edi // e8???????? | // 83c408 | add esp, 8 $sequence_8 = { ffd6 85c0 752b 397dfc 7526 8d45fc 8b3d???????? } // n = 7, score = 200 // ffd6 | call esi // 85c0 | test eax, eax // 752b | jne 0x2d // 397dfc | cmp dword ptr [ebp - 4], edi // 7526 | jne 0x28 // 8d45fc | lea eax, [ebp - 4] // 8b3d???????? | $sequence_9 = { 8b4510 832000 33c0 e9???????? ff761c } // n = 5, score = 200 // 8b4510 | mov eax, dword ptr [ebp + 0x10] // 832000 | and dword ptr [eax], 0 // 33c0 | xor eax, eax // e9???????? | // ff761c | push dword ptr [esi + 0x1c] $sequence_10 = { 885e15 897e11 380d???????? 750f 50 56 e8???????? } // n = 7, score = 200 // 885e15 | mov byte ptr [esi + 0x15], bl // 897e11 | mov dword ptr [esi + 0x11], edi // 380d???????? | // 750f | jne 0x11 // 50 | push eax // 56 | push esi // e8???????? | $sequence_11 = { 7417 8b4514 50 8b4d10 51 } // n = 5, score = 200 // 7417 | je 0x19 // 8b4514 | mov eax, dword ptr [ebp + 0x14] // 50 | push eax // 8b4d10 | mov ecx, dword ptr [ebp + 0x10] // 51 | push ecx $sequence_12 = { 53 50 6808100000 56 ffd7 fe45c6 8d55a8 } // n = 7, score = 200 // 53 | push ebx // 50 | push eax // 6808100000 | push 0x1008 // 56 | push esi // ffd7 | call edi // fe45c6 | inc byte ptr [ebp - 0x3a] // 8d55a8 | lea edx, [ebp - 0x58] $sequence_13 = { c745b000000000 8d4dec e8???????? 8d4dd8 e8???????? 8b45b0 eb1a } // n = 7, score = 200 // c745b000000000 | mov dword ptr [ebp - 0x50], 0 // 8d4dec | lea ecx, [ebp - 0x14] // e8???????? | // 8d4dd8 | lea ecx, [ebp - 0x28] // e8???????? | // 8b45b0 | mov eax, dword ptr [ebp - 0x50] // eb1a | jmp 0x1c $sequence_14 = { eb03 8b7508 8bc6 5f } // n = 4, score = 200 // eb03 | jmp 5 // 8b7508 | mov esi, dword ptr [ebp + 8] // 8bc6 | mov eax, esi // 5f | pop edi $sequence_15 = { 68???????? 8b95ccfdffff 52 8b4508 50 ff15???????? 85c0 } // n = 7, score = 200 // 68???????? | // 8b95ccfdffff | mov edx, dword ptr [ebp - 0x234] // 52 | push edx // 8b4508 | mov eax, dword ptr [ebp + 8] // 50 | push eax // ff15???????? | // 85c0 | test eax, eax condition: 7 of them and filesize < 368640 }
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