rule Windows_Ransomware_NailaoLoader_0 : malware { meta: description = "Shadowpad-associated locker ransomware's decryptor and launcher" researcher = "Alexis BONNEFOI" source = "OCD" creation_date = "06/02/2025" os = "Windows" category = "Ransomware" product = "p2a, mfd" threat_name = "Windows.Ransomware.NailaoLocker" samples = "5dc36e687a7fa3cfbf845e8a53173f37ac38559b6b87f9dcf609a72b3f284035,7b8ea6b1e2a29190cb28fc98ef837bf4a7a0b71b84177ce9395a5113a843c4d3,fcb8bf42d852526214578ab4b477b29f2412a7a931c6353db4fa6c221661edf4" strings: $asm_get_str_procs = { E8 ?? ?? ?? 00 4? 8D 05 ?? ?? ?? 00 (B? 00 01 00 00|8B D?) 4? 8D (?4|?C) 24 ?? E8 ?? ?? ?? 00 4? 8D 05 ?? ?? ?? 00 (B? 00 01 00 00|8B D?) 4? 8D (?4|?C) 24 ?? E8 ?? ?? ?? 00 4? 8D 05 ?? ?? ?? 00 (B? 00 01 00 00|8B D?) 4? 8D (?4|?C) 24 ?? E8 ?? ?? ?? 00 4? 8D 05 ?? ?? ?? 00 (B? 00 01 00 00|8B D?) 4? 8D (?4|?C) 24 ?? E8 ?? ?? ?? 00 4? 8D 05 ?? ?? ?? 00 (B? 00 01 00 00|8B D?) 4? 8D (?4|?C) 24 ?? } $asm_control_loader = { FF 15 ?? ?? ?? 00 48 8D 98 8F 00 01 00 80 ?B [0-2] 0F 85 ?? 00 00 00 80 7B ?1 ?? 0F 85 ?? 00 00 00 80 7B ?2 ?? 0F 85 ?? 00 00 00 } $asm_unxor_paylaod ={ (80 C?|0?) ?? [0-4] (80 F?|3?) ?? [0-4] (80 E?|2?) ?? [0-4] 88 (4? FF|0?) [0-12] 7? ?? } condition: 2 of them and filesize < 500KB and uint16(0) == 0x5A4D } rule Windows_Ransomware_NailaoLocker_1 : malware { meta: description = "Shadowpad-associated locker ransomware's in memory strings" researcher = "Alexis BONNEFOI" source = "OCD" creation_date = "06/02/2025" os = "Windows" category = "Ransomware" product = "p2a, mfd" threat_name = "Windows.Ransomware.NailaoLocker" samples = "2f95e360defa443d7a405ae657ebfd369da6834528d6e390a7aebe7a61592a44" strings: $str_1 = ".locked" ascii wide $str_2 = "lock.log" ascii wide $str_3 = "%ProgramData%\\lock.log" ascii wide $str_4 = "W:\\" ascii wide $str_5 = "locked.html" ascii wide $str_6 = "Global\\lockv7" $str_7 = "*** Excute [%s] error with code 0x%x" wide $str_8 = "OK Excute [%s] OK" wide $asm_free_orig_dll = { 4? B? ?? ?? 00 00 4? 8D (?4|?C) 24 ?? 4? 8B (C?|D?|E?|F?) FF 15 ?? ?? ?? 00 85 (C?|D?|E?|F?) 74 ?? 4? 8B (C?|D?|E?|F?) FF 15 ?? ?? ?? 00 4? 8B (C?|D?|E?|F?) FF 15 ?? ?? ?? 00 4? 8B (C?|D?|E?|F?) FF 15 ?? ?? ?? 00 4? 8D (?4|?C) 24 ?? FF 15 ?? ?? ?? 00 85(C?|D?|E?|F?) } condition: all of them and uint16(0) == 0x5A4D } rule Windows_Trojan_Shadowpad : malware { meta: description = "Shadowpad injection" researcher = "Alexis BONNEFOI" source = "OCD" creation_date = "06/02/2025" os = "Windows" category = "Trojan" product = "p2a, mfd" threat_name = "Windows.Trojan.Sidewalk" samples = "0a749474b5f4a8537e50ea5b60d8c94f5c688fe414cd400c3397adca4315a509,697e6454d9be19f0bd60aeffa0238498a91d1ea5a23112f7c8f981afd2fedb23,c5f8a256d0969e253633160b9728b6c2bc044f536e92af178a05a598aaa09c1f" strings: $asm_control_loader = { 4? 83 EC ?? 33 (C?|D?|E?|F?) FF 15 ?? ?? ?? 00 4? 05 ?? ?? 00 00 8B (0?|1?|2?|3?) 81 F? 48 89 44 24 B? 00 00 00 00 4? 0F 45 (C?|D?|E?|F?) 4? 83 C4 ?? C3 } $asm_shadowpad_main = { 4? 83 EC ?? E8 ?? ?? ?? FF 4? 8B 0D ?? ?? ?? 00 B? ?? ?? 00 00 (E8 ?? ?? ?? FF 4? 8D 0D ?? ?? ?? 00 4? 83 C4 ?? E9 ?? ?? ?? FF|4? 8? (C?|D?|E?|F?) ?? E9 ?? ?? ?? FF) } $asm_replace_rsp = { 4? 8B (C?|D?|E?|F?) 4? 83 C? 08 4? 89 (?4|?C) 24 ?? 4? 85 (C?|D?|E?|F?) 74 ?? 4? 8B (0?|1?|2?|3?) 4? 8B (?4|?C) 24 ?? 4? 3B (C?|D?|E?|F?) 75 ?? 4? 8D 05 ?? ?? ?? FF 4? 89 (0?|1?|2?|3?) EB?? } condition: 2 of them and uint16(0) == 0x5A4D }