SYMBOLCOMMON_NAMEaka. SYNONYMS
win.cheesetray (Back to overview)

CHEESETRAY

aka: CROWDEDFLOUNDER

Actor(s): Lazarus Group


CHEESETRAY is a sophisticated proxy-aware backdoor that can operate in both active and passive mode depending on the passed command-line parameters. The backdoor is capable of enumerating files and processes, enumerating drivers, enumerating remote desktop sessions, uploading and downloading files, creating and terminating processes, deleting files, creating a reverse shell, acting as a proxy server, and hijacking processes among its other functionality. The backdoor communicates with its C&C server using a custom binary protocol over TCP with port specified as a command-line parameter.

References
2020-02-25SentinelOneJim Walter
@online{walter:20200225:dprk:735f095, author = {Jim Walter}, title = {{DPRK Hidden Cobra Update: North Korean Malicious Cyber Activity}}, date = {2020-02-25}, organization = {SentinelOne}, url = {https://labs.sentinelone.com/dprk-hidden-cobra-update-north-korean-malicious-cyber-activity/}, language = {English}, urldate = {2020-02-27} } DPRK Hidden Cobra Update: North Korean Malicious Cyber Activity
ARTFULPIE BISTROMATH BUFFETLINE CHEESETRAY HOPLIGHT HOTCROISSANT SLICKSHOES
2020-02-14US-CERTUS-CERT
@online{uscert:20200214:malware:315814d, author = {US-CERT}, title = {{Malware Analysis Report (AR20-045C)}}, date = {2020-02-14}, organization = {US-CERT}, url = {https://www.us-cert.gov/ncas/analysis-reports/ar20-045c}, language = {English}, urldate = {2020-02-14} } Malware Analysis Report (AR20-045C)
CHEESETRAY
2018FireEyeFireEye
@techreport{fireeye:2018:apt38:c81b87d, author = {FireEye}, title = {{APT38}}, date = {2018}, institution = {FireEye}, url = {https://www.fireeye.com/content/dam/fireeye-www/current-threats/pdfs/pf/apt/rpt-apt38-2018.pdf}, language = {English}, urldate = {2020-01-07} } APT38
CHEESETRAY CLEANTOAD NACHOCHEESE
Yara Rules
[TLP:WHITE] win_cheesetray_auto (20230715 | Detects win.cheesetray.)
rule win_cheesetray_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-07-11"
        version = "1"
        description = "Detects win.cheesetray."
        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.cheesetray"
        malpedia_rule_date = "20230705"
        malpedia_hash = "42d0574f4405bd7d2b154d321d345acb18834a41"
        malpedia_version = "20230715"
        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 = { 8d442410 50 8d4c2444 68???????? 51 e8???????? 83c40c }
            // n = 7, score = 200
            //   8d442410             | lea                 eax, [esp + 0x10]
            //   50                   | push                eax
            //   8d4c2444             | lea                 ecx, [esp + 0x44]
            //   68????????           |                     
            //   51                   | push                ecx
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc

        $sequence_1 = { 7e1c 33c0 40 66837c441000 }
            // n = 4, score = 200
            //   7e1c                 | jle                 0x1e
            //   33c0                 | xor                 eax, eax
            //   40                   | inc                 eax
            //   66837c441000         | cmp                 word ptr [esp + eax*2 + 0x10], 0

        $sequence_2 = { e8???????? 83c408 85c0 7508 c744244000000000 33ff 8b1d???????? }
            // n = 7, score = 200
            //   e8????????           |                     
            //   83c408               | add                 esp, 8
            //   85c0                 | test                eax, eax
            //   7508                 | jne                 0xa
            //   c744244000000000     | mov                 dword ptr [esp + 0x40], 0
            //   33ff                 | xor                 edi, edi
            //   8b1d????????         |                     

        $sequence_3 = { 5e 5d c3 e8???????? 8b10 52 e8???????? }
            // n = 7, score = 200
            //   5e                   | pop                 esi
            //   5d                   | pop                 ebp
            //   c3                   | ret                 
            //   e8????????           |                     
            //   8b10                 | mov                 edx, dword ptr [eax]
            //   52                   | push                edx
            //   e8????????           |                     

        $sequence_4 = { e8???????? ebda 8bc3 c1f805 8d3c8580ce4400 8bf3 83e61f }
            // n = 7, score = 200
            //   e8????????           |                     
            //   ebda                 | jmp                 0xffffffdc
            //   8bc3                 | mov                 eax, ebx
            //   c1f805               | sar                 eax, 5
            //   8d3c8580ce4400       | lea                 edi, [eax*4 + 0x44ce80]
            //   8bf3                 | mov                 esi, ebx
            //   83e61f               | and                 esi, 0x1f

        $sequence_5 = { 7702 8bf1 397dfc 7411 8b4b24 56 }
            // n = 6, score = 200
            //   7702                 | ja                  4
            //   8bf1                 | mov                 esi, ecx
            //   397dfc               | cmp                 dword ptr [ebp - 4], edi
            //   7411                 | je                  0x13
            //   8b4b24               | mov                 ecx, dword ptr [ebx + 0x24]
            //   56                   | push                esi

        $sequence_6 = { 6a08 6a1f 6a08 51 57 e8???????? }
            // n = 6, score = 200
            //   6a08                 | push                8
            //   6a1f                 | push                0x1f
            //   6a08                 | push                8
            //   51                   | push                ecx
            //   57                   | push                edi
            //   e8????????           |                     

        $sequence_7 = { ffd6 3d9f000000 7c02 33c0 889c0548fdffff 33c0 66391d???????? }
            // n = 7, score = 200
            //   ffd6                 | call                esi
            //   3d9f000000           | cmp                 eax, 0x9f
            //   7c02                 | jl                  4
            //   33c0                 | xor                 eax, eax
            //   889c0548fdffff       | mov                 byte ptr [ebp + eax - 0x2b8], bl
            //   33c0                 | xor                 eax, eax
            //   66391d????????       |                     

        $sequence_8 = { 85c0 7448 6a14 6a00 8d4c243c 51 }
            // n = 6, score = 200
            //   85c0                 | test                eax, eax
            //   7448                 | je                  0x4a
            //   6a14                 | push                0x14
            //   6a00                 | push                0
            //   8d4c243c             | lea                 ecx, [esp + 0x3c]
            //   51                   | push                ecx

        $sequence_9 = { 0d00800000 83faff 7e04 8bc2 eb22 68b6010000 }
            // n = 6, score = 200
            //   0d00800000           | or                  eax, 0x8000
            //   83faff               | cmp                 edx, -1
            //   7e04                 | jle                 6
            //   8bc2                 | mov                 eax, edx
            //   eb22                 | jmp                 0x24
            //   68b6010000           | push                0x1b6

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