A Rust-based stealer, observed by Seqrite, along TTPs overlapping with Pakistan-linked APT groups.
rule win_unidentified_112_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-09-17" version = "1" description = "Detects win.unidentified_112." 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.unidentified_112" 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 = { e9???????? 4c8d053e850e00 31c9 31d2 ff15???????? 4885c0 0f84e2000000 } // n = 7, score = 100 // e9???????? | // 4c8d053e850e00 | lea ecx, [0xd9084] // 31c9 | mov edx, 1 // 31d2 | dec eax // ff15???????? | // 4885c0 | add esp, 0x48 // 0f84e2000000 | dec esp $sequence_1 = { e8???????? 4889c3 4889c1 e8???????? 84c0 0f8485000000 48833f00 } // n = 7, score = 100 // e8???????? | // 4889c3 | add esp, 0x28 // 4889c1 | pop ebx // e8???????? | // 84c0 | pop edi // 0f8485000000 | pop esi // 48833f00 | dec eax $sequence_2 = { e8???????? 3401 0fb64e18 84c9 7413 e9???????? 31c0 } // n = 7, score = 100 // e8???????? | // 3401 | lea ecx, [ebp + 0x300] // 0fb64e18 | mov byte ptr [ebp + 0x4ac], 0 // 84c9 | movups xmm0, xmmword ptr [ebp + 0x7d0] // 7413 | movups xmm1, xmmword ptr [ebp + 0x7e0] // e9???????? | // 31c0 | movaps xmmword ptr [ebp + 0x430], xmm0 $sequence_3 = { ff5370 f048ff07 7e31 b901000000 eb10 488b7808 488b5810 } // n = 7, score = 100 // ff5370 | je 0x5f // f048ff07 | dec eax // 7e31 | mov eax, dword ptr [ebx + 0x58] // b901000000 | dec eax // eb10 | mov ecx, edi // 488b7808 | dec eax // 488b5810 | mov edx, esi $sequence_4 = { f048ff08 7510 488b45f8 488d8858010000 e8???????? 488b45f8 488d88c0010000 } // n = 7, score = 100 // f048ff08 | lea ecx, [eax + 0x150] // 7510 | dec eax // 488b45f8 | mov eax, dword ptr [ebp - 8] // 488d8858010000 | mov byte ptr [eax + 0x290], 0 // e8???????? | // 488b45f8 | dec eax // 488d88c0010000 | lea ecx, [eax + 0x158] $sequence_5 = { e8???????? 83bc248800000006 742f 488d9c2488000000 0f1f8000000000 4889d9 e8???????? } // n = 7, score = 100 // e8???????? | // 83bc248800000006 | dec eax // 742f | cmp dword ptr [ebp + 0x10], 2 // 488d9c2488000000 | cmp dword ptr [ebp + 0x20], 2 // 0f1f8000000000 | je 0xffffffba // 4889d9 | dec eax // e8???????? | $sequence_6 = { c6853504000001 c6853404000000 c6853304000001 e8???????? 84c0 0f84f8000000 488b0d???????? } // n = 7, score = 100 // c6853504000001 | mov eax, dword ptr [ebp + 0x358] // c6853404000000 | movaps xmm0, xmmword ptr [ebp + 0x4b0] // c6853304000001 | movaps xmm1, xmmword ptr [ebp + 0x4c0] // e8???????? | // 84c0 | movaps xmmword ptr [ebp + 0x2e0], xmm1 // 0f84f8000000 | mov byte ptr [ebp + 0x51e], 1 // 488b0d???????? | $sequence_7 = { 89c3 807d4800 4c8b7d38 0f84d8000000 c6454f00 4c89f9 ff15???????? } // n = 7, score = 100 // 89c3 | mov eax, dword ptr [ebp] // 807d4800 | dec eax // 4c8b7d38 | test eax, eax // 0f84d8000000 | jne 0x74f // c6454f00 | movzx edx, byte ptr [eax + 0x10] // 4c89f9 | test dl, dl // ff15???????? | $sequence_8 = { e8???????? 4801c3 48895d68 4983ff02 0f86ae010000 4983c630 48897d10 } // n = 7, score = 100 // e8???????? | // 4801c3 | dec eax // 48895d68 | mov eax, dword ptr [ebp + 0x1e0] // 4983ff02 | cmp eax, 1 // 0f86ae010000 | jne 0xfffffe8a // 4983c630 | dec eax // 48897d10 | mov edx, dword ptr [ebp + 0x1f0] $sequence_9 = { e8???????? e9???????? 488b55e0 4885d2 741d 41b801000000 488b4de8 } // n = 7, score = 100 // e8???????? | // e9???????? | // 488b55e0 | dec esp // 4885d2 | mov edx, edi // 741d | mov byte ptr [ebp + 0x600], 1 // 41b801000000 | dec eax // 488b4de8 | mov ecx, esi condition: 7 of them and filesize < 7317504 }
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