SYMBOLCOMMON_NAMEaka. SYNONYMS
win.ninerat (Back to overview)

NineRAT

Actor(s): Silent Chollima

VTCollection    

There is no description at this point.

References
2023-12-11Cisco TalosAsheer Malhotra, Jungsoo An, Vitor Ventura
Operation Blacksmith: Lazarus targets organizations worldwide using novel Telegram-based malware written in DLang
BottomLoader DLRAT HazyLoad NineRAT
Yara Rules
[TLP:WHITE] win_ninerat_auto (20260504 | Detects win.ninerat.)
rule win_ninerat_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.ninerat."
        info = "autogenerated rule brought to you by yara-signator"
        tool = "yara-signator v0.6.0"
        signator_config = "callsandjumps;datarefs;binvalue"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.ninerat"
        malpedia_rule_date = "20260422"
        malpedia_hash = "a182e35da64e6d71cb55f125c4d4225196523f14"
        malpedia_version = "20260504"
        malpedia_license = "CC BY-SA 4.0"
        malpedia_sharing = "TLP:WHITE"

    /* DISCLAIMER
     * The strings used in this rule have been automatically selected from the
     * disassembly of memory dumps and unpacked files, using YARA-Signator.
     * The code and documentation is published here:
     * https://github.com/fxb-cocacoding/yara-signator
     * As Malpedia is used as data source, please note that for a given
     * number of families, only single samples are documented.
     * This likely impacts the degree of generalization these rules will offer.
     * Take the described generation method also into consideration when you
     * apply the rules in your use cases and assign them confidence levels.
     */


    strings:
        $sequence_0 = { 4c899530ffffff 4d8b5808 4c039d00ffffff 4c899d38ffffff }
            // n = 4, score = 400
            //   4c899530ffffff       | dec                 esp
            //   4d8b5808             | mov                 eax, dword ptr [ebp - 0x108]
            //   4c039d00ffffff       | dec                 ecx
            //   4c899d38ffffff       | inc                 eax

        $sequence_1 = { 4c899530ffffff 4c8b85f8feffff 49ffc0 4c898538ffffff }
            // n = 4, score = 400
            //   4c899530ffffff       | lea                 edx, [ebx + eax + 0x10]
            //   4c8b85f8feffff       | dec                 eax
            //   49ffc0               | mov                 dword ptr [ebp - 0xc8], edx
            //   4c898538ffffff       | dec                 eax

        $sequence_2 = { 4c899530ffffff 4c8b4708 4a8d540310 48899538ffffff }
            // n = 4, score = 400
            //   4c899530ffffff       | mov                 dword ptr [ebp - 0x40], esi
            //   4c8b4708             | dec                 esp
            //   4a8d540310           | mov                 dword ptr [ebp - 0x38], edi
            //   48899538ffffff       | dec                 eax

        $sequence_3 = { 4c8975c0 4c897dc8 48894d10 4889d3 }
            // n = 4, score = 400
            //   4c8975c0             | dec                 esp
            //   4c897dc8             | mov                 dword ptr [ebp - 0x40], esi
            //   48894d10             | dec                 esp
            //   4889d3               | mov                 dword ptr [ebp - 0x38], edi

        $sequence_4 = { 4c899538ffffff 488d9530ffffff 488b8d40ffffff e8???????? }
            // n = 4, score = 400
            //   4c899538ffffff       | mov                 dword ptr [ebp - 0x40], esi
            //   488d9530ffffff       | dec                 esp
            //   488b8d40ffffff       | mov                 dword ptr [ebp - 0x38], edi
            //   e8????????           |                     

        $sequence_5 = { 4c899540feffff 488d9540feffff b97e160000 e8???????? }
            // n = 4, score = 400
            //   4c899540feffff       | dec                 eax
            //   488d9540feffff       | mov                 esi, dword ptr [ecx]
            //   b97e160000           | inc                 ecx
            //   e8????????           |                     

        $sequence_6 = { 4c899538ffffff 7333 4c3bd2 7622 }
            // n = 4, score = 400
            //   4c899538ffffff       | dec                 esp
            //   7333                 | add                 ebx, dword ptr [ebp - 0x100]
            //   4c3bd2               | dec                 esp
            //   7622                 | mov                 dword ptr [ebp - 0xc8], ebx

        $sequence_7 = { 4c8985f8feffff b905000000 48898df0feffff 488d95f0feffff }
            // n = 4, score = 400
            //   4c8985f8feffff       | dec                 esp
            //   b905000000           | mov                 dword ptr [ebp - 0xd0], edx
            //   48898df0feffff       | dec                 ebp
            //   488d95f0feffff       | mov                 ebx, dword ptr [eax + 8]

        $sequence_8 = { 8a043e ffc2 4a8b8ce3f0c60100 4803cf }
            // n = 4, score = 100
            //   8a043e               | mov                 ecx, dword ptr [ebp - 0xc0]
            //   ffc2                 | dec                 esp
            //   4a8b8ce3f0c60100     | mov                 eax, dword ptr [ebp + 0x10]
            //   4803cf               | dec                 ebp

        $sequence_9 = { 48d1eb 4533f6 664489345e 33d2 }
            // n = 4, score = 100
            //   48d1eb               | lea                 edx, [ebp - 0xd0]
            //   4533f6               | dec                 eax
            //   664489345e           | mov                 ecx, dword ptr [ebp - 0xc0]
            //   33d2                 | dec                 esp

        $sequence_10 = { b905000000 4c8d05257b0000 488d15267b0000 e8???????? 8bcb 4885c0 740c }
            // n = 7, score = 100
            //   b905000000           | lea                 edx, [ebp - 0xd0]
            //   4c8d05257b0000       | dec                 eax
            //   488d15267b0000       | mov                 ecx, dword ptr [ebp - 0xc0]
            //   e8????????           |                     
            //   8bcb                 | dec                 esp
            //   4885c0               | mov                 eax, dword ptr [ebp + 0x10]
            //   740c                 | dec                 esp

        $sequence_11 = { 57 4883ec20 488d055feb0000 488bf9 488901 8bda }
            // n = 6, score = 100
            //   57                   | lea                 edx, [ebp - 0xd0]
            //   4883ec20             | dec                 eax
            //   488d055feb0000       | mov                 ecx, dword ptr [ebp - 0xc0]
            //   488bf9               | dec                 esp
            //   488901               | mov                 dword ptr [ebp - 0xc8], edx
            //   8bda                 | dec                 eax

        $sequence_12 = { 488d05a8580100 4d85c9 4d8bd0 41b801000000 }
            // n = 4, score = 100
            //   488d05a8580100       | mov                 ecx, esi
            //   4d85c9               | dec                 esp
            //   4d8bd0               | mov                 dword ptr [ebp - 0xc8], edx
            //   41b801000000         | dec                 eax

        $sequence_13 = { 488bd9 488bc2 488d0dadeb0000 0f57c0 }
            // n = 4, score = 100
            //   488bd9               | mov                 eax, dword ptr [ebp + 0x10]
            //   488bc2               | dec                 ebp
            //   488d0dadeb0000       | mov                 ecx, dword ptr [eax]
            //   0f57c0               | dec                 ebp

        $sequence_14 = { 488d1590c30000 e8???????? 4885c0 740f 488bcb }
            // n = 5, score = 100
            //   488d1590c30000       | mov                 dword ptr [ebp - 0xc8], edx
            //   e8????????           |                     
            //   4885c0               | dec                 eax
            //   740f                 | lea                 edx, [ebp - 0xd0]
            //   488bcb               | dec                 eax

        $sequence_15 = { 5b c3 4883611000 488d05ccec0000 }
            // n = 4, score = 100
            //   5b                   | mov                 ecx, dword ptr [eax]
            //   c3                   | dec                 esp
            //   4883611000           | mov                 dword ptr [ebp - 0xc8], edx
            //   488d05ccec0000       | dec                 eax

    condition:
        7 of them and filesize < 7709696
}
Download all Yara Rules