SYMBOLCOMMON_NAMEaka. SYNONYMS
win.shortleash (Back to overview)

ShortLeash

VTCollection    

According to STRIKE, ShortLeash is a custom backdoor used to create an ORB network. It generates unique, self-signed TLS certificates with spoofed metadata for each node. Analysis of these certificates revealed over 1000 active nodes globally and victimology supports attribution to China-Nexus APTs.

References
2025-06-16SecurityScorecardSTRIKE Team
Checking all the Boxes: LapDogs, The New ORB in Town
ShortLeash ShortLeash
2025-03-20Cisco TalosAsheer Malhotra, Brandon White, Jungsoo An, Vitor Ventura
UAT-5918 targets critical infrastructure entities in Taiwan
ShortLeash LaZagne JuicyPotato Meterpreter MimiKatz ShortLeash UAT-5918
Yara Rules
[TLP:WHITE] win_shortleash_auto (20260504 | Detects win.shortleash.)
rule win_shortleash_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.shortleash."
        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.shortleash"
        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 = { e8???????? 3ac3 7506 4883c420 5b c3 41b848020000 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   3ac3                 | mov                 ecx, eax
            //   7506                 | dec                 eax
            //   4883c420             | cmp                 edi, eax
            //   5b                   | dec                 eax
            //   c3                   | cmovb               ecx, edi
            //   41b848020000         | dec                 esp

        $sequence_1 = { e8???????? 48894308 4c8b26 0f57c0 f30f7f45c0 498b5618 4885d2 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   48894308             | je                  0x17aa
            //   4c8b26               | mov                 eax, dword ptr [ebx + 0x14]
            //   0f57c0               | dec                 eax
            //   f30f7f45c0           | mov                 ecx, ebx
            //   498b5618             | inc                 ebp
            //   4885d2               | xor                 esi, esi

        $sequence_2 = { ba18000000 488bcb e8???????? 488b5540 488d4d58 e8???????? 488b5d38 }
            // n = 7, score = 100
            //   ba18000000           | dec                 eax
            //   488bcb               | cmp                 ecx, edx
            //   e8????????           |                     
            //   488b5540             | jb                  0x1266
            //   488d4d58             | dec                 eax
            //   e8????????           |                     
            //   488b5d38             | mov                 ecx, dword ptr [esi + 0xb0]

        $sequence_3 = { 4a8d1c09 eb02 33db 4885db 7410 488d056e070000 488d0d7b210000 }
            // n = 7, score = 100
            //   4a8d1c09             | dec                 eax
            //   eb02                 | lea                 ecx, [0xd8fa4]
            //   33db                 | mov                 eax, 1
            //   4885db               | dec                 eax
            //   7410                 | sub                 esp, 0x1d8
            //   488d056e070000       | dec                 eax
            //   488d0d7b210000       | xor                 eax, esp

        $sequence_4 = { 488d4c2440 e8???????? 0f1007 f30f7f442420 4c8d442420 488bd0 488bcb }
            // n = 7, score = 100
            //   488d4c2440           | dec                 eax
            //   e8????????           |                     
            //   0f1007               | xor                 ecx, esp
            //   f30f7f442420         | inc                 ecx
            //   4c8d442420           | mov                 eax, 1
            //   488bd0               | inc                 esp
            //   488bcb               | mov                 dword ptr [esp + 0x24], eax

        $sequence_5 = { b880c2ffff e9???????? 4c8d45e0 488bd7 488d4d30 e8???????? 8bd8 }
            // n = 7, score = 100
            //   b880c2ffff           | mov                 edi, esi
            //   e9????????           |                     
            //   4c8d45e0             | inc                 ecx
            //   488bd7               | mov                 esi, esp
            //   488d4d30             | dec                 ecx
            //   e8????????           |                     
            //   8bd8                 | sub                 esi, esi

        $sequence_6 = { 418bcb 4433c0 f7d1 4123cc 418bc3 c1c806 4433c0 }
            // n = 7, score = 100
            //   418bcb               | imul                ecx
            //   4433c0               | dec                 eax
            //   f7d1                 | sar                 edx, 2
            //   4123cc               | dec                 esp
            //   418bc3               | lea                 esp, [edx + 1]
            //   c1c806               | dec                 eax
            //   4433c0               | mov                 ecx, dword ptr [edi + 0x10]

        $sequence_7 = { ffd2 498d8da0000000 488d559f e8???????? 90 4c8bc0 498bd5 }
            // n = 7, score = 100
            //   ffd2                 | mov                 dword ptr [esp + 0x28], esi
            //   498d8da0000000       | dec                 eax
            //   488d559f             | mov                 dword ptr [esp + 0x20], eax
            //   e8????????           |                     
            //   90                   | inc                 esp
            //   4c8bc0               | mov                 ecx, esi
            //   498bd5               | dec                 esp

        $sequence_8 = { 85ed 74c8 458bf0 ebc6 33c0 85c9 751a }
            // n = 7, score = 100
            //   85ed                 | lock inc            dword ptr [eax + 8]
            //   74c8                 | dec                 eax
            //   458bf0               | mov                 eax, dword ptr [ebx + 8]
            //   ebc6                 | dec                 eax
            //   33c0                 | mov                 esi, dword ptr [esp + 0x38]
            //   85c9                 | dec                 eax
            //   751a                 | mov                 dword ptr [edx + 8], eax

        $sequence_9 = { 7516 488bcf e8???????? 8bd8 498bce e8???????? 3bc3 }
            // n = 7, score = 100
            //   7516                 | mov                 dword ptr [ebx], esi
            //   488bcf               | dec                 eax
            //   e8????????           |                     
            //   8bd8                 | mov                 dword ptr [ebx + 8], esi
            //   498bce               | dec                 eax
            //   e8????????           |                     
            //   3bc3                 | mov                 dword ptr [ebx + 0x5c], esi

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