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 (20230808 | Detects win.shapeshift.)
rule win_shapeshift_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-12-06"
        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 = "20231130"
        malpedia_hash = "fc8a0e9f343f6d6ded9e7df1a64dac0cc68d7351"
        malpedia_version = "20230808"
        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???????? 33d2 b93b110f00 f7f1 68???????? 8915???????? e8???????? }
            // n = 7, score = 100
            //   e8????????           |                     
            //   33d2                 | xor                 edx, edx
            //   b93b110f00           | mov                 ecx, 0xf113b
            //   f7f1                 | div                 ecx
            //   68????????           |                     
            //   8915????????         |                     
            //   e8????????           |                     

        $sequence_1 = { 6a00 6a07 68000000c0 51 ff15???????? }
            // n = 5, score = 100
            //   6a00                 | push                0
            //   6a07                 | push                7
            //   68000000c0           | push                0xc0000000
            //   51                   | push                ecx
            //   ff15????????         |                     

        $sequence_2 = { 8b45fc 817848d0f74100 7409 ff7048 e8???????? }
            // n = 5, score = 100
            //   8b45fc               | mov                 eax, dword ptr [ebp - 4]
            //   817848d0f74100       | cmp                 dword ptr [eax + 0x48], 0x41f7d0
            //   7409                 | je                  0xb
            //   ff7048               | push                dword ptr [eax + 0x48]
            //   e8????????           |                     

        $sequence_3 = { 394508 7c1f 3934bd38054200 7531 e8???????? 8904bd38054200 }
            // n = 6, score = 100
            //   394508               | cmp                 dword ptr [ebp + 8], eax
            //   7c1f                 | jl                  0x21
            //   3934bd38054200       | cmp                 dword ptr [edi*4 + 0x420538], esi
            //   7531                 | jne                 0x33
            //   e8????????           |                     
            //   8904bd38054200       | mov                 dword ptr [edi*4 + 0x420538], eax

        $sequence_4 = { 6a00 57 e8???????? 8b5dfc 83c410 8b35???????? 53 }
            // n = 7, score = 100
            //   6a00                 | push                0
            //   57                   | push                edi
            //   e8????????           |                     
            //   8b5dfc               | mov                 ebx, dword ptr [ebp - 4]
            //   83c410               | add                 esp, 0x10
            //   8b35????????         |                     
            //   53                   | push                ebx

        $sequence_5 = { 8365fc00 8b049d38054200 8b4de0 f644082801 7515 e8???????? c70009000000 }
            // n = 7, score = 100
            //   8365fc00             | and                 dword ptr [ebp - 4], 0
            //   8b049d38054200       | mov                 eax, dword ptr [ebx*4 + 0x420538]
            //   8b4de0               | mov                 ecx, dword ptr [ebp - 0x20]
            //   f644082801           | test                byte ptr [eax + ecx + 0x28], 1
            //   7515                 | jne                 0x17
            //   e8????????           |                     
            //   c70009000000         | mov                 dword ptr [eax], 9

        $sequence_6 = { c3 3b0d???????? f27502 f2c3 f2e987080000 }
            // n = 5, score = 100
            //   c3                   | ret                 
            //   3b0d????????         |                     
            //   f27502               | bnd jne             5
            //   f2c3                 | bnd ret             
            //   f2e987080000         | bnd jmp             0x88d

        $sequence_7 = { 6a0c 7550 e8???????? 83c404 8bf8 }
            // n = 5, score = 100
            //   6a0c                 | push                0xc
            //   7550                 | jne                 0x52
            //   e8????????           |                     
            //   83c404               | add                 esp, 4
            //   8bf8                 | mov                 edi, eax

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