SYMBOLCOMMON_NAMEaka. SYNONYMS
win.xxmm (Back to overview)

xxmm

aka: ShadowWalker

Actor(s): Tick


There is no description at this point.

References
2020SecureworksSecureWorks
@online{secureworks:2020:bronze:ef493d6, author = {SecureWorks}, title = {{BRONZE BUTLER}}, date = {2020}, organization = {Secureworks}, url = {https://www.secureworks.com/research/threat-profiles/bronze-butler}, language = {English}, urldate = {2020-05-23} } BRONZE BUTLER
Daserf xxmm Tick
2019-01-18Dell SecureworksYou Nakatsuru
@techreport{nakatsuru:20190118:understanding:15cc8b9, author = {You Nakatsuru}, title = {{Understanding Command and Control - An Anatomy of xxmm Communication}}, date = {2019-01-18}, institution = {Dell Secureworks}, url = {https://jsac.jpcert.or.jp/archive/2019/pdf/JSAC2019_8_nakatsuru_en.pdf}, language = {English}, urldate = {2019-12-10} } Understanding Command and Control - An Anatomy of xxmm Communication
xxmm
2017-11-07Trend MicroTrendmicro
@online{trendmicro:20171107:redbaldknightbronze:f7c817f, author = {Trendmicro}, title = {{REDBALDKNIGHT/BRONZE BUTLER’s Daserf Backdoor Now Using Steganography}}, date = {2017-11-07}, organization = {Trend Micro}, url = {http://blog.trendmicro.com/trendlabs-security-intelligence/redbaldknight-bronze-butler-daserf-backdoor-now-using-steganography/}, language = {English}, urldate = {2019-11-27} } REDBALDKNIGHT/BRONZE BUTLER’s Daserf Backdoor Now Using Steganography
Daserf Datper xxmm
2017-10-12SecureworksCTU Research Team
@online{team:20171012:bronze:7b9ae02, author = {CTU Research Team}, title = {{BRONZE BUTLER Targets Japanese Enterprises}}, date = {2017-10-12}, organization = {Secureworks}, url = {https://www.secureworks.com/research/bronze-butler-targets-japanese-businesses}, language = {English}, urldate = {2020-01-07} } BRONZE BUTLER Targets Japanese Enterprises
Daserf Datper rarstar xxmm Tick
2017-04-25CybereasonAssaf Dahan
@online{dahan:20170425:shadowwali:565d1c1, author = {Assaf Dahan}, title = {{ShadowWali: New variant of the xxmm family of backdoors}}, date = {2017-04-25}, organization = {Cybereason}, url = {https://www.cybereason.com/blog/labs-shadowwali-new-variant-of-the-xxmm-family-of-backdoors}, language = {English}, urldate = {2020-02-11} } ShadowWali: New variant of the xxmm family of backdoors
xxmm
Yara Rules
[TLP:WHITE] win_xxmm_auto (20200529 | autogenerated rule brought to you by yara-signator)
rule win_xxmm_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2020-05-30"
        version = "1"
        description = "autogenerated rule brought to you by yara-signator"
        tool = "yara-signator v0.4.0"
        tool_config = "callsandjumps;datarefs;binvalue"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.xxmm"
        malpedia_rule_date = "20200529"
        malpedia_hash = "92c362319514e5a6da26204961446caa3a8b32a8"
        malpedia_version = "20200529"
        malpedia_license = "CC BY-NC-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 / approach 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 = { 48 75f7 0fb74614 8d7c302c 0fb74606 8945e8 85c0 }
            // n = 7, score = 600
            //   48                   | dec                 eax
            //   75f7                 | jne                 0xfffffff9
            //   0fb74614             | movzx               eax, word ptr [esi + 0x14]
            //   8d7c302c             | lea                 edi, [eax + esi + 0x2c]
            //   0fb74606             | movzx               eax, word ptr [esi + 6]
            //   8945e8               | mov                 dword ptr [ebp - 0x18], eax
            //   85c0                 | test                eax, eax

        $sequence_1 = { 50 ff55e4 8945fc 85c0 7467 8b7b10 8b03 }
            // n = 7, score = 600
            //   50                   | push                eax
            //   ff55e4               | call                dword ptr [ebp - 0x1c]
            //   8945fc               | mov                 dword ptr [ebp - 4], eax
            //   85c0                 | test                eax, eax
            //   7467                 | je                  0x69
            //   8b7b10               | mov                 edi, dword ptr [ebx + 0x10]
            //   8b03                 | mov                 eax, dword ptr [ebx]

        $sequence_2 = { 8b7808 3bc3 7578 807f1d00 8b7304 7503 }
            // n = 6, score = 600
            //   8b7808               | mov                 edi, dword ptr [eax + 8]
            //   3bc3                 | cmp                 eax, ebx
            //   7578                 | jne                 0x7a
            //   807f1d00             | cmp                 byte ptr [edi + 0x1d], 0
            //   8b7304               | mov                 esi, dword ptr [ebx + 4]
            //   7503                 | jne                 5

        $sequence_3 = { 33ff 8bf0 397d08 0f84bc000000 397d10 0f84b3000000 }
            // n = 6, score = 600
            //   33ff                 | xor                 edi, edi
            //   8bf0                 | mov                 esi, eax
            //   397d08               | cmp                 dword ptr [ebp + 8], edi
            //   0f84bc000000         | je                  0xc2
            //   397d10               | cmp                 dword ptr [ebp + 0x10], edi
            //   0f84b3000000         | je                  0xb9

        $sequence_4 = { 7424 8b00 85c0 791e 8b4a3c }
            // n = 5, score = 600
            //   7424                 | je                  0x26
            //   8b00                 | mov                 eax, dword ptr [eax]
            //   85c0                 | test                eax, eax
            //   791e                 | jns                 0x20
            //   8b4a3c               | mov                 ecx, dword ptr [edx + 0x3c]

        $sequence_5 = { 33c9 53 56 57 894de4 894de0 }
            // n = 6, score = 600
            //   33c9                 | xor                 ecx, ecx
            //   53                   | push                ebx
            //   56                   | push                esi
            //   57                   | push                edi
            //   894de4               | mov                 dword ptr [ebp - 0x1c], ecx
            //   894de0               | mov                 dword ptr [ebp - 0x20], ecx

        $sequence_6 = { 8d040f 0fb610 035510 81e2ff000080 7908 }
            // n = 5, score = 600
            //   8d040f               | lea                 eax, [edi + ecx]
            //   0fb610               | movzx               edx, byte ptr [eax]
            //   035510               | add                 edx, dword ptr [ebp + 0x10]
            //   81e2ff000080         | and                 edx, 0x800000ff
            //   7908                 | jns                 0xa

        $sequence_7 = { 8b5dfc 83c728 837de800 75d7 8b9e80000000 035df8 }
            // n = 6, score = 600
            //   8b5dfc               | mov                 ebx, dword ptr [ebp - 4]
            //   83c728               | add                 edi, 0x28
            //   837de800             | cmp                 dword ptr [ebp - 0x18], 0
            //   75d7                 | jne                 0xffffffd9
            //   8b9e80000000         | mov                 ebx, dword ptr [esi + 0x80]
            //   035df8               | add                 ebx, dword ptr [ebp - 8]

        $sequence_8 = { 33ff 8d75d4 e8???????? 6a01 8d7510 e8???????? }
            // n = 6, score = 600
            //   33ff                 | xor                 edi, edi
            //   8d75d4               | lea                 esi, [ebp - 0x2c]
            //   e8????????           |                     
            //   6a01                 | push                1
            //   8d7510               | lea                 esi, [ebp + 0x10]
            //   e8????????           |                     

        $sequence_9 = { 8b07 0345f8 83c002 50 ff75fc ff55e0 8b55fc }
            // n = 7, score = 600
            //   8b07                 | mov                 eax, dword ptr [edi]
            //   0345f8               | add                 eax, dword ptr [ebp - 8]
            //   83c002               | add                 eax, 2
            //   50                   | push                eax
            //   ff75fc               | push                dword ptr [ebp - 4]
            //   ff55e0               | call                dword ptr [ebp - 0x20]
            //   8b55fc               | mov                 edx, dword ptr [ebp - 4]

    condition:
        7 of them and filesize < 540672
}
[TLP:WHITE] win_xxmm_w0   (20180301 | Detects malware / hacktool sample from Bronze Butler incident)
rule win_xxmm_w0 {
    meta:
        author = "Florian Roth"
        description = "Detects malware / hacktool sample from Bronze Butler incident"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.xxmm"
        malpedia_version = "20180301"
        malpedia_license = "CC BY-NC-SA 4.0"
        malpedia_sharing = "TLP:WHITE"
    strings:
        $x1 = "\\Release\\ReflectivLoader.pdb" ascii
        $x3 = "\\Projects\\xxmm2\\Release\\" ascii
        $x5 = "http://127.0.0.1/phptunnel.php" fullword ascii

        $s1 = "xxmm2.exe" fullword ascii
        $s2 = "\\AvUpdate.exe" fullword wide
        $s3 = "stdapi_fs_file_download" fullword ascii
        $s4 = "stdapi_syncshell_open" fullword ascii
        $s5 = "stdapi_execute_sleep" fullword ascii
        $s6 = "stdapi_syncshell_kill" fullword ascii
    condition:
        1 of ($x*) or
        4 of them
}
Download all Yara Rules