YARA Detection Rule: Win64_Backdoor_Voldemort
Repository: reversinglabs/reversinglabs-yara-rules
Detects: Yara rule that detects Voldemort backdoor.
Malware family: VOLDEMORT
Author: ReversingLabs

Pattern signatures:
$decrypt_configuration_p1 = {
            4C 8B DC 55 56 48 81 EC ?? ?? ?? ?? 48 8B 05 ?? ?? ?? ?? 48 33 C4 48 89 44 24 ?? 49
            89 5B ?? 33 F6 49 89 7B ?? 4D 89 6B ?? 48 89 4C 24 ?? 66 C7 44 24 ?? ?? ?? C6 44 24
            ?? ?? E8 ?? ?? ?? ?? 4C 8B E8 8B FE E8 ?? ?? ?? ?? 48 89 44 24 ?? 48 8B E8 48 85 C0
            0F 84 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B
            D8 48 85 C0 75 ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B
            D8 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B D0 48 8B CB E8 ?? ?? ?? ?? 48 85 C0 0F
            84 ?? ?? ?? ?? 45 33 C9 48 89 74 24 ?? C7 44 24 ?? ?? ?? ?? ?? BA ?? ?? ?? ?? 48 8B
            CD C7 44 24 ?? ?? ?? ?? ?? 45 8D 41 ?? FF D0 48 89 44 24 ?? 48 8B F8 48 83 F8 ?? 0F
            84 ?? ?? ?? ?? 4C 89 A4 24 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? 4C 89 B4 24 ?? ?? ?? ??
            E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B D8 48 85 C0 75 ?? 48 8D 0D ?? ?? ?? ??
          

Detection condition:
uint16(0) == 0x5A4D and
        (
            all of ($decrypt_configuration_p*)
        ) and
        (
            $decryption_algorithm
        ) and
        (
            all of ($request_access_token_p*)
        ) and
        (
            all of ($network_communication_p*)
        ) and
      

Full rule:
rule Win64_Backdoor_Voldemort : tc_detection malicious
{
    meta:

        author              = "ReversingLabs"

        source              = "ReversingLabs"
        status              = "RELEASED"
        sharing             = "TLP:WHITE"
        category            = "MALWARE"
        malware             = "VOLDEMORT"
        description         = "Yara rule that detects Voldemort backdoor."

        tc_detection_type   = "Backdoor"
        tc_detection_name   = "Voldemort"
        tc_detection_factor = 5

    strings:

        $decrypt_configuration_p1 = {
            4C 8B DC 55 56 48 81 EC ?? ?? ?? ?? 48 8B 05 ?? ?? ?? ?? 48 33 C4 48 89 44 24 ?? 49
            89 5B ?? 33 F6 49 89 7B ?? 4D 89 6B ?? 48 89 4C 24 ?? 66 C7 44 24 ?? ?? ?? C6 44 24
            ?? ?? E8 ?? ?? ?? ?? 4C 8B E8 8B FE E8 ?? ?? ?? ?? 48 89 44 24 ?? 48 8B E8 48 85 C0
            0F 84 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B
            D8 48 85 C0 75 ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B
            D8 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B D0 48 8B CB E8 ?? ?? ?? ?? 48 85 C0 0F
            84 ?? ?? ?? ?? 45 33 C9 48 89 74 24 ?? C7 44 24 ?? ?? ?? ?? ?? BA ?? ?? ?? ?? 48 8B
            CD C7 44 24 ?? ?? ?? ?? ?? 45 8D 41 ?? FF D0 48 89 44 24 ?? 48 8B F8 48 83 F8 ?? 0F
            84 ?? ?? ?? ?? 4C 89 A4 24 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? 4C 89 B4 24 ?? ?? ?? ??
            E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B D8 48 85 C0 75 ?? 48 8D 0D ?? ?? ?? ??
            E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B D8 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ??
            48 8B D0 48 8B CB FF 15 ?? ?? ?? ?? 48 85 C0 74 ?? 33 D2 48 8B CF FF D0 44 8B E0 EB
            ?? 44 8B E6 89 74 24 ?? FF 15 ?? ?? ?? ?? 45 8B C4 BA ?? ?? ?? ?? 48 8B C8 FF 15 ??
            ?? ?? ?? 48 8D 0D ?? ?? ?? ?? 4C 8B F0 E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ?? ?? 48 8B
            D8 48 85 C0 75 ?? 48 8D 0D ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B C8 E8 ?? ?? ??