SYMBOLCOMMON_NAMEaka. SYNONYMS
win.mqsttang (Back to overview)

MQsTTang

aka: QMAGENT

Actor(s): MUSTANG PANDA

VTCollection    

There is no description at this point.

References
2023-09-07SekoiaJamila B.
My Tea’s not cold. An overview of China’s cyber threat
Melofee PingPull SoWaT Sword2033 MgBot MQsTTang PlugX TONESHELL Dalbit MirrorFace
2023-03-02ESET ResearchAlexandre Côté Cyr
MQsTTang: Mustang Panda’s latest backdoor treads new ground with Qt and MQTT
MQsTTang
Yara Rules
[TLP:WHITE] win_mqsttang_auto (20260504 | Detects win.mqsttang.)
rule win_mqsttang_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.mqsttang."
        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.mqsttang"
        malpedia_rule_date = "20260422"
        malpedia_hash = "a182e35da64e6d71cb55f125c4d4225196523f14"
        malpedia_version = "20260504"
        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 = { e9???????? c744240804000000 c744240402000000 890424 e8???????? e9???????? 8d4590 }
            // n = 7, score = 100
            //   e9????????           |                     
            //   c744240804000000     | mov                 dword ptr [esp + 8], 4
            //   c744240402000000     | mov                 dword ptr [esp + 4], 2
            //   890424               | mov                 dword ptr [esp], eax
            //   e8????????           |                     
            //   e9????????           |                     
            //   8d4590               | lea                 eax, [ebp - 0x70]

        $sequence_1 = { f0832801 740f 89f1 e8???????? 83c424 89d8 5b }
            // n = 7, score = 100
            //   f0832801             | lock sub            dword ptr [eax], 1
            //   740f                 | je                  0x11
            //   89f1                 | mov                 ecx, esi
            //   e8????????           |                     
            //   83c424               | add                 esp, 0x24
            //   89d8                 | mov                 eax, ebx
            //   5b                   | pop                 ebx

        $sequence_2 = { e8???????? 8b560c 8b4208 8b4a0c 29c1 85c9 7e22 }
            // n = 7, score = 100
            //   e8????????           |                     
            //   8b560c               | mov                 edx, dword ptr [esi + 0xc]
            //   8b4208               | mov                 eax, dword ptr [edx + 8]
            //   8b4a0c               | mov                 ecx, dword ptr [edx + 0xc]
            //   29c1                 | sub                 ecx, eax
            //   85c9                 | test                ecx, ecx
            //   7e22                 | jle                 0x24

        $sequence_3 = { e8???????? 89f9 e8???????? 891c24 e8???????? 89c3 ebed }
            // n = 7, score = 100
            //   e8????????           |                     
            //   89f9                 | mov                 ecx, edi
            //   e8????????           |                     
            //   891c24               | mov                 dword ptr [esp], ebx
            //   e8????????           |                     
            //   89c3                 | mov                 ebx, eax
            //   ebed                 | jmp                 0xffffffef

        $sequence_4 = { f0830201 8b500c 8b4010 89530c 894310 f0830301 8b06 }
            // n = 7, score = 100
            //   f0830201             | lock add            dword ptr [edx], 1
            //   8b500c               | mov                 edx, dword ptr [eax + 0xc]
            //   8b4010               | mov                 eax, dword ptr [eax + 0x10]
            //   89530c               | mov                 dword ptr [ebx + 0xc], edx
            //   894310               | mov                 dword ptr [ebx + 0x10], eax
            //   f0830301             | lock add            dword ptr [ebx], 1
            //   8b06                 | mov                 eax, dword ptr [esi]

        $sequence_5 = { e9???????? 8b85e0fdffff 8d9dacfdffff 891c24 89442404 e8???????? 8b85acfdffff }
            // n = 7, score = 100
            //   e9????????           |                     
            //   8b85e0fdffff         | mov                 eax, dword ptr [ebp - 0x220]
            //   8d9dacfdffff         | lea                 ebx, [ebp - 0x254]
            //   891c24               | mov                 dword ptr [esp], ebx
            //   89442404             | mov                 dword ptr [esp + 4], eax
            //   e8????????           |                     
            //   8b85acfdffff         | mov                 eax, dword ptr [ebp - 0x254]

        $sequence_6 = { f20f111424 dd0424 0f840d020000 ddd8 f20f1005???????? 660f2ec4 0f8701040000 }
            // n = 7, score = 100
            //   f20f111424           | movsd               qword ptr [esp], xmm2
            //   dd0424               | fld                 qword ptr [esp]
            //   0f840d020000         | je                  0x213
            //   ddd8                 | fstp                st(0)
            //   f20f1005????????     |                     
            //   660f2ec4             | ucomisd             xmm0, xmm4
            //   0f8701040000         | ja                  0x407

        $sequence_7 = { f0832801 0f8444010000 8b4604 8b10 85d2 0f845f010000 83faff }
            // n = 7, score = 100
            //   f0832801             | lock sub            dword ptr [eax], 1
            //   0f8444010000         | je                  0x14a
            //   8b4604               | mov                 eax, dword ptr [esi + 4]
            //   8b10                 | mov                 edx, dword ptr [eax]
            //   85d2                 | test                edx, edx
            //   0f845f010000         | je                  0x165
            //   83faff               | cmp                 edx, -1

        $sequence_8 = { f0832801 8b44241c 7478 8b0b 80791400 7411 c7042420000000 }
            // n = 7, score = 100
            //   f0832801             | lock sub            dword ptr [eax], 1
            //   8b44241c             | mov                 eax, dword ptr [esp + 0x1c]
            //   7478                 | je                  0x7a
            //   8b0b                 | mov                 ecx, dword ptr [ebx]
            //   80791400             | cmp                 byte ptr [ecx + 0x14], 0
            //   7411                 | je                  0x13
            //   c7042420000000       | mov                 dword ptr [esp], 0x20

        $sequence_9 = { f7d7 89b424a0000000 89fe 21c6 f7d0 21d0 89f7 }
            // n = 7, score = 100
            //   f7d7                 | not                 edi
            //   89b424a0000000       | mov                 dword ptr [esp + 0xa0], esi
            //   89fe                 | mov                 esi, edi
            //   21c6                 | and                 esi, eax
            //   f7d0                 | not                 eax
            //   21d0                 | and                 eax, edx
            //   89f7                 | mov                 edi, esi

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