YARA Detection Rule: Win64_Backdoor_Konni
Repository: reversinglabs/reversinglabs-yara-rules
Detects: Yara rule that detects Konni backdoor.
Malware family: KONNI
Author: ReversingLabs

Pattern signatures:
$network_communication_p1 = {
            48 8B C4 53 55 57 41 54 41 55 41 56 41 57 48 83 EC ?? 48 8B 3D ?? ?? ?? ?? 45 33 FF
            48 8B D9 4C 8D A7 ?? ?? ?? ?? 33 D2 41 B8 ?? ?? ?? ?? 49 8B CC 44 89 78 ?? 44 89 78
            ?? 45 8B F7 44 89 78 ?? 41 8B EF E8 ?? ?? ?? ?? 4C 8D 8F ?? ?? ?? ?? 4C 8D 05 ?? ??
            ?? ?? BA ?? ?? ?? ?? 49 8B CC 48 89 5C 24 ?? 48 89 7C 24 ?? E8 ?? ?? ?? ?? 48 8D 9F
            ?? ?? ?? ?? 48 8B CB E8 ?? ?? ?? ?? 41 BD ?? ?? ?? ?? 45 33 C9 45 33 C0 33 C9 41 8B
            D5 44 89 7C 24 ?? FF 15 ?? ?? ?? ?? 48 8B F8 48 89 44 24 ?? 48 85 C0 75 ?? 83 C8 ??
            48 83 C4 ?? 41 5F 41 5E 41 5D 41 5C 5F 5D 5B C3 4C 89 7C 24 ?? 44 89 7C 24 ?? 41 B8
            ?? ?? ?? ?? 45 33 C9 48 8B D3 48 8B C8 C7 44 24 ?? ?? ?? ?? ?? 48 89 B4 24 ?? ?? ??
            ?? C7 84 24 ?? ?? ?? ?? ?? ?? ?? ?? 4C 89 7C 24 ?? FF 15 ?? ?? ?? ?? 48 8B F0 48 85
            C0 0F 84 ?? ?? ?? ?? 4C 89 7C 24 ?? C7 44 24 ?? ?? ?? ?? ?? 48 8D 15 ?? ?? ?? ?? 45
          

Detection condition:
uint16(0) == 0x5A4D and
        (
            all of ($network_communication_p*)
        ) and
        (
            all of ($handle_c2_commands_p*)
        ) and
        (
            all of ($create_cab_file_and_upload_p*)
        ) and
        (
            all of ($cmd_expand_payload_p*)
       

Full rule:
rule Win64_Backdoor_Konni : tc_detection malicious
{
    meta:

        author              = "ReversingLabs"

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

        tc_detection_type   = "Backdoor"
        tc_detection_name   = "Konni"
        tc_detection_factor = 5

    strings:

        $network_communication_p1 = {
            48 8B C4 53 55 57 41 54 41 55 41 56 41 57 48 83 EC ?? 48 8B 3D ?? ?? ?? ?? 45 33 FF
            48 8B D9 4C 8D A7 ?? ?? ?? ?? 33 D2 41 B8 ?? ?? ?? ?? 49 8B CC 44 89 78 ?? 44 89 78
            ?? 45 8B F7 44 89 78 ?? 41 8B EF E8 ?? ?? ?? ?? 4C 8D 8F ?? ?? ?? ?? 4C 8D 05 ?? ??
            ?? ?? BA ?? ?? ?? ?? 49 8B CC 48 89 5C 24 ?? 48 89 7C 24 ?? E8 ?? ?? ?? ?? 48 8D 9F
            ?? ?? ?? ?? 48 8B CB E8 ?? ?? ?? ?? 41 BD ?? ?? ?? ?? 45 33 C9 45 33 C0 33 C9 41 8B
            D5 44 89 7C 24 ?? FF 15 ?? ?? ?? ?? 48 8B F8 48 89 44 24 ?? 48 85 C0 75 ?? 83 C8 ??
            48 83 C4 ?? 41 5F 41 5E 41 5D 41 5C 5F 5D 5B C3 4C 89 7C 24 ?? 44 89 7C 24 ?? 41 B8
            ?? ?? ?? ?? 45 33 C9 48 8B D3 48 8B C8 C7 44 24 ?? ?? ?? ?? ?? 48 89 B4 24 ?? ?? ??
            ?? C7 84 24 ?? ?? ?? ?? ?? ?? ?? ?? 4C 89 7C 24 ?? FF 15 ?? ?? ?? ?? 48 8B F0 48 85
            C0 0F 84 ?? ?? ?? ?? 4C 89 7C 24 ?? C7 44 24 ?? ?? ?? ?? ?? 48 8D 15 ?? ?? ?? ?? 45
            33 C9 4D 8B C4 48 8B C8 4C 89 7C 24 ?? C7 84 24 ?? ?? ?? ?? ?? ?? ?? ?? 4C 89 7C 24
            ?? FF 15 ?? ?? ?? ?? 48 8B D8 48 85 C0 74 ?? 45 33 C9 45 33 C0 33 D2 48 8B C8 44 89
            7C 24 ?? FF 15 ?? ?? ?? ?? 45 33 C9 45 33 C0 48 8B CB 85 C0 74 ?? 48 8D 94 24 ?? ??
            ?? ?? FF 15 ?? ?? ?? ?? 85 C0 75 ?? 45 33 C9 48 8B CB 45 33 C0 33 D2 FF 15 ?? ?? ??
            ?? 48 8B CB FF 15 ?? ?? ?? ?? 48 8B CE FF 15 ?? ?? ?? ?? 48 8B CF FF 15 ?? ?? ?? ??