A keylogger.
rule win_clipog_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-09-17" version = "1" description = "Detects win.clipog." 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.clipog" 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 = { 4883ec20 488bda 4c8d0d1fbc0000 8bf9 488d1586a10000 b906000000 4c8d0502bc0000 } // n = 7, score = 100 // 4883ec20 | cmp byte ptr [esp + 0x88], 0xa // 488bda | dec esp // 4c8d0d1fbc0000 | lea edx, [0xfffe94f2] // 8bf9 | je 0x2f1 // 488d1586a10000 | jmp 0x2eb // b906000000 | inc ecx // 4c8d0502bc0000 | mov eax, 1 $sequence_1 = { 740d 488d55c0 e8???????? 85c0 750b 4c3bf7 } // n = 6, score = 100 // 740d | dec eax // 488d55c0 | mov ecx, dword ptr [esp + 0x78] // e8???????? | // 85c0 | dec ebp // 750b | mov eax, esi // 4c3bf7 | dec eax $sequence_2 = { 740e 483bc7 0f848d000000 e9???????? 4d8bbcf160a60100 33d2 } // n = 6, score = 100 // 740e | mov edx, ebp // 483bc7 | dec eax // 0f848d000000 | mov ecx, edi // e9???????? | // 4d8bbcf160a60100 | jmp 0x9b // 33d2 | dec eax $sequence_3 = { 4883ec28 488d0dc1b80100 e8???????? 488d0dbdb80100 } // n = 4, score = 100 // 4883ec28 | dec eax // 488d0dc1b80100 | xor eax, esp // e8???????? | // 488d0dbdb80100 | dec eax $sequence_4 = { 488b4318 48894718 48c743180f000000 48837b1810 48897310 } // n = 5, score = 100 // 488b4318 | lea edx, [0x10e31] // 48894718 | dec ecx // 48c743180f000000 | mov edi, ebp // 48837b1810 | dec ebp // 48897310 | mov edi, ebp $sequence_5 = { f20f590d???????? f20f59ee f20f5ce9 f2410f1004c1 488d15d69d0000 f20f1014c2 f20f1025???????? } // n = 7, score = 100 // f20f590d???????? | // f20f59ee | nop // f20f5ce9 | dec eax // f2410f1004c1 | lea ecx, [ebp - 0x48] // 488d15d69d0000 | dec eax // f20f1014c2 | cmp dword ptr [ebp - 0x30], 8 // f20f1025???????? | $sequence_6 = { 4053 4883ec20 84c9 752f 488d1d17730100 } // n = 5, score = 100 // 4053 | xor ebx, ebx // 4883ec20 | jmp 0x2d // 84c9 | dec eax // 752f | lea ebx, [0x16081] // 488d1d17730100 | jmp 0x2d $sequence_7 = { b903000000 4c8d0500bd0000 488d1549a20000 e8???????? } // n = 4, score = 100 // b903000000 | lea ecx, [esp + 0x48] // 4c8d0500bd0000 | nop // 488d1549a20000 | dec esp // e8???????? | $sequence_8 = { e8???????? 488db328010000 bd06000000 488d7b38 488d0526380100 483947f0 741a } // n = 7, score = 100 // e8???????? | // 488db328010000 | dec eax // bd06000000 | mov edi, ecx // 488d7b38 | dec esp // 488d0526380100 | lea ecx, [0x121d4] // 483947f0 | mov ecx, 4 // 741a | ret $sequence_9 = { 89742420 ff15???????? 85c0 7526 } // n = 4, score = 100 // 89742420 | lea eax, [0x193af] // ff15???????? | // 85c0 | dec edx // 7526 | mov eax, dword ptr [eax + ebp*8] condition: 7 of them and filesize < 372736 }
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