YARA Detection Rule: Linux_Backdoor_ChaosRAT
Repository: reversinglabs/reversinglabs-yara-rules
Detects: Yara rule that detects ChaosRAT backdoor.
Malware family: CHAOSRAT
Author: ReversingLabs

Pattern signatures:
$network_communication_v1 = {
            49 3B 66 ?? 0F 86 ?? ?? ?? ?? 48 83 EC ?? 48 89 6C 24 ?? 48 8D 6C 24 ?? 48 89 44 24
            ?? 80 78 ?? ?? 74 ?? 48 B8 ?? ?? ?? ?? ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B 44 24 ?? E8
            ?? ?? ?? ?? 0F 1F 40 ?? 48 85 C0 0F 84 ?? ?? ?? ?? 48 8B 48 ?? 48 89 D8 FF D1 44 0F
            11 7C 24 ?? B9 ?? ?? ?? ?? 48 89 C7 48 89 DE 31 C0 48 8D 1D ?? ?? ?? ?? E8 ?? ?? ??
            ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? 48 89 4C 24 ?? 48 89 44 24 ?? 90 48 8B 1D ??
            ?? ?? ?? 48 8D 05 ?? ?? ?? ?? BF ?? ?? ?? ?? 48 89 FE 48 8D 4C 24 ?? E8 ?? ?? ?? ??
            48 8B 4C 24 ?? C6 41 ?? ?? 48 B8 ?? ?? ?? ?? ?? ?? ?? ?? 0F 1F 44 00 ?? E8 ?? ?? ??
            ?? 48 8B 44 24 ?? E9 ?? ?? ?? ?? 48 8B 44 24 ?? E8 ?? ?? ?? ?? 48 85 C0 75 ?? 48 8B
            44 24 ?? C6 40 ?? ?? E9 ?? ?? ?? ?? 48 8B 48 ?? 48 89 D8 FF D1 44 0F 11 7C 24 ?? B9
            ?? ?? ?? ?? 48 89 C7 48 89 DE 31 C0 48 8D 1D ?? ?? ?? ?? E8 ?? ?? ?? ?? E8 ?? ?? ??
          

Detection condition:
uint32(0) == 0x464C457F and
        (
            (
                (
                    $network_communication_v1
                ) and
                (
                    $send_system_information_v1
                ) and
                (
                    all of ($download_file_v1_p*)
      

Full rule:
rule Linux_Backdoor_ChaosRAT : tc_detection malicious
{
    meta:

        author              = "ReversingLabs"

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

        tc_detection_type   = "Backdoor"
        tc_detection_name   = "ChaosRAT"
        tc_detection_factor = 5

    strings:

        $network_communication_v1 = {
            49 3B 66 ?? 0F 86 ?? ?? ?? ?? 48 83 EC ?? 48 89 6C 24 ?? 48 8D 6C 24 ?? 48 89 44 24
            ?? 80 78 ?? ?? 74 ?? 48 B8 ?? ?? ?? ?? ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 8B 44 24 ?? E8
            ?? ?? ?? ?? 0F 1F 40 ?? 48 85 C0 0F 84 ?? ?? ?? ?? 48 8B 48 ?? 48 89 D8 FF D1 44 0F
            11 7C 24 ?? B9 ?? ?? ?? ?? 48 89 C7 48 89 DE 31 C0 48 8D 1D ?? ?? ?? ?? E8 ?? ?? ??
            ?? E8 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? 48 89 4C 24 ?? 48 89 44 24 ?? 90 48 8B 1D ??
            ?? ?? ?? 48 8D 05 ?? ?? ?? ?? BF ?? ?? ?? ?? 48 89 FE 48 8D 4C 24 ?? E8 ?? ?? ?? ??
            48 8B 4C 24 ?? C6 41 ?? ?? 48 B8 ?? ?? ?? ?? ?? ?? ?? ?? 0F 1F 44 00 ?? E8 ?? ?? ??
            ?? 48 8B 44 24 ?? E9 ?? ?? ?? ?? 48 8B 44 24 ?? E8 ?? ?? ?? ?? 48 85 C0 75 ?? 48 8B
            44 24 ?? C6 40 ?? ?? E9 ?? ?? ?? ?? 48 8B 48 ?? 48 89 D8 FF D1 44 0F 11 7C 24 ?? B9
            ?? ?? ?? ?? 48 89 C7 48 89 DE 31 C0 48 8D 1D ?? ?? ?? ?? E8 ?? ?? ?? ?? E8 ?? ?? ??
            ?? 48 8D 0D ?? ?? ?? ?? 48 89 4C 24 ?? 48 89 44 24 ?? 90 48 8B 1D ?? ?? ?? ?? 48 8D
            05 ?? ?? ?? ?? BF ?? ?? ?? ?? 48 89 FE 48 8D 4C 24 ?? E8 ?? ?? ?? ?? 48 8B 4C 24 ??
            C6 41 ?? ?? 48 B8 ?? ?? ?? ?? ?? ?? ?? ?? 66 90 E8 ?? ?? ?? ?? 48 8B 44 24 ?? E9 ??
            ?? ?? ?? 48 89 44 24 ?? E8 ?? ?? ?? ?? 48 8B 44 24
        }

        $send_system_information_v1 = {
            4C 8D 64 24 ?? 4D 3B 66 ?? 0F 86 ?? ?? ?? ?? 48 81 EC ?? ??