SYMBOLCOMMON_NAMEaka. SYNONYMS
win.tor_loader (Back to overview)

TorLoader

VTCollection    

Downloader, delivered via a lure with fake exploits published on Github.

References
2023-06-14VulnCheckJacob Baines
Fake Security Researcher GitHub Repositories Deliver Malicious Implant
TorLoader
Yara Rules
[TLP:WHITE] win_tor_loader_auto (20260504 | Detects win.tor_loader.)
rule win_tor_loader_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.tor_loader."
        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.tor_loader"
        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???????? 488d05943d2200 488b5c2438 488d0dc4b92700 bf12000000 0f1f00 e8???????? }
            // n = 7, score = 100
            //   e8????????           |                     
            //   488d05943d2200       | mov                 ebx, dword ptr [esp + 0x98]
            //   488b5c2438           | dec                 eax
            //   488d0dc4b92700       | mov                 esi, dword ptr [eax + 0x98]
            //   bf12000000           | dec                 eax
            //   0f1f00               | mov                 edi, dword ptr [eax + 0xa0]
            //   e8????????           |                     

        $sequence_1 = { e8???????? 488b4c2478 4889c8 0f1f00 e8???????? 488b6c2468 4883c470 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   488b4c2478           | mov                 dword ptr [eax + 8], 0xe
            //   4889c8               | dec                 eax
            //   0f1f00               | lea                 ecx, [0xc5dfe]
            //   e8????????           |                     
            //   488b6c2468           | dec                 eax
            //   4883c470             | mov                 dword ptr [eax], ecx

        $sequence_2 = { eb20 4889c7 488d059d9a1500 e8???????? 488d3d3c073c00 488b442420 e8???????? }
            // n = 7, score = 100
            //   eb20                 | dec                 esp
            //   4889c7               | mov                 esp, dword ptr [esp + 0xc8]
            //   488d059d9a1500       | mov                 eax, 1
            //   e8????????           |                     
            //   488d3d3c073c00       | jmp                 0x1098
            //   488b442420           | dec                 esp
            //   e8????????           |                     

        $sequence_3 = { eba7 0fb64c2413 84c9 0f94c0 eb9b e8???????? 488d058c4d2c00 }
            // n = 7, score = 100
            //   eba7                 | inc                 ebp
            //   0fb64c2413           | dec                 esp
            //   84c9                 | mov                 dword ptr [esp + 0x178], ebp
            //   0f94c0               | dec                 ecx
            //   eb9b                 | lea                 edx, [ebx + 1]
            //   e8????????           |                     
            //   488d058c4d2c00       | dec                 eax

        $sequence_4 = { e8???????? 4889c1 488d05b1323200 440f11bc24a0000000 4889842490000000 48898c2498000000 0fb674242f }
            // n = 7, score = 100
            //   e8????????           |                     
            //   4889c1               | movzx               esi, byte ptr [edx + 0x10]
            //   488d05b1323200       | inc                 eax
            //   440f11bc24a0000000     | mov    byte ptr [esp + 0x2f], dh
            //   4889842490000000     | dec                 esp
            //   48898c2498000000     | mov                 eax, dword ptr [edx + 0x18]
            //   0fb674242f           | dec                 eax

        $sequence_5 = { 833d????????00 7519 488b9424e8000000 48895068 488b942400010000 4885d2 eb1f }
            // n = 7, score = 100
            //   833d????????00       |                     
            //   7519                 | mov                 eax, dword ptr [esp + 0xc0]
            //   488b9424e8000000     | dec                 esp
            //   48895068             | mov                 ecx, dword ptr [esp + 0x60]
            //   488b942400010000     | dec                 ecx
            //   4885d2               | mov                 ebx, eax
            //   eb1f                 | dec                 ecx

        $sequence_6 = { eb05 e8???????? 488d055ece0700 e8???????? 48c7400802000000 48c78424c003000002000000 48c78424c803000002000000 }
            // n = 7, score = 100
            //   eb05                 | mov                 ecx, ebx
            //   e8????????           |                     
            //   488d055ece0700       | mov                 edi, 1
            //   e8????????           |                     
            //   48c7400802000000     | dec                 eax
            //   48c78424c003000002000000     | lea    esi, [0x261dd8]
            //   48c78424c803000002000000     | dec    eax

        $sequence_7 = { eb4c 4c8ba424f8000000 4d89e5 4d89fc 4c8bbc2488000000 4c89a42490000000 4d85e4 }
            // n = 7, score = 100
            //   eb4c                 | dec                 eax
            //   4c8ba424f8000000     | mov                 ecx, ebx
            //   4d89e5               | dec                 eax
            //   4d89fc               | lea                 ebx, [0x2771ee]
            //   4c8bbc2488000000     | dec                 eax
            //   4c89a42490000000     | mov                 ebp, dword ptr [esp + 0x30]
            //   4d85e4               | dec                 ecx

        $sequence_8 = { eb10 4889c7 488b9424c8000000 e8???????? 31db 488d0d830a2100 4889c7 }
            // n = 7, score = 100
            //   eb10                 | dec                 ecx
            //   4889c7               | mov                 ebp, 0
            //   488b9424c8000000     | dec                 esp
            //   e8????????           |                     
            //   31db                 | mov                 dword ptr [esp + 0x70], ebp
            //   488d0d830a2100       | dec                 ecx
            //   4889c7               | cmp                 esp, dword ptr [esi + 0x10]

        $sequence_9 = { 8b44242c e8???????? 488d0df2910d00 48894c2470 4889442478 488b4c2430 0f1f00 }
            // n = 7, score = 100
            //   8b44242c             | dec                 eax
            //   e8????????           |                     
            //   488d0df2910d00       | lea                 ebx, [0x2bd299]
            //   48894c2470           | dec                 eax
            //   4889442478           | lea                 eax, [0x160182]
            //   488b4c2430           | nop                 
            //   0f1f00               | dec                 eax

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