YARA Detection Rule: Win64_Backdoor_EggStremeFuel
Repository: reversinglabs/reversinglabs-yara-rules
Detects: Yara rule that detects EggStremeFuel backdoor.
Malware family: EGGSTREMEFUEL
Author: ReversingLabs

Pattern signatures:
$download_file_from_c2 = {
            48 89 5C 24 ?? 55 56 57 48 8D AC 24 ?? ?? ?? ?? B8 ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 2B
            E0 48 8B 05 ?? ?? ?? ?? 48 33 C4 48 89 85 ?? ?? ?? ?? 0F 10 02 48 8D 44 24 ?? 48 8B
            F9 0F 10 4A ?? B9 ?? ?? ?? ?? 41 B8 ?? ?? ?? ?? 0F 11 00 0F 10 42 ?? 0F 11 48 ?? 0F
            10 4A ?? 0F 11 40 ?? 0F 10 42 ?? 0F 11 48 ?? 0F 10 4A ?? 0F 11 40 ?? 0F 10 42 ?? 0F
            11 48 ?? 0F 11 40 ?? 48 03 C1 0F 10 42 ?? 48 03 D1 48 8D 8D ?? ?? ?? ?? 0F 11 40 ??
            0F 10 0A 0F 10 42 ?? 0F 11 08 0F 10 4A ?? 0F 11 40 ?? 0F 10 42 ?? 0F 11 48 ?? 0F 10
            4A ?? 33 D2 0F 11 40 ?? 0F 11 48 ?? E8 ?? ?? ?? ?? 48 8B 44 24 ?? 48 C1 E8 ?? 85 C0
            75 ?? 48 8D 44 24 ?? 49 83 C8 ?? 49 FF C0 42 80 3C 00 ?? 75 ?? 45 33 C9 48 8D 54 24
            ?? E9 ?? ?? ?? ?? 81 7C 24 ?? ?? ?? ?? ?? 75 ?? 48 8D 44 24 ?? 49 83 C8 ?? 49 FF C0
            42 80 3C 00 ?? 75 ?? 41 B9 ?? ?? ?? ?? EB ?? 33 D2 48 8D 4D ?? 41 B8 ?? ?? ?? ?? E8
            ?

Detection condition:
uint16(0) == 0x5A4D and
        (
            $download_file_from_c2
        ) and
        (
            $upload_file_to_c2
        ) and
        (
            all of ($get_logical_drive_data_p*)
        ) and
        (
            all of ($get_os_information_p*)
        )

Full rule:
rule Win64_Backdoor_EggStremeFuel : tc_detection malicious
{
    meta:

        author              = "ReversingLabs"

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

        tc_detection_type   = "Backdoor"
        tc_detection_name   = "EggStremeFuel"
        tc_detection_factor = 5

    strings:

        $download_file_from_c2 = {
            48 89 5C 24 ?? 55 56 57 48 8D AC 24 ?? ?? ?? ?? B8 ?? ?? ?? ?? E8 ?? ?? ?? ?? 48 2B
            E0 48 8B 05 ?? ?? ?? ?? 48 33 C4 48 89 85 ?? ?? ?? ?? 0F 10 02 48 8D 44 24 ?? 48 8B
            F9 0F 10 4A ?? B9 ?? ?? ?? ?? 41 B8 ?? ?? ?? ?? 0F 11 00 0F 10 42 ?? 0F 11 48 ?? 0F
            10 4A ?? 0F 11 40 ?? 0F 10 42 ?? 0F 11 48 ?? 0F 10 4A ?? 0F 11 40 ?? 0F 10 42 ?? 0F
            11 48 ?? 0F 11 40 ?? 48 03 C1 0F 10 42 ?? 48 03 D1 48 8D 8D ?? ?? ?? ?? 0F 11 40 ??
            0F 10 0A 0F 10 42 ?? 0F 11 08 0F 10 4A ?? 0F 11 40 ?? 0F 10 42 ?? 0F 11 48 ?? 0F 10
            4A ?? 33 D2 0F 11 40 ?? 0F 11 48 ?? E8 ?? ?? ?? ?? 48 8B 44 24 ?? 48 C1 E8 ?? 85 C0
            75 ?? 48 8D 44 24 ?? 49 83 C8 ?? 49 FF C0 42 80 3C 00 ?? 75 ?? 45 33 C9 48 8D 54 24
            ?? E9 ?? ?? ?? ?? 81 7C 24 ?? ?? ?? ?? ?? 75 ?? 48 8D 44 24 ?? 49 83 C8 ?? 49 FF C0
            42 80 3C 00 ?? 75 ?? 41 B9 ?? ?? ?? ?? EB ?? 33 D2 48 8D 4D ?? 41 B8 ?? ?? ?? ?? E8
            ?? ?? ?? ?? 44 8B 44 24 ?? 48 8D 95 ?? ?? ?? ?? 48 8B 8F ?? ?? ?? ?? 45 33 C9 FF 15
            ?? ?? ?? ?? 44 8B 44 24 ?? 8B D8 41 3B C0 7D ?? 48 63 CB 48 8D 95 ?? ?? ?? ?? 48 03
            D1 44 2B C3 48 8B 8F ?? ?? ?? ?? 45 33 C9 FF 15 ?? ?? ?? ?? B9 ?? ?? ?? ?? 8B F0 FF
            15 ?? ?? ?? ?? 85 F6 7F ?? 48 8B CF E8 ?? ?? ?? ?? 48 8B CF E8 ?? ?? ?? ?? 44 8B 44
            24 ?? 03 DE 41 3B D8 7C ?? 44 89 44 24 ?? 48 8D 97 ?? ?? ?? ?