SYMBOLCOMMON_NAMEaka. SYNONYMS
win.snojan (Back to overview)

Snojan

VTCollection    

There is no description at this point.

References
2018-01-12MediumJacob Pimental
Sonja Analysis
Snojan
Yara Rules
[TLP:WHITE] win_snojan_auto (20230808 | Detects win.snojan.)
rule win_snojan_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-12-06"
        version = "1"
        description = "Detects win.snojan."
        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.snojan"
        malpedia_rule_date = "20231130"
        malpedia_hash = "fc8a0e9f343f6d6ded9e7df1a64dac0cc68d7351"
        malpedia_version = "20230808"
        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 = { ff15???????? 83ec0c 83f8ff 0f8487010000 89c7 b802000000 c70424???????? }
            // n = 7, score = 200
            //   ff15????????         |                     
            //   83ec0c               | sub                 esp, 0xc
            //   83f8ff               | cmp                 eax, -1
            //   0f8487010000         | je                  0x18d
            //   89c7                 | mov                 edi, eax
            //   b802000000           | mov                 eax, 2
            //   c70424????????       |                     

        $sequence_1 = { b802000000 c70424???????? 6689442420 ff15???????? 83ec04 c70424???????? 89442424 }
            // n = 7, score = 200
            //   b802000000           | mov                 eax, 2
            //   c70424????????       |                     
            //   6689442420           | mov                 word ptr [esp + 0x20], ax
            //   ff15????????         |                     
            //   83ec04               | sub                 esp, 4
            //   c70424????????       |                     
            //   89442424             | mov                 dword ptr [esp + 0x24], eax

        $sequence_2 = { 8d5c2430 c644241f00 c744240c00000000 c744240800900100 895c2404 893c24 ff15???????? }
            // n = 7, score = 200
            //   8d5c2430             | lea                 ebx, [esp + 0x30]
            //   c644241f00           | mov                 byte ptr [esp + 0x1f], 0
            //   c744240c00000000     | mov                 dword ptr [esp + 0xc], 0
            //   c744240800900100     | mov                 dword ptr [esp + 8], 0x19000
            //   895c2404             | mov                 dword ptr [esp + 4], ebx
            //   893c24               | mov                 dword ptr [esp], edi
            //   ff15????????         |                     

        $sequence_3 = { a1???????? 8b988000986d 85db 74da }
            // n = 4, score = 200
            //   a1????????           |                     
            //   8b988000986d         | mov                 ebx, dword ptr [eax + 0x6d980080]
            //   85db                 | test                ebx, ebx
            //   74da                 | je                  0xffffffdc

        $sequence_4 = { 8d860000986d 8955cc e8???????? 8b45cc }
            // n = 4, score = 200
            //   8d860000986d         | lea                 eax, [esi + 0x6d980000]
            //   8955cc               | mov                 dword ptr [ebp - 0x34], edx
            //   e8????????           |                     
            //   8b45cc               | mov                 eax, dword ptr [ebp - 0x34]

        $sequence_5 = { 893c24 ff15???????? 83ec10 83f800 }
            // n = 4, score = 200
            //   893c24               | mov                 dword ptr [esp], edi
            //   ff15????????         |                     
            //   83ec10               | sub                 esp, 0x10
            //   83f800               | cmp                 eax, 0

        $sequence_6 = { e9???????? 0fb7810000986d 894dc0 89c7 81cf0000ffff 6683b90000986d00 0f48c7 }
            // n = 7, score = 200
            //   e9????????           |                     
            //   0fb7810000986d       | movzx               eax, word ptr [ecx + 0x6d980000]
            //   894dc0               | mov                 dword ptr [ebp - 0x40], ecx
            //   89c7                 | mov                 edi, eax
            //   81cf0000ffff         | or                  edi, 0xffff0000
            //   6683b90000986d00     | cmp                 word ptr [ecx + 0x6d980000], 0
            //   0f48c7               | cmovs               eax, edi

        $sequence_7 = { 85c0 74e9 a1???????? 8b988000986d 85db 74da 895c2404 }
            // n = 7, score = 200
            //   85c0                 | test                eax, eax
            //   74e9                 | je                  0xffffffeb
            //   a1????????           |                     
            //   8b988000986d         | mov                 ebx, dword ptr [eax + 0x6d980080]
            //   85db                 | test                ebx, ebx
            //   74da                 | je                  0xffffffdc
            //   895c2404             | mov                 dword ptr [esp + 4], ebx

        $sequence_8 = { 837c243401 753d c744241400000000 c744241000000000 }
            // n = 4, score = 200
            //   837c243401           | cmp                 dword ptr [esp + 0x34], 1
            //   753d                 | jne                 0x3f
            //   c744241400000000     | mov                 dword ptr [esp + 0x14], 0
            //   c744241000000000     | mov                 dword ptr [esp + 0x10], 0

        $sequence_9 = { 85c0 b801000000 0f44d0 8854241f 8974240c 896c2408 }
            // n = 6, score = 200
            //   85c0                 | test                eax, eax
            //   b801000000           | mov                 eax, 1
            //   0f44d0               | cmove               edx, eax
            //   8854241f             | mov                 byte ptr [esp + 0x1f], dl
            //   8974240c             | mov                 dword ptr [esp + 0xc], esi
            //   896c2408             | mov                 dword ptr [esp + 8], ebp

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