SYMBOLCOMMON_NAMEaka. SYNONYMS
win.kugelblitz (Back to overview)

KugelBlitz

Actor(s): HAZY TIGER

VTCollection    

According to Threatray, KugelBlitz is a shellcode loader discovered in late 2024. It loads shellcode into memory from a file specified via command line. If no file is specified, it defaults to run.bin.

References
2025-06-04 ⋅ Threatray ⋅ Abdallah Elshinbary, Jonas Wagner, Konstantin Klinger, Nick Attfield
The Bitter End: Unraveling Eight Years of Espionage Antics – Part Two
AlmondRAT AlmondRAT Artra Downloader BDarkRAT Havoc KiwiStealer KugelBlitz MiyaRAT ORPCBackdoor WmRAT ZxxZ
Yara Rules
[TLP:WHITE] win_kugelblitz_auto (20260917 | Detects win.kugelblitz.)
rule win_kugelblitz_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.kugelblitz."
        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.kugelblitz"
        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 = { 488d4c2470 480f47542448 e8???????? 488b442470 }
            // n = 4, score = 100
            //   488d4c2470           | mov                 dword ptr [ebx + 0x40], eax
            //   480f47542448         | dec                 eax
            //   e8????????           |                     
            //   488b442470           | mov                 eax, dword ptr [esp + 0x40]

        $sequence_1 = { 84c0 750a bb04000000 e9???????? 488b06 48634004 }
            // n = 6, score = 100
            //   84c0                 | sub                 esp, 0x20
            //   750a                 | mov                 edi, edx
            //   bb04000000           | dec                 eax
            //   e9????????           |                     
            //   488b06               | mov                 ebx, ecx
            //   48634004             | dec                 eax

        $sequence_2 = { b902000000 cd29 488d0d76400000 e8???????? 488b442438 }
            // n = 5, score = 100
            //   b902000000           | add                 ecx, 0x10
            //   cd29                 | dec                 eax
            //   488d0d76400000       | mov                 ecx, dword ptr [ebp + 0x80]
            //   e8????????           |                     
            //   488b442438           | dec                 eax

        $sequence_3 = { ff15???????? bf01000000 eb40 488d4d80 }
            // n = 4, score = 100
            //   ff15????????         |                     
            //   bf01000000           | cmp                 edx, 7
            //   eb40                 | ja                  0x442
            //   488d4d80             | dec                 eax

        $sequence_4 = { 488d4808 0f1102 ff15???????? 488d0557330000 }
            // n = 4, score = 100
            //   488d4808             | mov                 eax, dword ptr [esi]
            //   0f1102               | dec                 eax
            //   ff15????????         |                     
            //   488d0557330000       | arpl                word ptr [eax + 4], ax

        $sequence_5 = { 4d8bc6 498bd7 488b4c3148 ff15???????? 493bc6 752c 660f1f440000 }
            // n = 7, score = 100
            //   4d8bc6               | arpl                word ptr [eax + 4], cx
            //   498bd7               | lea                 edx, [ecx - 0xb0]
            //   488b4c3148           | mov                 dword ptr [ecx + edi - 4], edx
            //   ff15????????         |                     
            //   493bc6               | dec                 eax
            //   752c                 | mov                 dword ptr [esp + 0x40], ebx
            //   660f1f440000         | dec                 eax

        $sequence_6 = { 48895c2408 57 4883ec20 488d1d07190000 488d3d00190000 }
            // n = 5, score = 100
            //   48895c2408           | mov                 eax, ebx
            //   57                   | dec                 eax
            //   4883ec20             | lea                 eax, [0x1fa5]
            //   488d1d07190000       | dec                 eax
            //   488d3d00190000       | mov                 dword ptr [ebx], eax

        $sequence_7 = { 83e001 85c0 7415 836520fe 488b4d28 4881c1b0000000 }
            // n = 6, score = 100
            //   83e001               | mov                 dword ptr [esp + 0x28], ecx
            //   85c0                 | xor                 ebp, ebp
            //   7415                 | mov                 dword ptr [esp + 0x20], ebp
            //   836520fe             | dec                 eax
            //   488b4d28             | mov                 dword ptr [esp + eax + 0x20], ecx
            //   4881c1b0000000       | mov                 eax, 8

        $sequence_8 = { 488d15cc130000 488d0dad130000 e8???????? c705????????02000000 eb08 40b701 40887c2420 }
            // n = 7, score = 100
            //   488d15cc130000       | lea                 eax, [ebp - 0x28]
            //   488d0dad130000       | jne                 0x1dc
            //   e8????????           |                     
            //   c705????????02000000     |     
            //   eb08                 | dec                 eax
            //   40b701               | cmp                 dword ptr [ebp - 0x10], 0xf
            //   40887c2420           | jne                 0x1e7

        $sequence_9 = { eb51 48ffcf ebd3 488b06 }
            // n = 4, score = 100
            //   eb51                 | lea                 edi, [0x192c]
            //   48ffcf               | jmp                 0x373
            //   ebd3                 | dec                 eax
            //   488b06               | mov                 eax, dword ptr [ebx]

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