SYMBOLCOMMON_NAMEaka. SYNONYMS
win.unidentified_090 (Back to overview)

Unidentified 090 (Lazarus)

Actor(s): Lazarus Group


Recon/Loader malware attributed to Lazarus, disguised as Notepad++ shell extension.

References
2022-01-31Cyber GeeksVlad Pasca
@online{pasca:20220131:detailed:262ea52, author = {Vlad Pasca}, title = {{A Detailed Analysis Of Lazarus APT Malware Disguised As Notepad++ Shell Extension}}, date = {2022-01-31}, organization = {Cyber Geeks}, url = {https://cybergeeks.tech/a-detailed-analysis-of-lazarus-malware-disguised-as-notepad-shell-extension/}, language = {English}, urldate = {2022-02-02} } A Detailed Analysis Of Lazarus APT Malware Disguised As Notepad++ Shell Extension
Unidentified 090 (Lazarus)
2021-09-06cocomelonccocomelonc
@online{cocomelonc:20210906:av:215e5aa, author = {cocomelonc}, title = {{AV engines evasion for C++ simple malware: part 2}}, date = {2021-09-06}, organization = {cocomelonc}, url = {https://cocomelonc.github.io/tutorial/2021/09/06/simple-malware-av-evasion-2.html}, language = {English}, urldate = {2022-11-28} } AV engines evasion for C++ simple malware: part 2
Agent Tesla Amadey Anchor Carbanak Carberp Cardinal RAT Felixroot Konni Loki Password Stealer (PWS) Maze Unidentified 090 (Lazarus)
Yara Rules
[TLP:WHITE] win_unidentified_090_auto (20230125 | Detects win.unidentified_090.)
rule win_unidentified_090_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-01-25"
        version = "1"
        description = "Detects win.unidentified_090."
        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.unidentified_090"
        malpedia_rule_date = "20230124"
        malpedia_hash = "2ee0eebba83dce3d019a90519f2f972c0fcf9686"
        malpedia_version = "20230125"
        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 = { 0f8487020000 660f1f840000000000 688c090000 8d8504f0ffff 6a00 50 e8???????? }
            // n = 7, score = 100
            //   0f8487020000         | je                  0x28d
            //   660f1f840000000000     | nop    word ptr [eax + eax]
            //   688c090000           | push                0x98c
            //   8d8504f0ffff         | lea                 eax, [ebp - 0xffc]
            //   6a00                 | push                0
            //   50                   | push                eax
            //   e8????????           |                     

        $sequence_1 = { 8bb568f7ffff eb21 52 51 c68534f7ffff00 8d8d98f7ffff }
            // n = 6, score = 100
            //   8bb568f7ffff         | mov                 esi, dword ptr [ebp - 0x898]
            //   eb21                 | jmp                 0x23
            //   52                   | push                edx
            //   51                   | push                ecx
            //   c68534f7ffff00       | mov                 byte ptr [ebp - 0x8cc], 0
            //   8d8d98f7ffff         | lea                 ecx, [ebp - 0x868]

        $sequence_2 = { 48 f7d8 1bc0 40 a3???????? e9???????? 68???????? }
            // n = 7, score = 100
            //   48                   | dec                 eax
            //   f7d8                 | neg                 eax
            //   1bc0                 | sbb                 eax, eax
            //   40                   | inc                 eax
            //   a3????????           |                     
            //   e9????????           |                     
            //   68????????           |                     

        $sequence_3 = { e9???????? 8b7df4 8b45f0 8b4df8 8b048540a20210 f644082840 7405 }
            // n = 7, score = 100
            //   e9????????           |                     
            //   8b7df4               | mov                 edi, dword ptr [ebp - 0xc]
            //   8b45f0               | mov                 eax, dword ptr [ebp - 0x10]
            //   8b4df8               | mov                 ecx, dword ptr [ebp - 8]
            //   8b048540a20210       | mov                 eax, dword ptr [eax*4 + 0x1002a240]
            //   f644082840           | test                byte ptr [eax + ecx + 0x28], 0x40
            //   7405                 | je                  7

        $sequence_4 = { 7625 8b45f0 8d0470 3d???????? 7218 81fa???????? }
            // n = 6, score = 100
            //   7625                 | jbe                 0x27
            //   8b45f0               | mov                 eax, dword ptr [ebp - 0x10]
            //   8d0470               | lea                 eax, [eax + esi*2]
            //   3d????????           |                     
            //   7218                 | jb                  0x1a
            //   81fa????????         |                     

        $sequence_5 = { 8d0412 50 ffb568f7ffff 51 e8???????? 83c40c 33c0 }
            // n = 7, score = 100
            //   8d0412               | lea                 eax, [edx + edx]
            //   50                   | push                eax
            //   ffb568f7ffff         | push                dword ptr [ebp - 0x898]
            //   51                   | push                ecx
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc
            //   33c0                 | xor                 eax, eax

        $sequence_6 = { 83c702 3b7d88 75bc c645fc04 8d4dbc }
            // n = 5, score = 100
            //   83c702               | add                 edi, 2
            //   3b7d88               | cmp                 edi, dword ptr [ebp - 0x78]
            //   75bc                 | jne                 0xffffffbe
            //   c645fc04             | mov                 byte ptr [ebp - 4], 4
            //   8d4dbc               | lea                 ecx, [ebp - 0x44]

        $sequence_7 = { 50 ffd7 5f c70600000000 c7460400000000 c7460800000000 }
            // n = 6, score = 100
            //   50                   | push                eax
            //   ffd7                 | call                edi
            //   5f                   | pop                 edi
            //   c70600000000         | mov                 dword ptr [esi], 0
            //   c7460400000000       | mov                 dword ptr [esi + 4], 0
            //   c7460800000000       | mov                 dword ptr [esi + 8], 0

        $sequence_8 = { 8b4628 85c0 740a 50 ffd7 c7462800000000 8b4620 }
            // n = 7, score = 100
            //   8b4628               | mov                 eax, dword ptr [esi + 0x28]
            //   85c0                 | test                eax, eax
            //   740a                 | je                  0xc
            //   50                   | push                eax
            //   ffd7                 | call                edi
            //   c7462800000000       | mov                 dword ptr [esi + 0x28], 0
            //   8b4620               | mov                 eax, dword ptr [esi + 0x20]

        $sequence_9 = { 57 e8???????? 8b9568ffffff 8bc2 8b8d64ffffff }
            // n = 5, score = 100
            //   57                   | push                edi
            //   e8????????           |                     
            //   8b9568ffffff         | mov                 edx, dword ptr [ebp - 0x98]
            //   8bc2                 | mov                 eax, edx
            //   8b8d64ffffff         | mov                 ecx, dword ptr [ebp - 0x9c]

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