Ransomware.
rule win_gibberish_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2023-12-06" version = "1" description = "Detects win.gibberish." 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.gibberish" malpedia_rule_date = "20231130" malpedia_hash = "fc8a0e9f343f6d6ded9e7df1a64dac0cc68d7351" malpedia_version = "20230808" 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 = { ff15???????? 8945a4 e8???????? 8b4dac 8b45a4 6a41 } // n = 6, score = 100 // ff15???????? | // 8945a4 | mov dword ptr [ebp - 0x5c], eax // e8???????? | // 8b4dac | mov ecx, dword ptr [ebp - 0x54] // 8b45a4 | mov eax, dword ptr [ebp - 0x5c] // 6a41 | push 0x41 $sequence_1 = { 8b75e8 8b7dec e9???????? f30f7e4de8 0f1045d8 eb03 } // n = 6, score = 100 // 8b75e8 | mov esi, dword ptr [ebp - 0x18] // 8b7dec | mov edi, dword ptr [ebp - 0x14] // e9???????? | // f30f7e4de8 | movq xmm1, qword ptr [ebp - 0x18] // 0f1045d8 | movups xmm0, xmmword ptr [ebp - 0x28] // eb03 | jmp 5 $sequence_2 = { c1e908 894c2410 8b4c2418 3314c5e1a14700 0fb6c1 c1e908 } // n = 6, score = 100 // c1e908 | shr ecx, 8 // 894c2410 | mov dword ptr [esp + 0x10], ecx // 8b4c2418 | mov ecx, dword ptr [esp + 0x18] // 3314c5e1a14700 | xor edx, dword ptr [eax*8 + 0x47a1e1] // 0fb6c1 | movzx eax, cl // c1e908 | shr ecx, 8 $sequence_3 = { e8???????? 84c0 0f849a000000 33c0 668985dcf9ffff 8d85e8fbffff 68???????? } // n = 7, score = 100 // e8???????? | // 84c0 | test al, al // 0f849a000000 | je 0xa0 // 33c0 | xor eax, eax // 668985dcf9ffff | mov word ptr [ebp - 0x624], ax // 8d85e8fbffff | lea eax, [ebp - 0x418] // 68???????? | $sequence_4 = { 8944243c 8b4124 89442440 8b4128 8d4c241c c744241c209d4500 c7442420d49d4500 } // n = 7, score = 100 // 8944243c | mov dword ptr [esp + 0x3c], eax // 8b4124 | mov eax, dword ptr [ecx + 0x24] // 89442440 | mov dword ptr [esp + 0x40], eax // 8b4128 | mov eax, dword ptr [ecx + 0x28] // 8d4c241c | lea ecx, [esp + 0x1c] // c744241c209d4500 | mov dword ptr [esp + 0x1c], 0x459d20 // c7442420d49d4500 | mov dword ptr [esp + 0x20], 0x459dd4 $sequence_5 = { 894db0 8d4dc0 50 c745d000000000 c745d40f000000 c645c000 e8???????? } // n = 7, score = 100 // 894db0 | mov dword ptr [ebp - 0x50], ecx // 8d4dc0 | lea ecx, [ebp - 0x40] // 50 | push eax // c745d000000000 | mov dword ptr [ebp - 0x30], 0 // c745d40f000000 | mov dword ptr [ebp - 0x2c], 0xf // c645c000 | mov byte ptr [ebp - 0x40], 0 // e8???????? | $sequence_6 = { 81fae3000000 7cc4 81fa6f020000 7d3a 57 8d3c9518bd4700 } // n = 6, score = 100 // 81fae3000000 | cmp edx, 0xe3 // 7cc4 | jl 0xffffffc6 // 81fa6f020000 | cmp edx, 0x26f // 7d3a | jge 0x3c // 57 | push edi // 8d3c9518bd4700 | lea edi, [edx*4 + 0x47bd18] $sequence_7 = { 68???????? 53 53 ff15???????? 8b55ac 8b4da8 890491 } // n = 7, score = 100 // 68???????? | // 53 | push ebx // 53 | push ebx // ff15???????? | // 8b55ac | mov edx, dword ptr [ebp - 0x54] // 8b4da8 | mov ecx, dword ptr [ebp - 0x58] // 890491 | mov dword ptr [ecx + edx*4], eax $sequence_8 = { ff15???????? 66898435fdfbffff 83c607 53 56 8d85f8fbffff 50 } // n = 7, score = 100 // ff15???????? | // 66898435fdfbffff | mov word ptr [ebp + esi - 0x403], ax // 83c607 | add esi, 7 // 53 | push ebx // 56 | push esi // 8d85f8fbffff | lea eax, [ebp - 0x408] // 50 | push eax $sequence_9 = { 8b45d4 8d4dd8 8b55d0 83ff10 8b7dd8 0f43cf 2bc2 } // n = 7, score = 100 // 8b45d4 | mov eax, dword ptr [ebp - 0x2c] // 8d4dd8 | lea ecx, [ebp - 0x28] // 8b55d0 | mov edx, dword ptr [ebp - 0x30] // 83ff10 | cmp edi, 0x10 // 8b7dd8 | mov edi, dword ptr [ebp - 0x28] // 0f43cf | cmovae ecx, edi // 2bc2 | sub eax, edx condition: 7 of them and filesize < 1068032 }
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