SYMBOLCOMMON_NAMEaka. SYNONYMS
win.sodamaster (Back to overview)

SodaMaster

aka: dfls, HEAVYPOT, DelfsCake

Actor(s): Stone Panda


This is a RAT that is usually loaded with one or more shellcode and/or reflective DLL injection techniques. The RAT uses RC4 or a hardcoded RSA key for traffic encryption/decryption. Its communication can either happen via a raw TCP socket or a HTTP POST request. Depending on the version, the RAT may remotely execute DLLs or shellcode.

References
2022-06-23SecureworksCounter Threat Unit ResearchTeam
@online{researchteam:20220623:bronze:8bccd74, author = {Counter Threat Unit ResearchTeam}, title = {{BRONZE STARLIGHT Ransomware Operations Use HUI Loader}}, date = {2022-06-23}, organization = {Secureworks}, url = {https://www.secureworks.com/research/bronze-starlight-ransomware-operations-use-hui-loader}, language = {English}, urldate = {2022-09-20} } BRONZE STARLIGHT Ransomware Operations Use HUI Loader
ATOMSILO Cobalt Strike HUI Loader LockFile NightSky Pandora PlugX Quasar RAT Rook SodaMaster
2022-04-05SymantecThreat Hunter Team
@online{team:20220405:cicada:67f6b8c, author = {Threat Hunter Team}, title = {{Cicada: Chinese APT Group Widens Targeting in Recent Espionage Activity}}, date = {2022-04-05}, organization = {Symantec}, url = {https://symantec-enterprise-blogs.security.com/blogs/threat-intelligence/cicada-apt10-china-ngo-government-attacks}, language = {English}, urldate = {2022-04-07} } Cicada: Chinese APT Group Widens Targeting in Recent Espionage Activity
MimiKatz SodaMaster
2022-04-05Bleeping ComputerIonut Ilascu
@online{ilascu:20220405:chinese:1774637, author = {Ionut Ilascu}, title = {{Chinese hackers abuse VLC Media Player to launch malware loader}}, date = {2022-04-05}, organization = {Bleeping Computer}, url = {https://www.bleepingcomputer.com/news/security/chinese-hackers-abuse-vlc-media-player-to-launch-malware-loader/}, language = {English}, urldate = {2022-04-07} } Chinese hackers abuse VLC Media Player to launch malware loader
SodaMaster
2022-01-27JSAC 2021Hajime Yanagishita, Kiyotaka Tamada, You Nakatsuru, Suguru Ishimaru
@techreport{yanagishita:20220127:what:3c59dc9, author = {Hajime Yanagishita and Kiyotaka Tamada and You Nakatsuru and Suguru Ishimaru}, title = {{What We Can Do against the Chaotic A41APT Campaign}}, date = {2022-01-27}, institution = {JSAC 2021}, url = {https://jsac.jpcert.or.jp/archive/2022/pdf/JSAC2022_9_yanagishita-tamada-nakatsuru-ishimaru_en.pdf}, language = {English}, urldate = {2022-05-17} } What We Can Do against the Chaotic A41APT Campaign
CHINACHOPPER Cobalt Strike HUI Loader SodaMaster
2021-04-27KasperskyGReAT
@online{great:20210427:trends:e1c92a3, author = {GReAT}, title = {{APT trends report Q1 2021}}, date = {2021-04-27}, organization = {Kaspersky}, url = {https://securelist.com/apt-trends-report-q1-2021/101967/}, language = {English}, urldate = {2021-04-29} } APT trends report Q1 2021
PAS Artra Downloader BadNews Bozok DILLJUICE Kazuar Quasar RAT SodaMaster
2021-02-24Yusuke Niwa, Motohiko Sato, Hajime Yanagishita, Charles Li, Suguru Ishimaru
@techreport{niwa:20210224:a41apt:d20a784, author = {Yusuke Niwa and Motohiko Sato and Hajime Yanagishita and Charles Li and Suguru Ishimaru}, title = {{A41APT case - Analysis of the Stealth APT Campaign Threatening Japan}}, date = {2021-02-24}, institution = {}, url = {https://jsac.jpcert.or.jp/archive/2021/pdf/JSAC2021_202_niwa-yanagishita_en.pdf}, language = {English}, urldate = {2021-02-26} } A41APT case - Analysis of the Stealth APT Campaign Threatening Japan
SodaMaster
Yara Rules
[TLP:WHITE] win_sodamaster_auto (20230125 | Detects win.sodamaster.)
rule win_sodamaster_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-01-25"
        version = "1"
        description = "Detects win.sodamaster."
        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.sodamaster"
        malpedia_rule_date = "20230124"
        malpedia_hash = "2ee0eebba83dce3d019a90519f2f972c0fcf9686"
        malpedia_version = "20230125"
        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 = { 75f9 2bc1 8d8df0efffff 51 8bc8 e8???????? 8b35???????? }
            // n = 7, score = 100
            //   75f9                 | jne                 0xfffffffb
            //   2bc1                 | sub                 eax, ecx
            //   8d8df0efffff         | lea                 ecx, [ebp - 0x1010]
            //   51                   | push                ecx
            //   8bc8                 | mov                 ecx, eax
            //   e8????????           |                     
            //   8b35????????         |                     

        $sequence_1 = { 8d740002 56 e8???????? 56 57 50 }
            // n = 6, score = 100
            //   8d740002             | lea                 esi, [eax + eax + 2]
            //   56                   | push                esi
            //   e8????????           |                     
            //   56                   | push                esi
            //   57                   | push                edi
            //   50                   | push                eax

        $sequence_2 = { 66894df8 894dd8 8bca 57 8955cc }
            // n = 5, score = 100
            //   66894df8             | mov                 word ptr [ebp - 8], cx
            //   894dd8               | mov                 dword ptr [ebp - 0x28], ecx
            //   8bca                 | mov                 ecx, edx
            //   57                   | push                edi
            //   8955cc               | mov                 dword ptr [ebp - 0x34], edx

        $sequence_3 = { 8d45f8 50 8b4508 c745e8636d643d c645ec00 c745d826747970 66c745dc653d }
            // n = 7, score = 100
            //   8d45f8               | lea                 eax, [ebp - 8]
            //   50                   | push                eax
            //   8b4508               | mov                 eax, dword ptr [ebp + 8]
            //   c745e8636d643d       | mov                 dword ptr [ebp - 0x18], 0x3d646d63
            //   c645ec00             | mov                 byte ptr [ebp - 0x14], 0
            //   c745d826747970       | mov                 dword ptr [ebp - 0x28], 0x70797426
            //   66c745dc653d         | mov                 word ptr [ebp - 0x24], 0x3d65

        $sequence_4 = { c3 8b04c5d4ca0010 5d c3 8bff }
            // n = 5, score = 100
            //   c3                   | ret                 
            //   8b04c5d4ca0010       | mov                 eax, dword ptr [eax*8 + 0x1000cad4]
            //   5d                   | pop                 ebp
            //   c3                   | ret                 
            //   8bff                 | mov                 edi, edi

        $sequence_5 = { 85c0 752a c785ecfdffff55006e00 c785f0fdffff6b006e00 c785f4fdffff6f007700 c785f8fdffff6e000000 }
            // n = 6, score = 100
            //   85c0                 | test                eax, eax
            //   752a                 | jne                 0x2c
            //   c785ecfdffff55006e00     | mov    dword ptr [ebp - 0x214], 0x6e0055
            //   c785f0fdffff6b006e00     | mov    dword ptr [ebp - 0x210], 0x6e006b
            //   c785f4fdffff6f007700     | mov    dword ptr [ebp - 0x20c], 0x77006f
            //   c785f8fdffff6e000000     | mov    dword ptr [ebp - 0x208], 0x6e

        $sequence_6 = { 50 e8???????? 83c404 33f6 8903 85ff 7437 }
            // n = 7, score = 100
            //   50                   | push                eax
            //   e8????????           |                     
            //   83c404               | add                 esp, 4
            //   33f6                 | xor                 esi, esi
            //   8903                 | mov                 dword ptr [ebx], eax
            //   85ff                 | test                edi, edi
            //   7437                 | je                  0x39

        $sequence_7 = { 3bfa 7502 8ac1 41 83f940 7ced }
            // n = 6, score = 100
            //   3bfa                 | cmp                 edi, edx
            //   7502                 | jne                 4
            //   8ac1                 | mov                 al, cl
            //   41                   | inc                 ecx
            //   83f940               | cmp                 ecx, 0x40
            //   7ced                 | jl                  0xffffffef

        $sequence_8 = { 56 68???????? 6a00 6a00 ff15???????? 5f 5e }
            // n = 7, score = 100
            //   56                   | push                esi
            //   68????????           |                     
            //   6a00                 | push                0
            //   6a00                 | push                0
            //   ff15????????         |                     
            //   5f                   | pop                 edi
            //   5e                   | pop                 esi

        $sequence_9 = { 895e0c e8???????? 53 8b5d08 53 50 }
            // n = 6, score = 100
            //   895e0c               | mov                 dword ptr [esi + 0xc], ebx
            //   e8????????           |                     
            //   53                   | push                ebx
            //   8b5d08               | mov                 ebx, dword ptr [ebp + 8]
            //   53                   | push                ebx
            //   50                   | push                eax

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