SYMBOLCOMMON_NAMEaka. SYNONYMS
win.leouncia (Back to overview)

Leouncia

aka: shoco

Actor(s): APT5

VTCollection    

There is no description at this point.

References
2010-12-14 ⋅ FireEye ⋅ Atif Mushtaq
Leouncia - Yet Another Backdoor - Part 2
Leouncia
Yara Rules
[TLP:WHITE] win_leouncia_auto (20260917 | Detects win.leouncia.)
rule win_leouncia_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.leouncia."
        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.leouncia"
        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 = { e8???????? 83c40c c3 0fb6442404 8a4c240c 848821b04000 751c }
            // n = 7, score = 100
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc
            //   c3                   | ret                 
            //   0fb6442404           | movzx               eax, byte ptr [esp + 4]
            //   8a4c240c             | mov                 cl, byte ptr [esp + 0xc]
            //   848821b04000         | test                byte ptr [eax + 0x40b021], cl
            //   751c                 | jne                 0x1e

        $sequence_1 = { 8bcd 8bd1 8d8424c0000000 c1e902 f3a5 }
            // n = 5, score = 100
            //   8bcd                 | mov                 ecx, ebp
            //   8bd1                 | mov                 edx, ecx
            //   8d8424c0000000       | lea                 eax, [esp + 0xc0]
            //   c1e902               | shr                 ecx, 2
            //   f3a5                 | rep movsd           dword ptr es:[edi], dword ptr [esi]

        $sequence_2 = { 8bc8 83e01f c1f905 8b0c8d60c14000 8a44c104 83e040 }
            // n = 6, score = 100
            //   8bc8                 | mov                 ecx, eax
            //   83e01f               | and                 eax, 0x1f
            //   c1f905               | sar                 ecx, 5
            //   8b0c8d60c14000       | mov                 ecx, dword ptr [ecx*4 + 0x40c160]
            //   8a44c104             | mov                 al, byte ptr [ecx + eax*8 + 4]
            //   83e040               | and                 eax, 0x40

        $sequence_3 = { 83e810 8bb42418040000 89442410 8d4c2414 6a00 83c0fc }
            // n = 6, score = 100
            //   83e810               | sub                 eax, 0x10
            //   8bb42418040000       | mov                 esi, dword ptr [esp + 0x418]
            //   89442410             | mov                 dword ptr [esp + 0x10], eax
            //   8d4c2414             | lea                 ecx, [esp + 0x14]
            //   6a00                 | push                0
            //   83c0fc               | add                 eax, -4

        $sequence_4 = { 6a05 68000001c0 68???????? ff15???????? 8bf0 83feff }
            // n = 6, score = 100
            //   6a05                 | push                5
            //   68000001c0           | push                0xc0010000
            //   68????????           |                     
            //   ff15????????         |                     
            //   8bf0                 | mov                 esi, eax
            //   83feff               | cmp                 esi, -1

        $sequence_5 = { 0fb641ff 0fb6d2 3bc2 0f8793000000 808821b0400004 40 ebee }
            // n = 7, score = 100
            //   0fb641ff             | movzx               eax, byte ptr [ecx - 1]
            //   0fb6d2               | movzx               edx, dl
            //   3bc2                 | cmp                 eax, edx
            //   0f8793000000         | ja                  0x99
            //   808821b0400004       | or                  byte ptr [eax + 0x40b021], 4
            //   40                   | inc                 eax
            //   ebee                 | jmp                 0xfffffff0

        $sequence_6 = { 83c418 3bc3 0f84dd000000 3d97010000 0f841e010000 }
            // n = 5, score = 100
            //   83c418               | add                 esp, 0x18
            //   3bc3                 | cmp                 eax, ebx
            //   0f84dd000000         | je                  0xe3
            //   3d97010000           | cmp                 eax, 0x197
            //   0f841e010000         | je                  0x124

        $sequence_7 = { 51 05???????? 52 50 c744243000000000 e8???????? 83c420 }
            // n = 7, score = 100
            //   51                   | push                ecx
            //   05????????           |                     
            //   52                   | push                edx
            //   50                   | push                eax
            //   c744243000000000     | mov                 dword ptr [esp + 0x30], 0
            //   e8????????           |                     
            //   83c420               | add                 esp, 0x20

        $sequence_8 = { e8???????? 83c408 83f8ff 7509 0bc0 81c420580000 }
            // n = 6, score = 100
            //   e8????????           |                     
            //   83c408               | add                 esp, 8
            //   83f8ff               | cmp                 eax, -1
            //   7509                 | jne                 0xb
            //   0bc0                 | or                  eax, eax
            //   81c420580000         | add                 esp, 0x5820

        $sequence_9 = { 51 e8???????? 50 ff15???????? 68???????? ff15???????? 53 }
            // n = 7, score = 100
            //   51                   | push                ecx
            //   e8????????           |                     
            //   50                   | push                eax
            //   ff15????????         |                     
            //   68????????           |                     
            //   ff15????????         |                     
            //   53                   | push                ebx

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