SYMBOLCOMMON_NAMEaka. SYNONYMS
win.minifast (Back to overview)

MiniFast

Actor(s): UNC1549

VTCollection    

According to Check Point Research, "MiniFast" is a 64-bit Windows DLL backdoor that appears to be under active development and shows multiple signs of AI-assisted coding, including verbose error handling, modular organization, and descriptive function naming. It is designed for long-term access and remote administration, using a structured command-and-control protocol with host registration, task polling, and result reporting capabilities.
MiniFast performs basic system reconnaissance and supports a broad set of post-compromise functions, including file and directory management, command execution, process enumeration and termination, file transfer, archive creation, and dynamic loading of additional code modules. The malware can also modify its communication timing based on operator instructions and execute tasks through an opcode-driven command framework.
It incorporates execution-chain validation and anti-analysis checks to ensure it is running in an expected environment before activating. It is commonly deployed through multi-stage infection chains that abuse legitimate .NET application functionality and trusted software execution flows to blend into normal system activity and establish persistence.

References
2026-06-01 ⋅ Nextron Systems ⋅ Jonathan Peters
Detecting Nimbus Manticore and their sideloading infection chains
MiniFast
2026-05-22 ⋅ Check Point ⋅ Checkpoint Research
Fast and Furious – Nimbus Manticore Operations During the Iranian Conflict
MiniFast
Yara Rules
[TLP:WHITE] win_minifast_auto (20260917 | Detects win.minifast.)
rule win_minifast_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.minifast."
        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.minifast"
        malpedia_rule_date = "20260916"
        malpedia_hash = "53a643781c18e08f4a50949af60172d837a0b6f6"
        malpedia_version = "20260917"
        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 = { 8b08 81f187000000 81f187000000 48b8365e1d1f4d10db70 480305???????? 8908 48b8365e1d1f4d10db70 }
            // n = 7, score = 100
            //   8b08                 | xor                 edx, edx
            //   81f187000000         | div                 ecx
            //   81f187000000         | sub                 eax, 0x17
            //   48b8365e1d1f4d10db70     | add    eax, 0x17
            //   480305????????       |                     
            //   8908                 | imul                eax, eax, 0x14
            //   48b8365e1d1f4d10db70     | mov    ecx, 0x14

        $sequence_1 = { 89c8 4421c0 09c3 83f3ff 81f3447a9651 81e3447a9651 b8ffffffff }
            // n = 7, score = 100
            //   89c8                 | inc                 eax
            //   4421c0               | or                  dh, dl
            //   09c3                 | inc                 eax
            //   83f3ff               | mov                 dl, bh
            //   81f3447a9651         | xor                 dl, 0xff
            //   81e3447a9651         | inc                 ecx
            //   b8ffffffff           | mov                 cl, bl

        $sequence_2 = { 48b9e98f99ea57c6dc4e 4829c8 488985d0000000 4883bd1801000000 7505 e9???????? 48b8dc5b9dd112100499 }
            // n = 7, score = 100
            //   48b9e98f99ea57c6dc4e     | mov    eax, 0xe81e1864
            //   4829c8               | stosd               dword ptr es:[edi], eax
            //   488985d0000000       | in                  al, 6
            //   4883bd1801000000     | ror                 dword ptr [edx - 0x75], cl
            //   7505                 | add                 al, 0
            //   e9????????           |                     
            //   48b8dc5b9dd112100499     | dec    ecx

        $sequence_3 = { 80f2ff 80e2d0 4180e1ff 4508d0 4408ca 4130d0 4188f9 }
            // n = 7, score = 100
            //   80f2ff               | adc                 bl, byte ptr [edx + ebx*4 + 0x4de1ba48]
            //   80e2d0               | push                0xfa7c4ef9
            //   4180e1ff             | and                 cl, byte ptr [eax - 0x7f]
            //   4508d0               | ret                 0xb12
            //   4408ca               | add                 byte ptr [eax], al
            //   4130d0               | dec                 eax
            //   4188f9               | lea                 ecx, [0x144966]

        $sequence_4 = { e9???????? 8b05???????? 8944240c 8b0d???????? 89ca 83e2ff 4189d0 }
            // n = 7, score = 100
            //   e9????????           |                     
            //   8b05????????         |                     
            //   8944240c             | and                 bl, 0xc6
            //   8b0d????????         |                     
            //   89ca                 | inc                 ecx
            //   83e2ff               | mov                 bl, 0xff
            //   4189d0               | inc                 ecx

        $sequence_5 = { ffd0 4c8b442420 488b4c2428 4889c2 49b96a7540380775b1cc 4c030d???????? 48b8a5c1773d4be9680e }
            // n = 7, score = 100
            //   ffd0                 | mov                 dword ptr [esp + 8], eax
            //   4c8b442420           | je                  0xa42
            //   488b4c2428           | mov                 eax, dword ptr [esp + 8]
            //   4889c2               | jmp                 0x88b
            //   49b96a7540380775b1cc     | mov    ecx, dword ptr [esp + 0xc]
            //   4c030d????????       |                     
            //   48b8a5c1773d4be9680e     | xor    eax, eax

        $sequence_6 = { b2ff 80f222 4188f2 4180f2ff 41b0ff 4180f01a 4188d1 }
            // n = 7, score = 100
            //   b2ff                 | div                 ecx
            //   80f222               | mov                 ecx, eax
            //   4188f2               | mov                 eax, dword ptr [eax]
            //   4180f2ff             | add                 eax, 0x23
            //   41b0ff               | imul                eax, eax, 0x30
            //   4180f01a             | mov                 ecx, 0x30
            //   4188d1               | xor                 edx, edx

        $sequence_7 = { ffd0 4883c420 488b4550 48833800 0f95c0 88455f 48b8a6953f852b4c1be0 }
            // n = 7, score = 100
            //   ffd0                 | dec                 esp
            //   4883c420             | mov                 dword ptr [ebp], ebx
            //   488b4550             | dec                 eax
            //   48833800             | sub                 esp, eax
            //   0f95c0               | dec                 eax
            //   88455f               | sub                 esp, eax
            //   48b8a6953f852b4c1be0     | dec    eax

        $sequence_8 = { 80f2ff 80e2d7 41b2ff 4180f2d7 4520d3 41b0ff 4180f0ff }
            // n = 7, score = 100
            //   80f2ff               | push                0xfa7c4ef9
            //   80e2d7               | and                 cl, byte ptr [eax - 0x7f]
            //   41b2ff               | ret                 0xb12
            //   4180f2d7             | add                 byte ptr [eax], al
            //   4520d3               | dec                 eax
            //   41b0ff               | lea                 ecx, [0x1447b7]
            //   4180f0ff             | call                eax

        $sequence_9 = { 8b1401 88d1 440fb6d9 4489d9 4869c925499224 48c1e920 4189c9 }
            // n = 7, score = 100
            //   8b1401               | add                 byte ptr [eax - 0x48], cl
            //   88d1                 | loope               0x19f8
            //   440fb6d9             | push                0xfa7c4ef9
            //   4489d9               | and                 cl, byte ptr [ecx - 0x1e47b7f8]
            //   4869c925499224       | dec                 ebp
            //   48c1e920             | push                0xfa7c4ef9
            //   4189c9               | and                 cl, byte ptr [ebx - 0x300e7ef8]

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