SYMBOLCOMMON_NAMEaka. SYNONYMS
win.mechanical (Back to overview)

MECHANICAL

aka: GoldStamp

Actor(s): Kimsuky

VTCollection    

There is no description at this point.

References
2020-10-27US-CERTUS-CERT
Alert (AA20-301A): North Korean Advanced Persistent Threat Focus: Kimsuky
BabyShark GREASE MECHANICAL Meterpreter Kimsuky
2020-03-04CrowdStrikeCrowdStrike
2020 CrowdStrike Global Threat Report
MESSAGETAP More_eggs 8.t Dropper Anchor BabyShark BadNews Clop Cobalt Strike CobInt Cobra Carbon System Cutwail DanaBot Dharma DoppelDridex DoppelPaymer Dridex Emotet FlawedAmmyy FriedEx Gandcrab Get2 IcedID ISFB KerrDown LightNeuron LockerGoga Maze MECHANICAL Necurs Nokki Outlook Backdoor Phobos Predator The Thief QakBot REvil RobinHood Ryuk SDBbot Skipper SmokeLoader TerraRecon TerraStealer TerraTV TinyLoader TrickBot Vidar Winnti ANTHROPOID SPIDER APT23 APT31 APT39 APT40 BlackTech BuhTrap Charming Kitten CLOCKWORK SPIDER DOPPEL SPIDER FIN7 Gamaredon Group GOBLIN PANDA MONTY SPIDER MUSTANG PANDA NARWHAL SPIDER NOCTURNAL SPIDER PINCHY SPIDER SALTY SPIDER SCULLY SPIDER SMOKY SPIDER Thrip VENOM SPIDER VICEROY TIGER
2018-12-05NetScoutASERT Team
STOLEN PENCIL Campaign Targets Academia
GREASE MECHANICAL
Yara Rules
[TLP:WHITE] win_mechanical_auto (20260504 | Detects win.mechanical.)
rule win_mechanical_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.mechanical."
        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.mechanical"
        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 = { 83c0df 83f85c 0f8778010000 4898 0fb68428984c0100 8b8c85c44b0100 }
            // n = 6, score = 200
            //   83c0df               | inc                 esp
            //   83f85c               | mov                 byte ptr [esp + 0x4360], ah
            //   0f8778010000         | je                  0x1dc
            //   4898                 | dec                 eax
            //   0fb68428984c0100     | lea                 edx, [esp + 0x4470]
            //   8b8c85c44b0100       | inc                 ebp

        $sequence_1 = { 488d15e768feff 48898c24b0000000 eb54 448b742448 bdffffffff 896c2444 ebb0 }
            // n = 7, score = 200
            //   488d15e768feff       | dec                 eax
            //   48898c24b0000000     | lea                 edx, [0xfffe68e7]
            //   eb54                 | dec                 eax
            //   448b742448           | mov                 dword ptr [esp + 0xb0], ecx
            //   bdffffffff           | jmp                 0x56
            //   896c2444             | inc                 esp
            //   ebb0                 | mov                 esi, dword ptr [esp + 0x48]

        $sequence_2 = { 03c7 3bca 72ed 5f }
            // n = 4, score = 200
            //   03c7                 | add                 eax, edi
            //   3bca                 | cmp                 ecx, edx
            //   72ed                 | jb                  0xffffffef
            //   5f                   | pop                 edi

        $sequence_3 = { 4585c0 0f84d0010000 488d9424103e0000 458bc8 }
            // n = 4, score = 200
            //   4585c0               | mov                 ecx, eax
            //   0f84d0010000         | nop                 
            //   488d9424103e0000     | movzx               eax, byte ptr [edx]
            //   458bc8               | add                 eax, -0x21

        $sequence_4 = { 03c1 1bc9 0bc1 59 e9???????? e8???????? ff742404 }
            // n = 7, score = 200
            //   03c1                 | add                 eax, ecx
            //   1bc9                 | sbb                 ecx, ecx
            //   0bc1                 | or                  eax, ecx
            //   59                   | pop                 ecx
            //   e9????????           |                     
            //   e8????????           |                     
            //   ff742404             | push                dword ptr [esp + 4]

        $sequence_5 = { 48894716 8b05???????? 89471e e8???????? }
            // n = 4, score = 200
            //   48894716             | mov                 ebp, 0xffffffff
            //   8b05????????         |                     
            //   89471e               | mov                 dword ptr [esp + 0x44], ebp
            //   e8????????           |                     

        $sequence_6 = { c6023c eb35 c60228 eb30 c60224 eb2b }
            // n = 6, score = 200
            //   c6023c               | inc                 ebp
            //   eb35                 | test                eax, eax
            //   c60228               | je                  0x1d9
            //   eb30                 | dec                 eax
            //   c60224               | lea                 edx, [esp + 0x3e10]
            //   eb2b                 | inc                 ebp

        $sequence_7 = { 03ce c6840c3801000000 8d8424a05c0000 33f6 }
            // n = 4, score = 200
            //   03ce                 | add                 ecx, esi
            //   c6840c3801000000     | mov                 byte ptr [esp + ecx + 0x138], 0
            //   8d8424a05c0000       | lea                 eax, [esp + 0x5ca0]
            //   33f6                 | xor                 esi, esi

        $sequence_8 = { 488d942480120000 458bc8 66666690 66666690 0fb602 458bc4 }
            // n = 6, score = 200
            //   488d942480120000     | cmp                 eax, 0x5c
            //   458bc8               | ja                  0x17e
            //   66666690             | dec                 eax
            //   66666690             | cwde                
            //   0fb602               | movzx               eax, byte ptr [eax + ebp + 0x14c98]
            //   458bc4               | mov                 ecx, dword ptr [ebp + eax*4 + 0x14bc4]

        $sequence_9 = { 00686c 42 0023 d18a0688078a }
            // n = 4, score = 200
            //   00686c               | add                 byte ptr [eax + 0x6c], ch
            //   42                   | inc                 edx
            //   0023                 | add                 byte ptr [ebx], ah
            //   d18a0688078a         | ror                 dword ptr [edx - 0x75f877fa], 1

        $sequence_10 = { 030495c0e54200 eb05 b8???????? f6400420 }
            // n = 4, score = 200
            //   030495c0e54200       | add                 eax, dword ptr [edx*4 + 0x42e5c0]
            //   eb05                 | jmp                 7
            //   b8????????           |                     
            //   f6400420             | test                byte ptr [eax + 4], 0x20

        $sequence_11 = { 033485c0e54200 8b45e4 8b00 8906 }
            // n = 4, score = 200
            //   033485c0e54200       | add                 esi, dword ptr [eax*4 + 0x42e5c0]
            //   8b45e4               | mov                 eax, dword ptr [ebp - 0x1c]
            //   8b00                 | mov                 eax, dword ptr [eax]
            //   8906                 | mov                 dword ptr [esi], eax

        $sequence_12 = { 0f84d6010000 488d942470440000 458bc8 66666690 0fb602 }
            // n = 5, score = 200
            //   0f84d6010000         | dec                 eax
            //   488d942470440000     | lea                 ecx, [esp + 0x4361]
            //   458bc8               | xor                 edx, edx
            //   66666690             | inc                 ecx
            //   0fb602               | mov                 eax, 0x103

        $sequence_13 = { 8b442430 488d8c2461430000 33d2 41b803010000 4488a42460430000 488905???????? e8???????? }
            // n = 7, score = 200
            //   8b442430             | jmp                 0xffffffb2
            //   488d8c2461430000     | dec                 eax
            //   33d2                 | mov                 dword ptr [edi + 0x16], eax
            //   41b803010000         | mov                 dword ptr [edi + 0x1e], eax
            //   4488a42460430000     | mov                 eax, dword ptr [esp + 0x30]
            //   488905????????       |                     
            //   e8????????           |                     

        $sequence_14 = { 033485c0e54200 c745e401000000 33db 395e08 }
            // n = 4, score = 200
            //   033485c0e54200       | add                 esi, dword ptr [eax*4 + 0x42e5c0]
            //   c745e401000000       | mov                 dword ptr [ebp - 0x1c], 1
            //   33db                 | xor                 ebx, ebx
            //   395e08               | cmp                 dword ptr [esi + 8], ebx

        $sequence_15 = { 0401 3cbe 8844240b 76e2 }
            // n = 4, score = 200
            //   0401                 | add                 al, 1
            //   3cbe                 | cmp                 al, 0xbe
            //   8844240b             | mov                 byte ptr [esp + 0xb], al
            //   76e2                 | jbe                 0xffffffe4

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