YARA Detection Rule: Win32_Ransomware_Conti
Repository: reversinglabs/reversinglabs-yara-rules
Detects: Yara rule that detects Conti ransomware.
Malware family: CONTI
Author: ReversingLabs

Pattern signatures:
$find_files = {
            55 8B EC 83 E4 ?? 81 EC ?? ?? ?? ?? 53 56 57 8B D9 53 FF 15 ?? ?? ?? ?? 89 44 24 ?? 
            8D 0C 45 ?? ?? ?? ?? E8 ?? ?? ?? ?? 8B F8 89 7C 24 ?? 85 FF 0F 84 ?? ?? ?? ?? 8B 44 
            24 ?? B9 ?? ?? ?? ?? 53 BE ?? ?? ?? ?? 57 66 83 7C 43 ?? ?? 0F 45 F1 FF 15 ?? ?? ?? 
            ?? 56 57 FF 15 ?? ?? ?? ?? 8B CB E8 ?? ?? ?? ?? 8D 44 24 ?? 50 57 FF 15 ?? ?? ?? ?? 
            8B F8 83 FF ?? 0F 84 ?? ?? ?? ?? 68 ?? ?? ?? ?? 8D 44 24 ?? 50 FF 15 ?? ?? ?? ?? 85 
            C0 0F 84 ?? ?? ?? ?? 68 ?? ?? ?? ?? 8D 44 24 ?? 50 FF 15 ?? ?? ?? ?? 85 C0 0F 84 ?? 
            ?? ?? ?? F6 44 24 ?? ?? 74 ?? 8D 4C 24 ?? E8 ?? ?? ?? ?? 85 C0 74 ?? 8D 54 24 ?? 8B 
            CB E8 ?? ?? ?? ?? 8B F0 85 F6 74 ?? 8B CE E8 ?? ?? ?? ?? 8B CE E8 ?? ?? ?? ?? EB ?? 
            8D 4C 24 ?? E8 ?? ?? ?? ?? 85 C0 74 ?? 8D 54 24 ?? 8B CB E8 ?? ?? ?? ?? 8B F0 85 F6 
            74 ?? 68 ?? ?? ?? ?? 6A ?? FF 15 ?? ?? ?? ?? 85 C0 74 ?? 6A ?? 5A 8B C8 C6 01 ?? 41 
            83

Detection condition:
uint16(0) == 0x5A4D and
        (
            $find_files
        ) and
        (
            all of ($encrypt_files_p*)
        )

Full rule:
rule Win32_Ransomware_Conti : tc_detection malicious
{
    meta:

        author              = "ReversingLabs"

        source              = "ReversingLabs"
        status              = "RELEASED"
        sharing             = "TLP:WHITE"
        category            = "MALWARE"
        malware             = "CONTI"
        description         = "Yara rule that detects Conti ransomware."

        tc_detection_type   = "Ransomware"
        tc_detection_name   = "Conti"
        tc_detection_factor = 5

    strings:

        $find_files = {
            55 8B EC 83 E4 ?? 81 EC ?? ?? ?? ?? 53 56 57 8B D9 53 FF 15 ?? ?? ?? ?? 89 44 24 ?? 
            8D 0C 45 ?? ?? ?? ?? E8 ?? ?? ?? ?? 8B F8 89 7C 24 ?? 85 FF 0F 84 ?? ?? ?? ?? 8B 44 
            24 ?? B9 ?? ?? ?? ?? 53 BE ?? ?? ?? ?? 57 66 83 7C 43 ?? ?? 0F 45 F1 FF 15 ?? ?? ?? 
            ?? 56 57 FF 15 ?? ?? ?? ?? 8B CB E8 ?? ?? ?? ?? 8D 44 24 ?? 50 57 FF 15 ?? ?? ?? ?? 
            8B F8 83 FF ?? 0F 84 ?? ?? ?? ?? 68 ?? ?? ?? ?? 8D 44 24 ?? 50 FF 15 ?? ?? ?? ?? 85 
            C0 0F 84 ?? ?? ?? ?? 68 ?? ?? ?? ?? 8D 44 24 ?? 50 FF 15 ?? ?? ?? ?? 85 C0 0F 84 ?? 
            ?? ?? ?? F6 44 24 ?? ?? 74 ?? 8D 4C 24 ?? E8 ?? ?? ?? ?? 85 C0 74 ?? 8D 54 24 ?? 8B 
            CB E8 ?? ?? ?? ?? 8B F0 85 F6 74 ?? 8B CE E8 ?? ?? ?? ?? 8B CE E8 ?? ?? ?? ?? EB ?? 
            8D 4C 24 ?? E8 ?? ?? ?? ?? 85 C0 74 ?? 8D 54 24 ?? 8B CB E8 ?? ?? ?? ?? 8B F0 85 F6 
            74 ?? 68 ?? ?? ?? ?? 6A ?? FF 15 ?? ?? ?? ?? 85 C0 74 ?? 6A ?? 5A 8B C8 C6 01 ?? 41 
            83 EA ?? 75 ?? 83 48 ?? ?? 50 89 70 ?? A1 ?? ?? ?? ?? 52 6A ?? FF 70 ?? FF 15 ?? ?? 
            ?? ?? 8D 44 24 ?? 50 57 FF 15 ?? ?? ?? ?? 85 C0 0F 85 ?? ?? ?? ?? 8B 4C 24 ?? E8 ?? 
            ?? ?? ?? 83 FF ?? 74 ?? 57 FF 15 ?? ?? ?? ?? 5F 5E 5B 8B E5 5D C3 
        }
        
        $encrypt_files_p1 = {
            55 8B EC 81 EC ?? ?? ?? ?? 53 56 57 BB ?? ?? ?? ?? 8B F9 53 57 FF 15 ?? ?? ?? ?? 85 
            C0 0F 85 ?? ?? ?? ?? BE ?? ?? ?? ?? 56 57 FF 15 ?? ??