SYMBOLCOMMON_NAMEaka. SYNONYMS
win.meow (Back to overview)

Meow

VTCollection    

According to PCrisk, MEOW is ransomware based on other ransomware called CONTI. MEOW encrypts files and appends the ".MEOW" extension to their filenames. It also drops the "readme.txt" file (a ransom note). An example of how MEOW ransomware modifies filenames: it renames "1.jpg" to "1.jpg.MEOW", "2.png" to "2.png.MEOW", and so forth.

References
2022-08-22 ⋅ ⋅ Andrew Ivanov
Meow Ransomware
Meow
Yara Rules
[TLP:WHITE] win_meow_auto (20260917 | Detects win.meow.)
rule win_meow_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.meow."
        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.meow"
        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 = { 6bc10b 99 f7fb 8d427f 99 f7fb 88943509ffffff }
            // n = 7, score = 100
            //   6bc10b               | imul                eax, ecx, 0xb
            //   99                   | cdq                 
            //   f7fb                 | idiv                ebx
            //   8d427f               | lea                 eax, [edx + 0x7f]
            //   99                   | cdq                 
            //   f7fb                 | idiv                ebx
            //   88943509ffffff       | mov                 byte ptr [ebp + esi - 0xf7], dl

        $sequence_1 = { 99 f7f9 85d2 0f857f000000 0f1f00 8b45f4 40 }
            // n = 7, score = 100
            //   99                   | cdq                 
            //   f7f9                 | idiv                ecx
            //   85d2                 | test                edx, edx
            //   0f857f000000         | jne                 0x85
            //   0f1f00               | nop                 dword ptr [eax]
            //   8b45f4               | mov                 eax, dword ptr [ebp - 0xc]
            //   40                   | inc                 eax

        $sequence_2 = { bb0c000000 56 8bf7 8d7b73 0f1f4000 8a06 }
            // n = 6, score = 100
            //   bb0c000000           | mov                 ebx, 0xc
            //   56                   | push                esi
            //   8bf7                 | mov                 esi, edi
            //   8d7b73               | lea                 edi, [ebx + 0x73]
            //   0f1f4000             | nop                 dword ptr [eax]
            //   8a06                 | mov                 al, byte ptr [esi]

        $sequence_3 = { 8945f4 8b45f4 99 f7fe 85d2 0f855bffffff 90 }
            // n = 7, score = 100
            //   8945f4               | mov                 dword ptr [ebp - 0xc], eax
            //   8b45f4               | mov                 eax, dword ptr [ebp - 0xc]
            //   99                   | cdq                 
            //   f7fe                 | idiv                esi
            //   85d2                 | test                edx, edx
            //   0f855bffffff         | jne                 0xffffff61
            //   90                   | nop                 

        $sequence_4 = { 8d4c2411 51 8d8c24d0030000 51 ffd0 85c0 0f8426030000 }
            // n = 7, score = 100
            //   8d4c2411             | lea                 ecx, [esp + 0x11]
            //   51                   | push                ecx
            //   8d8c24d0030000       | lea                 ecx, [esp + 0x3d0]
            //   51                   | push                ecx
            //   ffd0                 | call                eax
            //   85c0                 | test                eax, eax
            //   0f8426030000         | je                  0x32c

        $sequence_5 = { 8a8579ffffff 80bd78ffffff00 897dcc 753a 33f6 0f1f840000000000 8a843579ffffff }
            // n = 7, score = 100
            //   8a8579ffffff         | mov                 al, byte ptr [ebp - 0x87]
            //   80bd78ffffff00       | cmp                 byte ptr [ebp - 0x88], 0
            //   897dcc               | mov                 dword ptr [ebp - 0x34], edi
            //   753a                 | jne                 0x3c
            //   33f6                 | xor                 esi, esi
            //   0f1f840000000000     | nop                 dword ptr [eax + eax]
            //   8a843579ffffff       | mov                 al, byte ptr [ebp + esi - 0x87]

        $sequence_6 = { 68000000c0 56 ffd0 6a5d 680038ab9a ba0f000000 894304 }
            // n = 7, score = 100
            //   68000000c0           | push                0xc0000000
            //   56                   | push                esi
            //   ffd0                 | call                eax
            //   6a5d                 | push                0x5d
            //   680038ab9a           | push                0x9aab3800
            //   ba0f000000           | mov                 edx, 0xf
            //   894304               | mov                 dword ptr [ebx + 4], eax

        $sequence_7 = { c68527ffffff04 c68528ffffff3b c68529ffffff17 c6852affffff3b c6852bffffff79 c6852cffffff3b c6852dffffff79 }
            // n = 7, score = 100
            //   c68527ffffff04       | mov                 byte ptr [ebp - 0xd9], 4
            //   c68528ffffff3b       | mov                 byte ptr [ebp - 0xd8], 0x3b
            //   c68529ffffff17       | mov                 byte ptr [ebp - 0xd7], 0x17
            //   c6852affffff3b       | mov                 byte ptr [ebp - 0xd6], 0x3b
            //   c6852bffffff79       | mov                 byte ptr [ebp - 0xd5], 0x79
            //   c6852cffffff3b       | mov                 byte ptr [ebp - 0xd4], 0x3b
            //   c6852dffffff79       | mov                 byte ptr [ebp - 0xd3], 0x79

        $sequence_8 = { c685c1fdffff73 c685c2fdffff3f c685c3fdffff40 c685c4fdffff3f c685c5fdffff3f c685c6fdffff3f 8a85bdfdffff }
            // n = 7, score = 100
            //   c685c1fdffff73       | mov                 byte ptr [ebp - 0x23f], 0x73
            //   c685c2fdffff3f       | mov                 byte ptr [ebp - 0x23e], 0x3f
            //   c685c3fdffff40       | mov                 byte ptr [ebp - 0x23d], 0x40
            //   c685c4fdffff3f       | mov                 byte ptr [ebp - 0x23c], 0x3f
            //   c685c5fdffff3f       | mov                 byte ptr [ebp - 0x23b], 0x3f
            //   c685c6fdffff3f       | mov                 byte ptr [ebp - 0x23a], 0x3f
            //   8a85bdfdffff         | mov                 al, byte ptr [ebp - 0x243]

        $sequence_9 = { c68588f8ffff68 c68589f8ffff44 c6858af8ffff68 c6858bf8ffff4e c6858cf8ffff68 c6858df8ffff68 c6858ef8ffff68 }
            // n = 7, score = 100
            //   c68588f8ffff68       | mov                 byte ptr [ebp - 0x778], 0x68
            //   c68589f8ffff44       | mov                 byte ptr [ebp - 0x777], 0x44
            //   c6858af8ffff68       | mov                 byte ptr [ebp - 0x776], 0x68
            //   c6858bf8ffff4e       | mov                 byte ptr [ebp - 0x775], 0x4e
            //   c6858cf8ffff68       | mov                 byte ptr [ebp - 0x774], 0x68
            //   c6858df8ffff68       | mov                 byte ptr [ebp - 0x773], 0x68
            //   c6858ef8ffff68       | mov                 byte ptr [ebp - 0x772], 0x68

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