SYMBOLCOMMON_NAMEaka. SYNONYMS
win.powershellrunner (Back to overview)

PowerShellRunner

Actor(s): Turla

VTCollection    

There is no description at this point.

References
2019-05-29 ⋅ ESET Research ⋅ Matthieu Faou, Romain Dumont
A dive into Turla PowerShell usage
PowerShellRunner TurlaRPC
2019-04-13 ⋅ GitHub ⋅ Vitali Kremez
Decoded Turla Powershell Implant
PowerShellRunner
Yara Rules
[TLP:WHITE] win_powershellrunner_auto (20260917 | Detects win.powershellrunner.)
rule win_powershellrunner_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.powershellrunner."
        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.powershellrunner"
        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 = { 4c8d0527b30000 e8???????? 488bcb 4885c0 740a }
            // n = 5, score = 200
            //   4c8d0527b30000       | mov                 ecx, dword ptr [esp + 0x38]
            //   e8????????           |                     
            //   488bcb               | dec                 eax
            //   4885c0               | mov                 dword ptr [esp + 0x20], eax
            //   740a                 | dec                 eax

        $sequence_1 = { 0fb6c0 85c0 7532 488b442420 4883e804 4c8bc0 }
            // n = 6, score = 200
            //   0fb6c0               | lea                 ecx, [esp + 0x148]
            //   85c0                 | mov                 edx, 7
            //   7532                 | dec                 eax
            //   488b442420           | lea                 ecx, [esp + 0xa0]
            //   4883e804             | mov                 edx, 6
            //   4c8bc0               | dec                 eax

        $sequence_2 = { eb67 488b442428 4889442438 eb0a 488b442438 4889442428 488b442438 }
            // n = 7, score = 200
            //   eb67                 | dec                 eax
            //   488b442428           | lea                 ecx, [esp + 0x108]
            //   4889442438           | movzx               eax, byte ptr [esp + 0x20]
            //   eb0a                 | test                eax, eax
            //   488b442438           | je                  0x10df
            //   4889442428           | dec                 eax
            //   488b442438           | mov                 eax, dword ptr [esp + 0x140]

        $sequence_3 = { c684248900000065 c684248a00000074 c684248b00000053 c684248c00000065 c684248d00000063 c684248e00000075 c684248f00000072 }
            // n = 7, score = 200
            //   c684248900000065     | mov                 eax, eax
            //   c684248a00000074     | dec                 esp
            //   c684248b00000053     | lea                 ecx, [0x9f75]
            //   c684248c00000065     | vmulsd              xmm0, xmm1, xmm1
            //   c684248d00000063     | movsd               xmm4, xmm0
            //   c684248e00000075     | dec                 esp
            //   c684248f00000072     | lea                 ecx, [0xb480]

        $sequence_4 = { 8d7010 eb20 41b807000000 488d1531c70000 488bcf }
            // n = 5, score = 200
            //   8d7010               | mov                 ecx, 6
            //   eb20                 | dec                 esp
            //   41b807000000         | lea                 eax, [0xb463]
            //   488d1531c70000       | dec                 eax
            //   488bcf               | mov                 edx, ebx

        $sequence_5 = { 488b442430 4889442428 488b4c2430 e8???????? 8b00 89442420 4c8b442450 }
            // n = 7, score = 200
            //   488b442430           | dec                 eax
            //   4889442428           | mov                 ecx, dword ptr [eax]
            //   488b4c2430           | jmp                 0xeb9
            //   e8????????           |                     
            //   8b00                 | dec                 eax
            //   89442420             | mov                 ecx, dword ptr [esp + 0x78]
            //   4c8b442450           | call                dword ptr [esp + 0x80]

        $sequence_6 = { 488d0581db0000 488945bf 448d59ff 488945c7 488d0572db0000 488945cf 488945d7 }
            // n = 7, score = 200
            //   488d0581db0000       | mov                 dword ptr [esp + 0x78], 0x18
            //   488945bf             | mov                 dword ptr [esp + 0x88], 1
            //   448d59ff             | dec                 eax
            //   488945c7             | mov                 dword ptr [esp + 0x30], 0
            //   488d0572db0000       | mov                 dword ptr [esp + 0x28], 0x80000000
            //   488945cf             | xor                 eax, eax
            //   488945d7             | mov                 ecx, 0x68

        $sequence_7 = { 6689842402010000 b83b000000 6689842404010000 b84e000000 6689842406010000 b857000000 6689842408010000 }
            // n = 7, score = 200
            //   6689842402010000     | cmp                 eax, 0x102
            //   b83b000000           | jne                 0x9e4
            //   6689842404010000     | mov                 edx, 1
            //   b84e000000           | dec                 eax
            //   6689842406010000     | lea                 edx, [esp + 0x30]
            //   b857000000           | dec                 eax
            //   6689842408010000     | lea                 ecx, [0x30615]

        $sequence_8 = { e8???????? 488b442450 eb2b 488d442420 488bf8 33c0 b901000000 }
            // n = 7, score = 200
            //   e8????????           |                     
            //   488b442450           | mov                 eax, 0x65
            //   eb2b                 | mov                 word ptr [esp + 0xec], ax
            //   488d442420           | mov                 eax, 0x64
            //   488bf8               | mov                 word ptr [esp + 0xee], ax
            //   33c0                 | mov                 word ptr [esp + 0xe8], ax
            //   b901000000           | mov                 eax, 0x69

        $sequence_9 = { ff942428030000 488b8c2430030000 48894130 488d542448 488b4c2428 ff942428030000 488b8c2430030000 }
            // n = 7, score = 200
            //   ff942428030000       | dec                 eax
            //   488b8c2430030000     | xor                 ecx, esp
            //   48894130             | mov                 eax, dword ptr [esp + 0x60]
            //   488d542448           | dec                 eax
            //   488b4c2428           | mov                 eax, dword ptr [esp + 0x28]
            //   ff942428030000       | dec                 eax
            //   488b8c2430030000     | mov                 eax, dword ptr [eax]

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