SYMBOLCOMMON_NAMEaka. SYNONYMS
win.shapeshift (Back to overview)

SHAPESHIFT

Actor(s): APT33

VTCollection    

There is no description at this point.

References
2017-09-20FireEyeJacqueline O’Leary, Josiah Kimble, Kelli Vanderlee, Nalani Fraser
Insights into Iranian Cyber Espionage: APT33 Targets Aerospace and Energy Sectors and has Ties to Destructive Malware
DROPSHOT Nanocore RAT NetWire RC SHAPESHIFT TURNEDUP APT33
Yara Rules
[TLP:WHITE] win_shapeshift_auto (20260504 | Detects win.shapeshift.)
rule win_shapeshift_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.shapeshift."
        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.shapeshift"
        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 = { c745e04c804100 e9???????? c745dc02000000 c745e04c804100 }
            // n = 4, score = 100
            //   c745e04c804100       | mov                 dword ptr [ebp - 0x20], 0x41804c
            //   e9????????           |                     
            //   c745dc02000000       | mov                 dword ptr [ebp - 0x24], 2
            //   c745e04c804100       | mov                 dword ptr [ebp - 0x20], 0x41804c

        $sequence_1 = { 0fbf0d???????? 8bd0 83c404 0fb689589a4100 880a 0fbf0d???????? 52 }
            // n = 7, score = 100
            //   0fbf0d????????       |                     
            //   8bd0                 | mov                 edx, eax
            //   83c404               | add                 esp, 4
            //   0fb689589a4100       | movzx               ecx, byte ptr [ecx + 0x419a58]
            //   880a                 | mov                 byte ptr [edx], cl
            //   0fbf0d????????       |                     
            //   52                   | push                edx

        $sequence_2 = { a1???????? 89442448 66a1???????? 668944244c a0???????? 8844244e }
            // n = 6, score = 100
            //   a1????????           |                     
            //   89442448             | mov                 dword ptr [esp + 0x48], eax
            //   66a1????????         |                     
            //   668944244c           | mov                 word ptr [esp + 0x4c], ax
            //   a0????????           |                     
            //   8844244e             | mov                 byte ptr [esp + 0x4e], al

        $sequence_3 = { 8bf8 6882000000 57 ff15???????? 6a00 }
            // n = 5, score = 100
            //   8bf8                 | mov                 edi, eax
            //   6882000000           | push                0x82
            //   57                   | push                edi
            //   ff15????????         |                     
            //   6a00                 | push                0

        $sequence_4 = { 83ec1c 56 6a00 68???????? 6a00 6810040000 }
            // n = 6, score = 100
            //   83ec1c               | sub                 esp, 0x1c
            //   56                   | push                esi
            //   6a00                 | push                0
            //   68????????           |                     
            //   6a00                 | push                0
            //   6810040000           | push                0x410

        $sequence_5 = { 83c604 03c8 890d???????? 83fe08 72e2 890cbb 47 }
            // n = 7, score = 100
            //   83c604               | add                 esi, 4
            //   03c8                 | add                 ecx, eax
            //   890d????????         |                     
            //   83fe08               | cmp                 esi, 8
            //   72e2                 | jb                  0xffffffe4
            //   890cbb               | mov                 dword ptr [ebx + edi*4], ecx
            //   47                   | inc                 edi

        $sequence_6 = { 660fc5cc03 25ff000000 83c001 25fe010000 f20f593c85109c4100 660f122c85109c4100 }
            // n = 6, score = 100
            //   660fc5cc03           | pextrw              ecx, xmm4, 3
            //   25ff000000           | and                 eax, 0xff
            //   83c001               | add                 eax, 1
            //   25fe010000           | and                 eax, 0x1fe
            //   f20f593c85109c4100     | mulsd    xmm7, qword ptr [eax*4 + 0x419c10]
            //   660f122c85109c4100     | movlpd    xmm5, qword ptr [eax*4 + 0x419c10]

        $sequence_7 = { 3bbdc8fdffff 89bddcfdffff 8b3d???????? 0f82c6fdffff 8bc3 }
            // n = 5, score = 100
            //   3bbdc8fdffff         | cmp                 edi, dword ptr [ebp - 0x238]
            //   89bddcfdffff         | mov                 dword ptr [ebp - 0x224], edi
            //   8b3d????????         |                     
            //   0f82c6fdffff         | jb                  0xfffffdcc
            //   8bc3                 | mov                 eax, ebx

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