Ransomware
rule win_sfile_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-05-04" version = "1" description = "Detects win.sfile." 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.sfile" 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 = { 8b45fc c7402400000000 8b4dfc 8b5508 895144 } // n = 5, score = 300 // 8b45fc | mov eax, dword ptr [ebp - 4] // c7402400000000 | mov dword ptr [eax + 0x24], 0 // 8b4dfc | mov ecx, dword ptr [ebp - 4] // 8b5508 | mov edx, dword ptr [ebp + 8] // 895144 | mov dword ptr [ecx + 0x44], edx $sequence_1 = { 8b45f8 c7808405000000000000 8b4df8 c7414800000000 c7414c00000000 } // n = 5, score = 300 // 8b45f8 | mov eax, dword ptr [ebp - 8] // c7808405000000000000 | mov dword ptr [eax + 0x584], 0 // 8b4df8 | mov ecx, dword ptr [ebp - 8] // c7414800000000 | mov dword ptr [ecx + 0x48], 0 // c7414c00000000 | mov dword ptr [ecx + 0x4c], 0 $sequence_2 = { 3945f4 7d89 8b4dfc 034df4 c60100 837dec00 7547 } // n = 7, score = 300 // 3945f4 | cmp dword ptr [ebp - 0xc], eax // 7d89 | jge 0xffffff8b // 8b4dfc | mov ecx, dword ptr [ebp - 4] // 034df4 | add ecx, dword ptr [ebp - 0xc] // c60100 | mov byte ptr [ecx], 0 // 837dec00 | cmp dword ptr [ebp - 0x14], 0 // 7547 | jne 0x49 $sequence_3 = { 83c001 8b4d10 894130 6a10 6a40 ff15???????? 8945f8 } // n = 7, score = 300 // 83c001 | add eax, 1 // 8b4d10 | mov ecx, dword ptr [ebp + 0x10] // 894130 | mov dword ptr [ecx + 0x30], eax // 6a10 | push 0x10 // 6a40 | push 0x40 // ff15???????? | // 8945f8 | mov dword ptr [ebp - 8], eax $sequence_4 = { 8b45fc 50 8b4d08 8b5104 52 ff15???????? } // n = 6, score = 300 // 8b45fc | mov eax, dword ptr [ebp - 4] // 50 | push eax // 8b4d08 | mov ecx, dword ptr [ebp + 8] // 8b5104 | mov edx, dword ptr [ecx + 4] // 52 | push edx // ff15???????? | $sequence_5 = { 8b4508 8b4838 83c101 8b5508 894a38 b801000000 } // n = 6, score = 300 // 8b4508 | mov eax, dword ptr [ebp + 8] // 8b4838 | mov ecx, dword ptr [eax + 0x38] // 83c101 | add ecx, 1 // 8b5508 | mov edx, dword ptr [ebp + 8] // 894a38 | mov dword ptr [edx + 0x38], ecx // b801000000 | mov eax, 1 $sequence_6 = { ff15???????? 8b55f8 8b828c050000 50 e8???????? 8b4df8 } // n = 6, score = 300 // ff15???????? | // 8b55f8 | mov edx, dword ptr [ebp - 8] // 8b828c050000 | mov eax, dword ptr [edx + 0x58c] // 50 | push eax // e8???????? | // 8b4df8 | mov ecx, dword ptr [ebp - 8] $sequence_7 = { f3aa 8b4d0c 51 8b5510 8b4258 } // n = 5, score = 300 // f3aa | rep stosb byte ptr es:[edi], al // 8b4d0c | mov ecx, dword ptr [ebp + 0xc] // 51 | push ecx // 8b5510 | mov edx, dword ptr [ebp + 0x10] // 8b4258 | mov eax, dword ptr [edx + 0x58] $sequence_8 = { 8b4df8 8b10 8b4914 8b4204 ffd0 } // n = 5, score = 300 // 8b4df8 | mov ecx, dword ptr [ebp - 8] // 8b10 | mov edx, dword ptr [eax] // 8b4914 | mov ecx, dword ptr [ecx + 0x14] // 8b4204 | mov eax, dword ptr [edx + 4] // ffd0 | call eax $sequence_9 = { 8b4204 ffd0 8b4df8 c7412000000000 833d????????ff } // n = 5, score = 300 // 8b4204 | mov eax, dword ptr [edx + 4] // ffd0 | call eax // 8b4df8 | mov ecx, dword ptr [ebp - 8] // c7412000000000 | mov dword ptr [ecx + 0x20], 0 // 833d????????ff | condition: 7 of them and filesize < 588800 }
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