There is no description at this point.
rule win_citadel_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-05-04" version = "1" description = "Detects win.citadel." 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.citadel" 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 = { eb0e 6800800000 53 57 56 ff15???????? } // n = 6, score = 5100 // eb0e | jmp 0x10 // 6800800000 | push 0x8000 // 53 | push ebx // 57 | push edi // 56 | push esi // ff15???????? | $sequence_1 = { ff15???????? 85c0 0f8566010000 57 } // n = 4, score = 5000 // ff15???????? | // 85c0 | test eax, eax // 0f8566010000 | jne 0x16c // 57 | push edi $sequence_2 = { 41 66395802 7405 83c002 } // n = 4, score = 5000 // 41 | inc ecx // 66395802 | cmp word ptr [eax + 2], bx // 7405 | je 7 // 83c002 | add eax, 2 $sequence_3 = { 3d00002003 7715 8b4d08 890e } // n = 4, score = 5000 // 3d00002003 | cmp eax, 0x3200000 // 7715 | ja 0x17 // 8b4d08 | mov ecx, dword ptr [ebp + 8] // 890e | mov dword ptr [esi], ecx $sequence_4 = { 0f8566010000 57 57 57 } // n = 4, score = 5000 // 0f8566010000 | jne 0x16c // 57 | push edi // 57 | push edi // 57 | push edi $sequence_5 = { 50 57 e8???????? 33db 3c01 } // n = 5, score = 5000 // 50 | push eax // 57 | push edi // e8???????? | // 33db | xor ebx, ebx // 3c01 | cmp al, 1 $sequence_6 = { 03f7 6a0d 5f e8???????? 59 59 } // n = 6, score = 5000 // 03f7 | add esi, edi // 6a0d | push 0xd // 5f | pop edi // e8???????? | // 59 | pop ecx // 59 | pop ecx $sequence_7 = { 33c9 663918 7507 41 } // n = 4, score = 5000 // 33c9 | xor ecx, ecx // 663918 | cmp word ptr [eax], bx // 7507 | jne 9 // 41 | inc ecx $sequence_8 = { 33c0 6689460e 0fb74606 6685c0 7432 66ff460c } // n = 6, score = 3900 // 33c0 | xor eax, eax // 6689460e | mov word ptr [esi + 0xe], ax // 0fb74606 | movzx eax, word ptr [esi + 6] // 6685c0 | test ax, ax // 7432 | je 0x34 // 66ff460c | inc word ptr [esi + 0xc] $sequence_9 = { 8bf8 c745f801000000 85f6 0f842b010000 837e1000 0f8421010000 807e1400 } // n = 7, score = 3900 // 8bf8 | mov edi, eax // c745f801000000 | mov dword ptr [ebp - 8], 1 // 85f6 | test esi, esi // 0f842b010000 | je 0x131 // 837e1000 | cmp dword ptr [esi + 0x10], 0 // 0f8421010000 | je 0x127 // 807e1400 | cmp byte ptr [esi + 0x14], 0 $sequence_10 = { 0f8525ffffff 5b b001 eb30 d0e8 } // n = 5, score = 3900 // 0f8525ffffff | jne 0xffffff2b // 5b | pop ebx // b001 | mov al, 1 // eb30 | jmp 0x32 // d0e8 | shr al, 1 $sequence_11 = { 0f8421010000 807e1400 0f8417010000 85ff 0f84dd000000 53 837df800 } // n = 7, score = 3900 // 0f8421010000 | je 0x127 // 807e1400 | cmp byte ptr [esi + 0x14], 0 // 0f8417010000 | je 0x11d // 85ff | test edi, edi // 0f84dd000000 | je 0xe3 // 53 | push ebx // 837df800 | cmp dword ptr [ebp - 8], 0 $sequence_12 = { 7432 66ff460e 6639460e 7228 8b4610 8a4e09 } // n = 6, score = 3900 // 7432 | je 0x34 // 66ff460e | inc word ptr [esi + 0xe] // 6639460e | cmp word ptr [esi + 0xe], ax // 7228 | jb 0x2a // 8b4610 | mov eax, dword ptr [esi + 0x10] // 8a4e09 | mov cl, byte ptr [esi + 9] $sequence_13 = { eb30 d0e8 3ac3 73fa } // n = 4, score = 3900 // eb30 | jmp 0x32 // d0e8 | shr al, 1 // 3ac3 | cmp al, bl // 73fa | jae 0xfffffffc $sequence_14 = { 85c0 7409 3255fd 8a0f ffd0 8807 } // n = 6, score = 3900 // 85c0 | test eax, eax // 7409 | je 0xb // 3255fd | xor dl, byte ptr [ebp - 3] // 8a0f | mov cl, byte ptr [edi] // ffd0 | call eax // 8807 | mov byte ptr [edi], al $sequence_15 = { 7404 84d2 7575 33c0 85c0 740b } // n = 6, score = 3900 // 7404 | je 6 // 84d2 | test dl, dl // 7575 | jne 0x77 // 33c0 | xor eax, eax // 85c0 | test eax, eax // 740b | je 0xd condition: 7 of them and filesize < 1236992 }
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