Unit 42 observed threat actor Tropical Scorpius using this RAT in operations where also Cuba ransomware was deployed.
rule win_romcom_rat_auto { meta: author = "Felix Bilstein - yara-signator at cocacoding dot com" date = "2026-09-17" version = "1" description = "Detects win.romcom_rat." 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.romcom_rat" 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 488b4130 488bea ba01000000 418bf0 488bd9 488b4940 } // n = 7, score = 100 // 4883ec20 | inc edx // 488b4130 | mov cl, byte ptr [ecx + ecx + 0x6acb0] // 488bea | dec eax // ba01000000 | sub edx, eax // 418bf0 | dec ecx // 488bd9 | mov edx, dword ptr [ecx + 8] // 488b4940 | movzx ecx, byte ptr [edx] $sequence_1 = { 48890d???????? 488d05be820300 488d0de7840300 488905???????? 48890d???????? e8???????? 4c8d0d1db10300 } // n = 7, score = 100 // 48890d???????? | // 488d05be820300 | lea edx, [ebp - 0x49] // 488d0de7840300 | dec esp // 488905???????? | // 48890d???????? | // e8???????? | // 4c8d0d1db10300 | cmovae esi, dword ptr [ebp - 0x11] $sequence_2 = { 4084f6 488d0de4370700 7504 488b4f10 4c8d442420 33d2 e8???????? } // n = 7, score = 100 // 4084f6 | lea eax, [0x6fef9] // 488d0de4370700 | dec eax // 7504 | mov edx, ebx // 488b4f10 | dec eax // 4c8d442420 | lea ecx, [0x89e36] // 33d2 | dec eax // e8???????? | $sequence_3 = { 488b04c2 488d0cc9 488d14c8 eb07 488d159cc00300 f6423820 74ba } // n = 7, score = 100 // 488b04c2 | mov dword ptr [esp + 0x28], eax // 488d0cc9 | dec eax // 488d14c8 | lea edx, [0x1bba5] // eb07 | inc ebp // 488d159cc00300 | xor eax, eax // f6423820 | dec esp // 74ba | lea ecx, [esp + 0x40] $sequence_4 = { 0f8798020000 e8???????? 4084f6 741d 488d5530 488bcf ff15???????? } // n = 7, score = 100 // 0f8798020000 | je 0xa90 // e8???????? | // 4084f6 | dec eax // 741d | lea edx, [ebp + 0xf60] // 488d5530 | inc ebp // 488bcf | xor ecx, ecx // ff15???????? | $sequence_5 = { 4533c0 458bc8 473a941958da0600 740a 473a941960da0600 751b 488b02 } // n = 7, score = 100 // 4533c0 | mov dword ptr [esp + 0x20], eax // 458bc8 | dec eax // 473a941958da0600 | lea ecx, [ebp + 0x60] // 740a | jmp 0x1cdb // 473a941960da0600 | dec eax // 751b | lea ecx, [ebp + 0x60] // 488b02 | dec eax $sequence_6 = { 4883c0f8 4883f81f 0f8758020000 e8???????? 488d542430 84db 0f84c5010000 } // n = 7, score = 100 // 4883c0f8 | mov byte ptr [eax + ecx + 1], bh // 4883f81f | jmp 0xa4c // 0f8758020000 | inc esp // e8???????? | // 488d542430 | mov al, byte ptr [esp + 0x20] // 84db | dec ecx // 0f84c5010000 | cmp esi, esi $sequence_7 = { 751f 41b905000000 4c8d05c8e00100 488bc8 418d510b e8???????? 85c0 } // n = 7, score = 100 // 751f | dec ecx // 41b905000000 | add ecx, edi // 4c8d05c8e00100 | inc esp // 488bc8 | cmp byte ptr [ecx], ah // 418d510b | jne 0x1efb // e8???????? | // 85c0 | movsd qword ptr [ecx], xmm0 $sequence_8 = { 85c0 7fb1 448b642460 4585e4 0f84e3feffff 418bff c1e70c } // n = 7, score = 100 // 85c0 | dec eax // 7fb1 | mov ebx, dword ptr [esp + 0x50] // 448b642460 | jb 0x4b4 // 4585e4 | dec eax // 0f84e3feffff | inc edx // 418bff | dec eax // c1e70c | mov ecx, dword ptr [ebp - 0x31] $sequence_9 = { 488bc8 e8???????? eb08 488b0f e8???????? 488b07 395814 } // n = 7, score = 100 // 488bc8 | dec eax // e8???????? | // eb08 | mov eax, dword ptr [eax] // 488b0f | dec eax // e8???????? | // 488b07 | mov dword ptr [ebp - 0x58], eax // 395814 | dec eax condition: 7 of them and filesize < 1211392 }
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