SYMBOLCOMMON_NAMEaka. SYNONYMS
win.portstarter (Back to overview)

PortStarter

aka: SocksProxyGo

Actor(s): Vanilla Tempest

VTCollection    

There is no description at this point.

References
2023-08-08 ⋅ CrowdStrike ⋅ CrowdStrike
CrowdStrike 2023 Threat Hunting Report
PortStarter
2022-10-25 ⋅ Microsoft ⋅ Microsoft Security Threat Intelligence
DEV-0832 (Vice Society) opportunistic ransomware campaigns impacting US education sector
BlackCat Mount Locker PortStarter Zeppelin Vanilla Tempest
Yara Rules
[TLP:WHITE] win_portstarter_auto (20260917 | Detects win.portstarter.)
rule win_portstarter_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.portstarter."
        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.portstarter"
        malpedia_rule_date = "20260916"
        malpedia_hash = "53a643781c18e08f4a50949af60172d837a0b6f6"
        malpedia_version = "20260917"
        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 = { 4c89cb 4c89c1 4c89d7 e8???????? 488d7301 488b542478 }
            // n = 6, score = 300
            //   4c89cb               | dec                 esp
            //   4c89c1               | mov                 ecx, edx
            //   4c89d7               | dec                 esp
            //   e8????????           |                     
            //   488d7301             | mov                 edx, dword ptr [esp + 0x40]
            //   488b542478           | dec                 esp

        $sequence_1 = { 4c8b4110 4c8b4818 4d39c1 7c08 }
            // n = 4, score = 300
            //   4c8b4110             | dec                 esp
            //   4c8b4818             | mov                 eax, dword ptr [ecx + 0x10]
            //   4d39c1               | dec                 esp
            //   7c08                 | mov                 ecx, dword ptr [eax + 0x18]

        $sequence_2 = { 4c8b542440 4c89542458 c644243f00 488b942480000000 4c8b12 41ffd2 488b4c2450 }
            // n = 7, score = 300
            //   4c8b542440           | mov                 eax, edi
            //   4c89542458           | dec                 esp
            //   c644243f00           | mov                 ebx, esp
            //   488b942480000000     | dec                 esp
            //   4c8b12               | mov                 ecx, ebp
            //   41ffd2               | dec                 esp
            //   488b4c2450           | mov                 edx, dword ptr [esp + 0x48]

        $sequence_3 = { 4c89542450 4c89442448 4c89f8 4c89e3 4c89e9 e8???????? }
            // n = 6, score = 300
            //   4c89542450           | dec                 ebp
            //   4c89442448           | mov                 edx, eax
            //   4c89f8               | dec                 esp
            //   4c89e3               | mov                 eax, dword ptr [ecx + 0x10]
            //   4c89e9               | dec                 esp
            //   e8????????           |                     

        $sequence_4 = { 4c89c3 660f1f440000 4883f803 0f842c010000 }
            // n = 4, score = 300
            //   4c89c3               | mov                 dword ptr [esp + 0x58], edx
            //   660f1f440000         | mov                 byte ptr [esp + 0x3f], 0
            //   4883f803             | dec                 eax
            //   0f842c010000         | mov                 edx, dword ptr [esp + 0x80]

        $sequence_5 = { 4c89c3 4989c1 4889c8 4c89c9 0f1f440000 4883f80a 0f845e030000 }
            // n = 7, score = 300
            //   4c89c3               | dec                 esp
            //   4989c1               | mov                 edx, dword ptr [edx]
            //   4889c8               | inc                 ecx
            //   4c89c9               | call                edx
            //   0f1f440000           | dec                 eax
            //   4883f80a             | mov                 ecx, dword ptr [esp + 0x50]
            //   0f845e030000         | dec                 esp

        $sequence_6 = { 4c8b442470 4c894718 833d????????00 750e }
            // n = 4, score = 300
            //   4c8b442470           | dec                 eax
            //   4c894718             | mov                 ebx, dword ptr [esp + 0x68]
            //   833d????????00       |                     
            //   750e                 | dec                 eax

        $sequence_7 = { 4c8b542448 488b5c2468 48898424c0000000 4c89542448 4c89d1 e8???????? 488b542448 }
            // n = 7, score = 300
            //   4c8b542448           | mov                 ecx, dword ptr [eax + 0x18]
            //   488b5c2468           | dec                 ebp
            //   48898424c0000000     | cmp                 ecx, eax
            //   4c89542448           | jl                  0xd
            //   4c89d1               | dec                 ebp
            //   e8????????           |                     
            //   488b542448           | mov                 edx, eax

        $sequence_8 = { 4863442430 486bc010 488d0de3061c00 4803c8 }
            // n = 4, score = 100
            //   4863442430           | dec                 esp
            //   486bc010             | mov                 dword ptr [edi + 8], eax
            //   488d0de3061c00       | jmp                 0x31
            //   4803c8               | dec                 esp

        $sequence_9 = { 41b800de1b00 488d15d02f0000 488d4c2420 e8???????? }
            // n = 4, score = 100
            //   41b800de1b00         | dec                 esp
            //   488d15d02f0000       | mov                 eax, dword ptr [esp + 0xd8]
            //   488d4c2420           | dec                 esp
            //   e8????????           |                     

        $sequence_10 = { 4883ec48 8b442458 89442424 48c744242800000000 41b800de1b00 }
            // n = 5, score = 100
            //   4883ec48             | dec                 esp
            //   8b442458             | mov                 dword ptr [esp + 0x20], ecx
            //   89442424             | dec                 eax
            //   48c744242800000000     | mov    edx, dword ptr [esp + 0x28]
            //   41b800de1b00         | inc                 ecx

        $sequence_11 = { 488d0de3061c00 4803c8 488bc1 48634c2434 }
            // n = 4, score = 100
            //   488d0de3061c00       | lea                 edx, [0x2fd0]
            //   4803c8               | dec                 eax
            //   488bc1               | lea                 ecx, [esp + 0x20]
            //   48634c2434           | dec                 eax

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