SYMBOLCOMMON_NAMEaka. SYNONYMS
win.ceeloader (Back to overview)

CEELOADER

Actor(s): UNC2452

VTCollection    

Mandiant characterizes this malware as a downloader and shellcode stager.

References
2022-11-29MandiantDoug Bienstock, Luke Jenkins, Parnian Najafi, Sarah Hawley
Suspected Russian Activity Targeting Government and Business Entities Around the Globe
CEELOADER
Yara Rules
[TLP:WHITE] win_ceeloader_auto (20230808 | Detects win.ceeloader.)
rule win_ceeloader_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-12-06"
        version = "1"
        description = "Detects win.ceeloader."
        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.ceeloader"
        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 = { 3bce 33f6 23c7 0bda 8bde c3 0bd3 }
            // n = 7, score = 100
            //   3bce                 | dec                 eax
            //   33f6                 | mov                 ecx, eax
            //   23c7                 | dec                 eax
            //   0bda                 | lea                 edx, [0xccfef]
            //   8bde                 | inc                 ecx
            //   c3                   | mov                 ebx, 6
            //   0bd3                 | inc                 esp

        $sequence_1 = { 448b15???????? 4489c6 4431de 4589c3 4101f3 44891d???????? 4589c3 }
            // n = 7, score = 100
            //   448b15????????       |                     
            //   4489c6               | mov                 eax, dword ptr [esp + 0x4c]
            //   4431de               | inc                 esp
            //   4589c3               | mov                 edx, dword ptr [esp + 0x40]
            //   4101f3               | mov                 dword ptr [esp + 0x48], eax
            //   44891d????????       |                     
            //   4589c3               | inc                 esp

        $sequence_2 = { 664589c2 664489942490030000 440fbe05???????? 4183f074 664589c2 664489942492030000 440fbe05???????? }
            // n = 7, score = 100
            //   664589c2             | inc                 eax
            //   664489942490030000     | dec    eax
            //   440fbe05????????     |                     
            //   4183f074             | cmp                 dword ptr [ebp - 0x30], ecx
            //   664589c2             | jne                 0x7f6
            //   664489942492030000     | dec    eax
            //   440fbe05????????     |                     

        $sequence_3 = { 0bda 8bde 0bd3 3bce 23f3 7a04 0bda }
            // n = 7, score = 100
            //   0bda                 | inc                 ebp
            //   8bde                 | xor                 eax, eax
            //   0bd3                 | inc                 ebp
            //   3bce                 | xor                 edx, edx
            //   23f3                 | inc                 ebp
            //   7a04                 | mov                 ecx, edx
            //   0bda                 | dec                 eax

        $sequence_4 = { 8b842420010000 3b84241c010000 0f8433000000 8b842420010000 898424dc000000 e8???????? 8b8c241c010000 }
            // n = 7, score = 100
            //   8b842420010000       | jp                  0xfd1
            //   3b84241c010000       | and                 ecx, edx
            //   0f8433000000         | or                  ebx, edx
            //   8b842420010000       | mov                 ebx, esi
            //   898424dc000000       | or                  edx, ebx
            //   e8????????           |                     
            //   8b8c241c010000       | cmp                 ecx, esi

        $sequence_5 = { 3bdd 23fd 0bda 8bde 0bd3 3bce 5a }
            // n = 7, score = 100
            //   3bdd                 | mov                 dword ptr [esp + 0x54], eax
            //   23fd                 | dec                 eax
            //   0bda                 | mov                 ecx, dword ptr [esp + 0x768]
            //   8bde                 | dec                 eax
            //   0bd3                 | add                 ecx, eax
            //   3bce                 | inc                 esp
            //   5a                   | mov                 eax, dword ptr [esp + 0x774]

        $sequence_6 = { 741d 4885ff c6435401 488d0d53880800 480f45cf 48894b48 e8???????? }
            // n = 7, score = 100
            //   741d                 | inc                 esp
            //   4885ff               | mov                 dword ptr [esp + 0x134], ebx
            //   c6435401             | add                 esi, dword ptr [esp + 0x260]
            //   488d0d53880800       | mov                 dword ptr [esp + 0x25c], esi
            //   480f45cf             | mov                 esi, dword ptr [esp + 0x25c]
            //   48894b48             | shr                 esi, 6
            //   e8????????           |                     

        $sequence_7 = { 88542433 0fbe05???????? 83f064 88c2 88542434 0fbe05???????? 83f076 }
            // n = 7, score = 100
            //   88542433             | mov                 ebx, esi
            //   0fbe05????????       |                     
            //   83f064               | or                  edx, ebx
            //   88c2                 | or                  edx, ebx
            //   88542434             | cmp                 ecx, esi
            //   0fbe05????????       |                     
            //   83f076               | jp                  0x46

        $sequence_8 = { 4489a42464020000 4403bc2464020000 4489bc2460020000 448bbc2460020000 4589dc 4181e45d386101 4489a4245c020000 }
            // n = 7, score = 100
            //   4489a42464020000     | mov                 byte ptr [esp + 0xa4], cl
            //   4403bc2464020000     | xor                 eax, 0x61
            //   4489bc2460020000     | mov                 cl, al
            //   448bbc2460020000     | mov                 byte ptr [esp + 0xa5], cl
            //   4589dc               | mov                 byte ptr [esp + 0xa4], cl
            //   4181e45d386101       | xor                 eax, 0x73
            //   4489a4245c020000     | mov                 cl, al

        $sequence_9 = { 41c1e204 4489942448050000 44038c2448050000 44898c2444050000 448b8c2444050000 4189d2 4181e235913d02 }
            // n = 7, score = 100
            //   41c1e204             | mov                 eax, dword ptr [esp + 0x44]
            //   4489942448050000     | inc                 esp
            //   44038c2448050000     | mov                 edx, dword ptr [esp + 0x4c]
            //   44898c2444050000     | dec                 eax
            //   448b8c2444050000     | mov                 dword ptr [esp + 0x20], 0
            //   4189d2               | mov                 dword ptr [esp + 0x48], eax
            //   4181e235913d02       | mov                 dword ptr [esp + 0x44], esi

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