SYMBOLCOMMON_NAMEaka. SYNONYMS
win.polyglotduke (Back to overview)

PolyglotDuke

Actor(s): APT29

VTCollection    

There is no description at this point.

References
2020-03-26 ⋅ VMWare Carbon Black ⋅ Scott Knight
The Dukes of Moscow
Cobalt Strike LiteDuke MiniDuke OnionDuke PolyglotDuke PowerDuke
2020-02-13 ⋅ Qianxin ⋅ Qi Anxin Threat Intelligence Center
APT Report 2019
Chrysaor Exodus Dacls VPNFilter DNSRat Griffon KopiLuwak More_eggs SQLRat AppleJeus BONDUPDATER Agent.BTZ Anchor AndroMut AppleJeus BOOSTWRITE Brambul Carbanak Cobalt Strike Dacls DistTrack DNSpionage Dtrack ELECTRICFISH FlawedAmmyy FlawedGrace Get2 Grateful POS HOPLIGHT Imminent Monitor RAT jason Joanap KerrDown KEYMARBLE Lambert LightNeuron LoJax MiniDuke PolyglotDuke PowerRatankba Rising Sun SDBbot ServHelper Snatch Stuxnet TinyMet tRat TrickBot Volgmer X-Agent Zebrocy
2020-01-01 ⋅ Secureworks ⋅ SecureWorks
IRON HEMLOCK
FatDuke MiniDuke OnionDuke PolyglotDuke APT29
2019-10-17 ⋅ ESET Research ⋅ ESET Research
Operation Ghost: The Dukes aren’t back – they never left
PolyglotDuke
Yara Rules
[TLP:WHITE] win_polyglotduke_auto (20260917 | Detects win.polyglotduke.)
rule win_polyglotduke_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.polyglotduke."
        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.polyglotduke"
        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 = { 4157 4883ec20 488bea 488bd9 4885d2 0f84f2000000 b901000000 }
            // n = 7, score = 100
            //   4157                 | mov                 ecx, dword ptr [esp + 0x58]
            //   4883ec20             | dec                 eax
            //   488bea               | lea                 eax, [esp + 0x48]
            //   488bd9               | inc                 ebp
            //   4885d2               | xor                 ecx, ecx
            //   0f84f2000000         | dec                 eax
            //   b901000000           | mov                 dword ptr [esp + 0x28], eax

        $sequence_1 = { b9e9fd0000 44897c2428 4c897c2420 ff15???????? 4863d8 85c0 7505 }
            // n = 7, score = 100
            //   b9e9fd0000           | dec                 eax
            //   44897c2428           | lea                 ecx, [0xe3c6]
            //   4c897c2420           | dec                 eax
            //   ff15????????         |                     
            //   4863d8               | mov                 dword ptr [ebp], eax
            //   85c0                 | dec                 eax
            //   7505                 | lea                 ecx, [0xe3d2]

        $sequence_2 = { 448b442440 488d15a0fc0000 488d4c2450 ff15???????? 8d550b 488d0ddff80000 e8???????? }
            // n = 7, score = 100
            //   448b442440           | mov                 dword ptr [eax + 0x10], ebx
            //   488d15a0fc0000       | inc                 sp
            //   488d4c2450           | mov                 dword ptr [eax + 0x20], ecx
            //   ff15????????         |                     
            //   8d550b               | push                ebp
            //   488d0ddff80000       | push                esi
            //   e8????????           |                     

        $sequence_3 = { e8???????? ebac 488d4c2450 ff15???????? 8d440002 4863c8 }
            // n = 6, score = 100
            //   e8????????           |                     
            //   ebac                 | and                 dword ptr [esp + 0x20], 0
            //   488d4c2450           | dec                 esp
            //   ff15????????         |                     
            //   8d440002             | lea                 ecx, [esp + 0x50]
            //   4863c8               | test                eax, eax

        $sequence_4 = { 8944242c ff15???????? 488d0d8e040100 e8???????? 488bc8 4c8bf0 }
            // n = 6, score = 100
            //   8944242c             | inc                 eax
            //   ff15????????         |                     
            //   488d0d8e040100       | test                bh, bh
            //   e8????????           |                     
            //   488bc8               | jne                 0x5ee
            //   4c8bf0               | inc                 eax

        $sequence_5 = { 32c0 e9???????? 488d158af10000 e8???????? be01000000 }
            // n = 5, score = 100
            //   32c0                 | dec                 eax
            //   e9????????           |                     
            //   488d158af10000       | mov                 ebx, eax
            //   e8????????           |                     
            //   be01000000           | dec                 esp

        $sequence_6 = { e8???????? 33c9 ff15???????? 488d0ddb8f0000 ff15???????? 833d????????00 750a }
            // n = 7, score = 100
            //   e8????????           |                     
            //   33c9                 | dec                 ecx
            //   ff15????????         |                     
            //   488d0ddb8f0000       | mov                 esi, dword ptr [ebx + 0x20]
            //   ff15????????         |                     
            //   833d????????00       |                     
            //   750a                 | dec                 ecx

        $sequence_7 = { 4103d0 c1fa06 8bc2 c1e81f 03d0 6bd247 442bc2 }
            // n = 7, score = 100
            //   4103d0               | dec                 eax
            //   c1fa06               | mov                 edx, eax
            //   8bc2                 | dec                 eax
            //   c1e81f               | mov                 edi, eax
            //   03d0                 | dec                 eax
            //   6bd247               | mov                 ecx, ebx
            //   442bc2               | dec                 eax

        $sequence_8 = { 488d9550020000 458bc5 498bcc ff15???????? 85c0 7476 c644244001 }
            // n = 7, score = 100
            //   488d9550020000       | test                edi, edi
            //   458bc5               | je                  0x656
            //   498bcc               | inc                 esp
            //   ff15????????         |                     
            //   85c0                 | movzx               eax, word ptr [esp + 0x98]
            //   7476                 | inc                 ecx
            //   c644244001           | lea                 ecx, [eax + edx]

        $sequence_9 = { e8???????? 85db 7902 f7db 4863cb 48b88fe3388ee3388ee3 48f7e1 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   85db                 | dec                 ebp
            //   7902                 | cmp                 ecx, edx
            //   f7db                 | jl                  0x11f
            //   4863cb               | movzx               eax, al
            //   48b88fe3388ee3388ee3     | or    ax, dx
            //   48f7e1               | inc                 bx

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