YARA Detection Rule: ByteCode_MSIL_Backdoor_OrcusRAT
Repository: reversinglabs/reversinglabs-yara-rules
Detects: Yara rule that detects OrcusRAT backdoor.
Malware family: ORCUSRAT
Author: ReversingLabs

Pattern signatures:
$get_tcp_connections = {
            18 0B 16 0C 7E ?? ?? ?? ?? 12 ?? 17 07 1B 16 28 ?? ?? ?? ?? 0D 09 2C ?? 09 1F ?? 2E
            ?? 72 ?? ?? ?? ?? 09 8C ?? ?? ?? ?? 28 ?? ?? ?? ?? 73 ?? ?? ?? ?? 7A 08 28 ?? ?? ??
            ?? 13 ?? 11 ?? 12 ?? 17 07 1B 16 28 ?? ?? ?? ?? 0D 09 2C ?? 72 ?? ?? ?? ?? 09 8C ??
            ?? ?? ?? 28 ?? ?? ?? ?? 73 ?? ?? ?? ?? 7A 11 ?? D0 ?? ?? ?? ?? 28 ?? ?? ?? ?? 28 ??
            ?? ?? ?? A5 ?? ?? ?? ?? 13 ?? 11 ?? 28 ?? ?? ?? ?? 11 ?? 7B ?? ?? ?? ?? 8C ?? ?? ??
            ?? 28 ?? ?? ?? ?? 6A 58 28 ?? ?? ?? ?? 13 ?? 11 ?? 7B ?? ?? ?? ?? 8D ?? ?? ?? ?? 0A
            16 13 ?? 2B ?? 11 ?? D0 ?? ?? ?? ?? 28 ?? ?? ?? ?? 28 ?? ?? ?? ?? A5 ?? ?? ?? ?? 13
            ?? 06 11 ?? 11 ?? A4 ?? ?? ?? ?? 11 ?? 28 ?? ?? ?? ?? 11 ?? 8C ?? ?? ?? ?? 28 ?? ??
            ?? ?? 6A 58 28 ?? ?? ?? ?? 13 ?? 11 ?? 17 58 13 ?? 11 ?? 6A 11 ?? 7B ?? ?? ?? ?? 6E
            32 ?? DE ?? 11 ?? 28 ?? ?? ?? ?? DC 06 7E ?? ?? ?? ?? 25 2D ?? 26 7E ?? ?? ?? ?? (FE | 06)
        

Detection condition:
uint16(0) == 0x5A4D and
        (
            (
                $get_tcp_connections
            ) or
            (
                all of ($get_operating_system_information_p*)
            ) or          
            (
                $take_screenshot
            ) or
            (
                $

Full rule:
rule ByteCode_MSIL_Backdoor_OrcusRAT : tc_detection malicious
{
    meta:

        author              = "ReversingLabs"

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

        tc_detection_type   = "Backdoor"
        tc_detection_name   = "OrcusRAT"
        tc_detection_factor = 5

    strings:

        $get_tcp_connections = {
            18 0B 16 0C 7E ?? ?? ?? ?? 12 ?? 17 07 1B 16 28 ?? ?? ?? ?? 0D 09 2C ?? 09 1F ?? 2E
            ?? 72 ?? ?? ?? ?? 09 8C ?? ?? ?? ?? 28 ?? ?? ?? ?? 73 ?? ?? ?? ?? 7A 08 28 ?? ?? ??
            ?? 13 ?? 11 ?? 12 ?? 17 07 1B 16 28 ?? ?? ?? ?? 0D 09 2C ?? 72 ?? ?? ?? ?? 09 8C ??
            ?? ?? ?? 28 ?? ?? ?? ?? 73 ?? ?? ?? ?? 7A 11 ?? D0 ?? ?? ?? ?? 28 ?? ?? ?? ?? 28 ??
            ?? ?? ?? A5 ?? ?? ?? ?? 13 ?? 11 ?? 28 ?? ?? ?? ?? 11 ?? 7B ?? ?? ?? ?? 8C ?? ?? ??
            ?? 28 ?? ?? ?? ?? 6A 58 28 ?? ?? ?? ?? 13 ?? 11 ?? 7B ?? ?? ?? ?? 8D ?? ?? ?? ?? 0A
            16 13 ?? 2B ?? 11 ?? D0 ?? ?? ?? ?? 28 ?? ?? ?? ?? 28 ?? ?? ?? ?? A5 ?? ?? ?? ?? 13
            ?? 06 11 ?? 11 ?? A4 ?? ?? ?? ?? 11 ?? 28 ?? ?? ?? ?? 11 ?? 8C ?? ?? ?? ?? 28 ?? ??
            ?? ?? 6A 58 28 ?? ?? ?? ?? 13 ?? 11 ?? 17 58 13 ?? 11 ?? 6A 11 ?? 7B ?? ?? ?? ?? 6E
            32 ?? DE ?? 11 ?? 28 ?? ?? ?? ?? DC 06 7E ?? ?? ?? ?? 25 2D ?? 26 7E ?? ?? ?? ?? (FE | 06)
            ?? ?? ?? ?? ?? 73 ?? ?? ?? ?? 25 80 ?? ?? ?? ?? 28 ?? ?? ?? ?? 28
        }

        $get_operating_system_information_p1 = {
            73 ?? ?? ?? ?? 25 28 ?? ?? ?? ?? 6F ?? ?? ?? ?? 6F ?? ?? ?? ?? 25 28 ?? ?? ?? ?? 6F
            ?? ?? ?? ?? 0B 12 ?? (FE | 16) ?? ?? ?? ?? ?? 6F ?? ?? ?? ?? 6F ?? ?? ?? ?? 25 28 ??
            ?? ?? ?? 6F ?? ?? ?? ?? 25 28 ?? ?? ?? ?? 6F ?? ?? ?? ?? 6F ?? ?? ?? ?? 25 28 ?? ??
            ?? ?? 6F ?? ?? ?? ?? 25 2