According to ESET, SlowStepper is a feature-rich backdoor with a toolkit of more than 30 components, programmed in C++, Python, and Go.
rule win_slowstepper_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-09-17" version = "1" description = "Detects win.slowstepper." 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.slowstepper" malpedia_rule_date = "20260916" malpedia_hash = "53a643781c18e08f4a50949af60172d837a0b6f6" malpedia_version = "20260917" 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 = { 0fbe4808 83e900 745a 49 7461 49 745e } // n = 7, score = 100 // 0fbe4808 | movsx ecx, byte ptr [eax + 8] // 83e900 | sub ecx, 0 // 745a | je 0x5c // 49 | dec ecx // 7461 | je 0x63 // 49 | dec ecx // 745e | je 0x60 $sequence_1 = { 8955fc 8d4e34 6a0f c706???????? 58 894114 895110 } // n = 7, score = 100 // 8955fc | mov dword ptr [ebp - 4], edx // 8d4e34 | lea ecx, [esi + 0x34] // 6a0f | push 0xf // c706???????? | // 58 | pop eax // 894114 | mov dword ptr [ecx + 0x14], eax // 895110 | mov dword ptr [ecx + 0x10], edx $sequence_2 = { 885dfc e8???????? 834dfcff 6a01 8db5c8fdffff e8???????? 32c0 } // n = 7, score = 100 // 885dfc | mov byte ptr [ebp - 4], bl // e8???????? | // 834dfcff | or dword ptr [ebp - 4], 0xffffffff // 6a01 | push 1 // 8db5c8fdffff | lea esi, [ebp - 0x238] // e8???????? | // 32c0 | xor al, al $sequence_3 = { 894304 8b4704 894308 33c0 8d7b10 8945fc 895dec } // n = 7, score = 100 // 894304 | mov dword ptr [ebx + 4], eax // 8b4704 | mov eax, dword ptr [edi + 4] // 894308 | mov dword ptr [ebx + 8], eax // 33c0 | xor eax, eax // 8d7b10 | lea edi, [ebx + 0x10] // 8945fc | mov dword ptr [ebp - 4], eax // 895dec | mov dword ptr [ebp - 0x14], ebx $sequence_4 = { c7830408000015000000 59 be???????? 8d7b04 f3a5 } // n = 5, score = 100 // c7830408000015000000 | mov dword ptr [ebx + 0x804], 0x15 // 59 | pop ecx // be???????? | // 8d7b04 | lea edi, [ebx + 4] // f3a5 | rep movsd dword ptr es:[edi], dword ptr [esi] $sequence_5 = { ab 66ab 53 aa 8d8530f5ffff 50 6a18 } // n = 7, score = 100 // ab | stosd dword ptr es:[edi], eax // 66ab | stosw word ptr es:[edi], ax // 53 | push ebx // aa | stosb byte ptr es:[edi], al // 8d8530f5ffff | lea eax, [ebp - 0xad0] // 50 | push eax // 6a18 | push 0x18 $sequence_6 = { 68???????? 8bfa 56 8975cc 897dc8 e8???????? 895dfc } // n = 7, score = 100 // 68???????? | // 8bfa | mov edi, edx // 56 | push esi // 8975cc | mov dword ptr [ebp - 0x34], esi // 897dc8 | mov dword ptr [ebp - 0x38], edi // e8???????? | // 895dfc | mov dword ptr [ebp - 4], ebx $sequence_7 = { 889c241c010000 8dbc241d010000 ab ab ab ab } // n = 6, score = 100 // 889c241c010000 | mov byte ptr [esp + 0x11c], bl // 8dbc241d010000 | lea edi, [esp + 0x11d] // ab | stosd dword ptr es:[edi], eax // ab | stosd dword ptr es:[edi], eax // ab | stosd dword ptr es:[edi], eax // ab | stosd dword ptr es:[edi], eax $sequence_8 = { 837de802 7ccb 47 33f6 eb9f ff75e4 c745e001000000 } // n = 7, score = 100 // 837de802 | cmp dword ptr [ebp - 0x18], 2 // 7ccb | jl 0xffffffcd // 47 | inc edi // 33f6 | xor esi, esi // eb9f | jmp 0xffffffa1 // ff75e4 | push dword ptr [ebp - 0x1c] // c745e001000000 | mov dword ptr [ebp - 0x20], 1 $sequence_9 = { 8db43e9979825a 8b7b28 8975ec 8bf7 c1c618 23f2 c1c708 } // n = 7, score = 100 // 8db43e9979825a | lea esi, [esi + edi + 0x5a827999] // 8b7b28 | mov edi, dword ptr [ebx + 0x28] // 8975ec | mov dword ptr [ebp - 0x14], esi // 8bf7 | mov esi, edi // c1c618 | rol esi, 0x18 // 23f2 | and esi, edx // c1c708 | rol edi, 8 condition: 7 of them and filesize < 909312 }
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