SYMBOLCOMMON_NAMEaka. SYNONYMS
win.theme_forest_rat (Back to overview)

ThemeForestRAT

aka: TALLSHIP

Actor(s): Lazarus Group

VTCollection    

There is no description at this point.

References
2025-09-01Fox-ITMick Koomen, Yun Zheng Hu
Three Lazarus RATs coming for your cheese
SimpleTea POOLRAT ThemeForestRAT
Yara Rules
[TLP:WHITE] win_theme_forest_rat_auto (20260504 | Detects win.theme_forest_rat.)
rule win_theme_forest_rat_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.theme_forest_rat."
        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.theme_forest_rat"
        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 = { 488bcb ff15???????? 83a56006000000 4c8d8568060000 48c7c702000080 c7855806000064000000 }
            // n = 6, score = 100
            //   488bcb               | xor                 eax, eax
            //   ff15????????         |                     
            //   83a56006000000       | inc                 esp
            //   4c8d8568060000       | add                 edi, edi
            //   48c7c702000080       | inc                 ecx
            //   c7855806000064000000     | or    dword ptr [esi], 0xffffffff

        $sequence_1 = { 7575 488d442440 c7860824000001000000 488bd6 488d4c2440 482bd0 0fb701 }
            // n = 7, score = 100
            //   7575                 | dec                 eax
            //   488d442440           | mov                 ebx, eax
            //   c7860824000001000000     | mov    edi, dword ptr [esp + 0x58]
            //   488bd6               | dec                 eax
            //   488d4c2440           | mov                 dword ptr [esp + 0x50], ebx
            //   482bd0               | jmp                 0xa38
            //   0fb701               | mov                 edx, dword ptr [edi]

        $sequence_2 = { 488b4c2460 488d442468 4889442428 41b901000000 4533c0 c744242001000000 ba00000002 }
            // n = 7, score = 100
            //   488b4c2460           | dec                 eax
            //   488d442468           | lea                 eax, [0x2199b]
            //   4889442428           | dec                 ebp
            //   41b901000000         | mov                 eax, ebp
            //   4533c0               | mov                 edx, dword ptr [esi + 0x30]
            //   c744242001000000     | dec                 eax
            //   ba00000002           | mov                 ecx, esi

        $sequence_3 = { 56 57 4156 4883ec40 8b6934 488bfa 8b5130 }
            // n = 7, score = 100
            //   56                   | mov                 esi, 0x1000100c
            //   57                   | jmp                 0x124e
            //   4156                 | mov                 ebx, dword ptr [ebx]
            //   4883ec40             | mov                 edx, 0x4b00c
            //   8b6934               | mov                 ecx, 0x40
            //   488bfa               | mov                 esi, 0x10001014
            //   8b5130               | dec                 ecx

        $sequence_4 = { 488958e0 488958d8 8958d0 488958c8 4183c9ff 4c8bc1 33d2 }
            // n = 7, score = 100
            //   488958e0             | je                  0xa3
            //   488958d8             | dec                 esp
            //   8958d0               | lea                 eax, [0x154e4]
            //   488958c8             | dec                 eax
            //   4183c9ff             | lea                 edx, [0x154e5]
            //   4c8bc1               | dec                 eax
            //   33d2                 | test                eax, eax

        $sequence_5 = { e8???????? 85c0 0f85be030000 4885f6 488d2d51170300 480f45ee }
            // n = 6, score = 100
            //   e8????????           |                     
            //   85c0                 | mov                 dword ptr [eax + 0x18], esi
            //   0f85be030000         | dec                 eax
            //   4885f6               | mov                 dword ptr [eax + 0x20], edi
            //   488d2d51170300       | inc                 ecx
            //   480f45ee             | push                esi

        $sequence_6 = { 490f43d4 4883c118 e8???????? 4d3bf4 ba08000000 661bc0 66f7d0 }
            // n = 7, score = 100
            //   490f43d4             | cmp                 eax, edi
            //   4883c118             | test                eax, eax
            //   e8????????           |                     
            //   4d3bf4               | jne                 0x81d
            //   ba08000000           | dec                 eax
            //   661bc0               | mov                 edx, edi
            //   66f7d0               | dec                 eax

        $sequence_7 = { 8918 c7400416100010 c7400801000000 89bd24a80000 488d8d1ca80000 e8???????? 488bcd }
            // n = 7, score = 100
            //   8918                 | cmp                 dword ptr [edi + 8], esi
            //   c7400416100010       | je                  0x4e5
            //   c7400801000000       | dec                 eax
            //   89bd24a80000         | arpl                word ptr [edi + 8], dx
            //   488d8d1ca80000       | dec                 esp
            //   e8????????           |                     
            //   488bcd               | lea                 edi, [0xfffe816c]

        $sequence_8 = { 4883ec28 4c8b01 498bc0 48f7d0 483bc2 720f }
            // n = 6, score = 100
            //   4883ec28             | dec                 eax
            //   4c8b01               | mov                 ecx, edi
            //   498bc0               | inc                 ecx
            //   48f7d0               | cmp                 eax, edi
            //   483bc2               | test                eax, eax
            //   720f                 | jne                 0xddc

        $sequence_9 = { 03d0 8bc5 8d0c92 03c9 498d5710 2bc1 4863c8 }
            // n = 7, score = 100
            //   03d0                 | add                 ecx, 0x50
            //   8bc5                 | dec                 eax
            //   8d0c92               | mov                 ecx, dword ptr [edx + 0xc0]
            //   03c9                 | dec                 eax
            //   498d5710             | add                 ecx, 0x50
            //   2bc1                 | dec                 eax
            //   4863c8               | mov                 ecx, dword ptr [edx + 0xc0]

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