SYMBOLCOMMON_NAMEaka. SYNONYMS
win.mulcom (Back to overview)

MulCom

VTCollection    

There is no description at this point.

References
2022-03-22Avast DecodedIgor Morgenstern, Jan Holman, Luigino Camastra
Operation Dragon Castling: APT group targeting betting companies
FormerFirstRAT MulCom TianWu
Yara Rules
[TLP:WHITE] win_mulcom_auto (20230808 | Detects win.mulcom.)
rule win_mulcom_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-12-06"
        version = "1"
        description = "Detects win.mulcom."
        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.mulcom"
        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 = { 4883ec40 33ff 48c740f007000000 488978e8 488d4c2420 668978d8 4d85c0 }
            // n = 7, score = 100
            //   4883ec40             | mov                 ecx, eax
            //   33ff                 | dec                 ebp
            //   48c740f007000000     | sub                 ecx, eax
            //   488978e8             | dec                 ecx
            //   488d4c2420           | sub                 ecx, 0x210
            //   668978d8             | dec                 ecx
            //   4d85c0               | add                 eax, 0x210

        $sequence_1 = { e8???????? 4c8b4310 488bd3 48837b1808 7203 488b13 4981f804010000 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   4c8b4310             | dec                 eax
            //   488bd3               | test                ecx, ecx
            //   48837b1808           | je                  0x149d
            //   7203                 | dec                 eax
            //   488b13               | mov                 eax, dword ptr [ecx]
            //   4981f804010000       | dec                 eax

        $sequence_2 = { e8???????? 488d4de8 e8???????? 488d4dc8 e8???????? 488d4da8 e8???????? }
            // n = 7, score = 100
            //   e8????????           |                     
            //   488d4de8             | dec                 eax
            //   e8????????           |                     
            //   488d4dc8             | lea                 edx, [ebp - 0x41]
            //   e8????????           |                     
            //   488d4da8             | dec                 eax
            //   e8????????           |                     

        $sequence_3 = { 48897020 488b05???????? 4833c4 48898510020000 498bf8 488bda 4889542438 }
            // n = 7, score = 100
            //   48897020             | xor                 edx, edx
            //   488b05????????       |                     
            //   4833c4               | dec                 eax
            //   48898510020000       | lea                 ecx, [ebp + 0x10]
            //   498bf8               | mov                 dword ptr [ebp - 0x3d], eax
            //   488bda               | inc                 esp
            //   4889542438           | mov                 dword ptr [ebp - 0x39], esp

        $sequence_4 = { 33d2 33c9 458bc6 ff15???????? 85c0 0f8412020000 }
            // n = 6, score = 100
            //   33d2                 | dec                 eax
            //   33c9                 | inc                 edx
            //   458bc6               | dec                 eax
            //   ff15????????         |                     
            //   85c0                 | mov                 ecx, dword ptr [ebp - 0x28]
            //   0f8412020000         | dec                 eax

        $sequence_5 = { e8???????? 488d4c2460 e8???????? 90 488dbea0000000 488d9580010000 }
            // n = 6, score = 100
            //   e8????????           |                     
            //   488d4c2460           | dec                 eax
            //   e8????????           |                     
            //   90                   | mov                 dword ptr [edx + 8], eax
            //   488dbea0000000       | dec                 eax
            //   488d9580010000       | lea                 eax, [0x3a6a9]

        $sequence_6 = { 4c897de0 488d45d0 48837de810 480f4345d0 448838 8b542440 483b55e0 }
            // n = 7, score = 100
            //   4c897de0             | dec                 esp
            //   488d45d0             | mov                 dword ptr [esp + 0x80], esi
            //   48837de810           | xor                 edi, edi
            //   480f4345d0           | dec                 eax
            //   448838               | mov                 dword ptr [esp + 0x88], edi
            //   8b542440             | dec                 esp
            //   483b55e0             | imul                ebp, ebx, 0xa8

        $sequence_7 = { 4d63df 4c015d00 478d6c2fff eb3f 4585e4 7511 8b74243c }
            // n = 7, score = 100
            //   4d63df               | mov                 eax, 0xa
            //   4c015d00             | inc                 ebx
            //   478d6c2fff           | mov                 edx, dword ptr [esp + edi*8]
            //   eb3f                 | dec                 eax
            //   4585e4               | lea                 ecx, [ebp]
            //   7511                 | dec                 eax
            //   8b74243c             | mov                 ebx, eax

        $sequence_8 = { cc e8???????? cc 4c8bc2 488b5108 48395110 0f848b000000 }
            // n = 7, score = 100
            //   cc                   | dec                 eax
            //   e8????????           |                     
            //   cc                   | arpl                word ptr [eax + 4], cx
            //   4c8bc2               | dec                 eax
            //   488b5108             | lea                 eax, [0x4e23e]
            //   48395110             | dec                 edx
            //   0f848b000000         | mov                 dword ptr [ecx + esi], eax

        $sequence_9 = { 410fb7d0 ff5018 440fb7c0 49ffce 418bff 66453be0 0f45fb }
            // n = 7, score = 100
            //   410fb7d0             | add                 al, al
            //   ff5018               | inc                 al
            //   440fb7c0             | mov                 byte ptr [ecx], al
            //   49ffce               | jmp                 0x69
            //   418bff               | dec                 ecx
            //   66453be0             | mov                 ecx, dword ptr [eax + 0x10]
            //   0f45fb               | inc                 eax

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