SYMBOLCOMMON_NAMEaka. SYNONYMS
win.dynowiper (Back to overview)

DynoWiper

VTCollection    

There is no description at this point.

References
2026-02-09TRUESECAndreas Törnqvist, Mattias Wåhlén, Nicklas Keijser
Detecting Russian Threats to Critical Energy Infrastructure
DynoWiper
2026-02-06t0ast's blogt0ast
DynoWiper: From Russia with Love
DynoWiper
2026-01-30CERT.PLCERT.PL
Energy Sector Incident Report – 29 December
LazyWiper DynoWiper
2026-01-30ESET ResearchESET Research
DynoWiper update: Technical analysis and attribution
DynoWiper
Yara Rules
[TLP:WHITE] win_dynowiper_auto (20260504 | Detects win.dynowiper.)
rule win_dynowiper_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.dynowiper."
        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.dynowiper"
        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 = { 7528 8d45ec c745ec54474200 50 8d4ddc e8???????? 68???????? }
            // n = 7, score = 100
            //   7528                 | jne                 0x2a
            //   8d45ec               | lea                 eax, [ebp - 0x14]
            //   c745ec54474200       | mov                 dword ptr [ebp - 0x14], 0x424754
            //   50                   | push                eax
            //   8d4ddc               | lea                 ecx, [ebp - 0x24]
            //   e8????????           |                     
            //   68????????           |                     

        $sequence_1 = { e9???????? 8b95ecefffff 8b8ddcefffff 2b7b08 037b04 8b049590914200 8b95f4efffff }
            // n = 7, score = 100
            //   e9????????           |                     
            //   8b95ecefffff         | mov                 edx, dword ptr [ebp - 0x1014]
            //   8b8ddcefffff         | mov                 ecx, dword ptr [ebp - 0x1024]
            //   2b7b08               | sub                 edi, dword ptr [ebx + 8]
            //   037b04               | add                 edi, dword ptr [ebx + 4]
            //   8b049590914200       | mov                 eax, dword ptr [edx*4 + 0x429190]
            //   8b95f4efffff         | mov                 edx, dword ptr [ebp - 0x100c]

        $sequence_2 = { 8b45f4 56 ff75e4 8b048590914200 }
            // n = 4, score = 100
            //   8b45f4               | mov                 eax, dword ptr [ebp - 0xc]
            //   56                   | push                esi
            //   ff75e4               | push                dword ptr [ebp - 0x1c]
            //   8b048590914200       | mov                 eax, dword ptr [eax*4 + 0x429190]

        $sequence_3 = { 8bd8 6a00 85db 7f1f }
            // n = 4, score = 100
            //   8bd8                 | mov                 ebx, eax
            //   6a00                 | push                0
            //   85db                 | test                ebx, ebx
            //   7f1f                 | jg                  0x21

        $sequence_4 = { 85c9 7465 8b06 8b04b8 8901 eb5c 8b5608 }
            // n = 7, score = 100
            //   85c9                 | test                ecx, ecx
            //   7465                 | je                  0x67
            //   8b06                 | mov                 eax, dword ptr [esi]
            //   8b04b8               | mov                 eax, dword ptr [eax + edi*4]
            //   8901                 | mov                 dword ptr [ecx], eax
            //   eb5c                 | jmp                 0x5e
            //   8b5608               | mov                 edx, dword ptr [esi + 8]

        $sequence_5 = { 80b85081420000 751d 8b5df0 83fa04 7f12 3bf3 }
            // n = 6, score = 100
            //   80b85081420000       | cmp                 byte ptr [eax + 0x428150], 0
            //   751d                 | jne                 0x1f
            //   8b5df0               | mov                 ebx, dword ptr [ebp - 0x10]
            //   83fa04               | cmp                 edx, 4
            //   7f12                 | jg                  0x14
            //   3bf3                 | cmp                 esi, ebx

        $sequence_6 = { ff15???????? 85c0 7443 8d44240c c744240801000000 50 }
            // n = 6, score = 100
            //   ff15????????         |                     
            //   85c0                 | test                eax, eax
            //   7443                 | je                  0x45
            //   8d44240c             | lea                 eax, [esp + 0xc]
            //   c744240801000000     | mov                 dword ptr [esp + 8], 1
            //   50                   | push                eax

        $sequence_7 = { 8d4900 8b06 3d70020000 7509 8bce e8???????? }
            // n = 6, score = 100
            //   8d4900               | lea                 ecx, [ecx]
            //   8b06                 | mov                 eax, dword ptr [esi]
            //   3d70020000           | cmp                 eax, 0x270
            //   7509                 | jne                 0xb
            //   8bce                 | mov                 ecx, esi
            //   e8????????           |                     

        $sequence_8 = { 83c404 33c0 c745e807000000 837dd010 668945d4 8945e4 720b }
            // n = 7, score = 100
            //   83c404               | add                 esp, 4
            //   33c0                 | xor                 eax, eax
            //   c745e807000000       | mov                 dword ptr [ebp - 0x18], 7
            //   837dd010             | cmp                 dword ptr [ebp - 0x30], 0x10
            //   668945d4             | mov                 word ptr [ebp - 0x2c], ax
            //   8945e4               | mov                 dword ptr [ebp - 0x1c], eax
            //   720b                 | jb                  0xd

        $sequence_9 = { 33882c060000 33ca 8988b8090000 4e 75c9 eb0e 3de0040000 }
            // n = 7, score = 100
            //   33882c060000         | xor                 ecx, dword ptr [eax + 0x62c]
            //   33ca                 | xor                 ecx, edx
            //   8988b8090000         | mov                 dword ptr [eax + 0x9b8], ecx
            //   4e                   | dec                 esi
            //   75c9                 | jne                 0xffffffcb
            //   eb0e                 | jmp                 0x10
            //   3de0040000           | cmp                 eax, 0x4e0

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