SYMBOLCOMMON_NAMEaka. SYNONYMS
win.volgmer (Back to overview)

Volgmer

aka: FALLCHILL, Manuscrypt

Actor(s): Lazarus Group

VTCollection    

There is no description at this point.

References
2025-07-28Wiz.ioMerav Bar
TraderTraitor: Deep Dive
GolangGhost Manuscrypt RN Stealer DRATzarus GolangGhost PostNapTea Volgmer wAgentTea
2023-10-13AhnLabASEC Analysis Team
Analysis Report on Lazarus Threat Group’s Volgmer and Scout Malware
JessieConTea Scout Volgmer
2023-08-31AhnLabSanseo
Analysis of Andariel’s New Attack Activities
Andardoor BlackRemote Tiger RAT Volgmer
2023-08-22AhnLabASEC Analysis Team
Analyzing the new attack activity of the Andariel group
Andardoor MimiKatz QuiteRAT Tiger RAT Volgmer
2023-04-12Kaspersky LabsSeongsu Park
Following the Lazarus group by tracking DeathNote campaign
Bankshot BLINDINGCAN ForestTiger LambLoad LPEClient MimiKatz NedDnLoader Racket Downloader Volgmer
2021-09-07LIFARSVlad Pasca
A Detailed Analysis of Lazarus’ RAT Called FALLCHILL
Volgmer
2021-02-25Kaspersky LabsSeongsu Park, Vyacheslav Kopeytsev
Lazarus targets defense industry with ThreatNeedle
HTTP(S) uploader LPEClient Volgmer
2021-01-27S2W LAB Inc.Sojun Ryu
Analysis of THREATNEEDLE C&C Communication (feat. Google TAG Warning to Researchers)
Volgmer
2021-01-27S2W LAB Inc.Sojun Ryu
How to communicate between RAT infected devices (White paper)
Volgmer
2020-07-29Kaspersky LabsGReAT
APT trends report Q2 2020
PhantomLance Dacls Penquin Turla elf.wellmess AppleJeus Dacls AcidBox Cobalt Strike Dacls EternalPetya Godlike12 Olympic Destroyer PlugX shadowhammer ShadowPad Sinowal VHD Ransomware Volgmer WellMess X-Agent XTunnel
2020-05-07AVARAriel Jugnheit, Mark Lechtik
The North Korean AV Anthology: a unique look on DPRK’s Anti-Virus market
Volgmer
2020-02-19LexfoLexfo
The Lazarus Constellation A study on North Korean malware
FastCash AppleJeus BADCALL Bankshot Brambul Dtrack Duuzer DYEPACK ELECTRICFISH HARDRAIN Hermes HOPLIGHT Joanap KEYMARBLE Kimsuky MimiKatz MyDoom NACHOCHEESE NavRAT PowerRatankba RokRAT Sierra(Alfa,Bravo, ...) Volgmer WannaCryptor
2020-02-13QianxinQi Anxin Threat Intelligence Center
APT Report 2019
Chrysaor Exodus Dacls VPNFilter DNSRat Griffon KopiLuwak More_eggs SQLRat AppleJeus BONDUPDATER Agent.BTZ Anchor AndroMut AppleJeus BOOSTWRITE Brambul Carbanak Cobalt Strike Dacls DistTrack DNSpionage Dtrack ELECTRICFISH FlawedAmmyy FlawedGrace Get2 Grateful POS HOPLIGHT Imminent Monitor RAT jason Joanap KerrDown KEYMARBLE Lambert LightNeuron LoJax MiniDuke PolyglotDuke PowerRatankba Rising Sun SDBbot ServHelper Snatch Stuxnet TinyMet tRat TrickBot Volgmer X-Agent Zebrocy
2020-01-01SecureworksSecureWorks
NICKEL ACADEMY
Brambul Duuzer HOPLIGHT Joanap Sierra(Alfa,Bravo, ...) Volgmer
2018-08-23Kaspersky LabsGReAT
Operation AppleJeus: Lazarus hits cryptocurrency exchange with fake installer and macOS malware
AppleJeus Volgmer Lazarus Group
2017-11-14US-CERTUS-CERT
Alert (TA17-318B): HIDDEN COBRA – North Korean Trojan: Volgmer
Volgmer Lazarus Group
Yara Rules
[TLP:WHITE] win_volgmer_auto (20260504 | Detects win.volgmer.)
rule win_volgmer_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.volgmer."
        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.volgmer"
        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 = { 7406 ffd6 48895f18 488b4f10 4885c9 7406 }
            // n = 6, score = 200
            //   7406                 | dec                 eax
            //   ffd6                 | lea                 ecx, [ebp + 0x7e0]
            //   48895f18             | mov                 edx, esi
            //   488b4f10             | mov                 byte ptr [ebp + esi + 0x7e0], 0
            //   4885c9               | mov                 dword ptr [ebp + 0x914], eax
            //   7406                 | movups              xmmword ptr [ebp + 0x8e4], xmm1

        $sequence_1 = { 75ae 488b08 4533c9 48890a 448bc5 }
            // n = 5, score = 200
            //   75ae                 | mov                 byte ptr [ebp + 0x918], al
            //   488b08               | dec                 eax
            //   4533c9               | lea                 ecx, [ebp + 0x7e0]
            //   48890a               | mov                 edx, esi
            //   448bc5               | mov                 byte ptr [ebp + esi + 0x7e0], 0

        $sequence_2 = { 4533c0 498bd5 33c9 c744242800000008 }
            // n = 4, score = 200
            //   4533c0               | inc                 ebp
            //   498bd5               | xor                 eax, eax
            //   33c9                 | dec                 ecx
            //   c744242800000008     | mov                 edx, ebp

        $sequence_3 = { 898514090000 0f2805???????? 0fb605???????? 0f118de4080000 888518090000 }
            // n = 5, score = 200
            //   898514090000         | cmp                 esi, 3
            //   0f2805????????       |                     
            //   0fb605????????       |                     
            //   0f118de4080000       | ja                  0x31
            //   888518090000         | mov                 ecx, 0x12c

        $sequence_4 = { 448bc6 4889442460 488d8de0070000 e8???????? 8bd6 c68435e007000000 }
            // n = 6, score = 200
            //   448bc6               | mov                 esp, dword ptr [esp + 0x50]
            //   4889442460           | mov                 dword ptr [ebx + 0x500c0], ebp
            //   488d8de0070000       | mov                 dword ptr [ebx + 0x52e20], ebp
            //   e8????????           |                     
            //   8bd6                 | mov                 dword ptr [ebx + 0x50ea4], ebp
            //   c68435e007000000     | inc                 ecx

        $sequence_5 = { 4183fe03 772f b92c010000 ff15???????? 498b4d18 4c8bce }
            // n = 6, score = 200
            //   4183fe03             | inc                 ebp
            //   772f                 | cmova               eax, esi
            //   b92c010000           | add                 edi, dword ptr [esp + 0x88]
            //   ff15????????         |                     
            //   498b4d18             | inc                 ecx
            //   4c8bce               | cmp                 edi, esp

        $sequence_6 = { 33f6 458d44245f e8???????? 33c0 48897588 }
            // n = 5, score = 200
            //   33f6                 | jb                  0xffffffda
            //   458d44245f           | inc                 esp
            //   e8????????           |                     
            //   33c0                 | mov                 byte ptr [ebx + 0x52529], ah
            //   48897588             | dec                 esp

        $sequence_7 = { 33d2 0f1f00 410fb60416 880411 488d5201 84c0 }
            // n = 6, score = 200
            //   33d2                 | mov                 ecx, esi
            //   0f1f00               | xor                 esi, esi
            //   410fb60416           | inc                 ebp
            //   880411               | lea                 eax, [esp + 0x5f]
            //   488d5201             | xor                 eax, eax
            //   84c0                 | dec                 eax

        $sequence_8 = { 8bf7 8bc6 e9???????? 41b902000000 4533c0 33d2 }
            // n = 6, score = 200
            //   8bf7                 | mov                 dword ptr [ebp - 0x78], esi
            //   8bc6                 | inc                 esp
            //   e9????????           |                     
            //   41b902000000         | mov                 eax, esi
            //   4533c0               | dec                 eax
            //   33d2                 | mov                 dword ptr [esp + 0x60], eax

        $sequence_9 = { e8???????? e8???????? e8???????? c705????????04000000 }
            // n = 4, score = 200
            //   e8????????           |                     
            //   e8????????           |                     
            //   e8????????           |                     
            //   c705????????04000000     |     

        $sequence_10 = { 0fb684c8a87a6e00 c1e804 5d c20800 8bff }
            // n = 5, score = 100
            //   0fb684c8a87a6e00     | lea                 esp, [0xd96b]
            //   c1e804               | dec                 ecx
            //   5d                   | cmp                 ebx, esp
            //   c20800               | inc                 ecx
            //   8bff                 | mov                 edx, ecx

        $sequence_11 = { 6a03 53 6a02 6800000040 57 ff15???????? }
            // n = 6, score = 100
            //   6a03                 | mov                 ecx, 2
            //   53                   | inc                 ebp
            //   6a02                 | xor                 eax, eax
            //   6800000040           | xor                 edx, edx
            //   57                   | je                  8
            //   ff15????????         |                     

        $sequence_12 = { 8a4d08 8d41e0 3c5a 770f 0fbec1 0fb688887a7300 }
            // n = 6, score = 100
            //   8a4d08               | lea                 eax, [esp + 0x34]
            //   8d41e0               | push                0x200
            //   3c5a                 | push                eax
            //   770f                 | push                eax
            //   0fbec1               | lea                 ecx, [esp + 0x94]
            //   0fb688887a7300       | push                ecx

        $sequence_13 = { 448bcf c644242017 e8???????? 8bcb }
            // n = 4, score = 100
            //   448bcf               | sar                 edx, 0xc
            //   c644242017           | mov                 eax, edx
            //   e8????????           |                     
            //   8bcb                 | shr                 eax, 0x1f

        $sequence_14 = { 81c434020000 c3 8d442434 6800020000 50 ff15???????? }
            // n = 6, score = 100
            //   81c434020000         | dec                 eax
            //   c3                   | mov                 dword ptr [edx], ecx
            //   8d442434             | inc                 esp
            //   6800020000           | mov                 eax, ebp
            //   50                   | dec                 eax
            //   ff15????????         |                     

        $sequence_15 = { 8bec 8b4508 83f80b 7719 ff24851fb07200 6a04 }
            // n = 6, score = 100
            //   8bec                 | jne                 9
            //   8b4508               | push                0x2710
            //   83f80b               | jmp                 0xc
            //   7719                 | push                0xea60
            //   ff24851fb07200       | mov                 byte ptr [esp + 0x27], 0xff
            //   6a04                 | mov                 byte ptr [esp + 0x28], 0x3c

        $sequence_16 = { 3b7ddc 0f82eefeffff eb29 8b55d4 8a07 8b0c9580f16e00 }
            // n = 6, score = 100
            //   3b7ddc               | lea                 eax, [ebp + 0x90]
            //   0f82eefeffff         | nop                 word ptr [eax + eax]
            //   eb29                 | inc                 sp
            //   8b55d4               | cmp                 dword ptr [eax], ebp
            //   8a07                 | je                  0x17
            //   8b0c9580f16e00       | dec                 eax

        $sequence_17 = { 458bc5 498bcc e8???????? 85c0 0f84c1000000 }
            // n = 5, score = 100
            //   458bc5               | cmp                 dh, byte ptr [ebx]
            //   498bcc               | cmp                 ecx, dword ptr [ebx + 0x3b]
            //   e8????????           |                     
            //   85c0                 | push                edx
            //   0f84c1000000         | cmp                 ebx, dword ptr [esi + 0x3b]

        $sequence_18 = { 8975cc 8d041f 8975d0 8975e0 8975f0 c745f4fc7d6e00 }
            // n = 6, score = 100
            //   8975cc               | mov                 eax, esp
            //   8d041f               | sub                 eax, edi
            //   8975d0               | cmp                 eax, ebx
            //   8975e0               | inc                 esp
            //   8975f0               | mov                 ecx, edi
            //   c745f4fc7d6e00       | mov                 byte ptr [esp + 0x20], 0x17

        $sequence_19 = { 0f43c8 fec1 888c3ac4000500 6646896c8d02 6644896c9d02 }
            // n = 5, score = 100
            //   0f43c8               | sub                 esp, 0x88
            //   fec1                 | dec                 eax
            //   888c3ac4000500       | lea                 ecx, [0x114f5]
            //   6646896c8d02         | dec                 eax
            //   6644896c9d02         | mov                 dword ptr [esp + 0x58], eax

        $sequence_20 = { 4c8d0581f2ffff 4533c9 33d2 33c9 }
            // n = 4, score = 100
            //   4c8d0581f2ffff       | cmovae              ecx, eax
            //   4533c9               | inc                 cl
            //   33d2                 | mov                 byte ptr [edx + edi + 0x500c4], cl
            //   33c9                 | inc                 si

        $sequence_21 = { 894df0 8b34cd40a96e00 8b4d08 6a5a }
            // n = 4, score = 100
            //   894df0               | jmp                 0x2d
            //   8b34cd40a96e00       | cmp                 eax, -1
            //   8b4d08               | jne                 0x28
            //   6a5a                 | dec                 esp

        $sequence_22 = { 899df0f3ffff 8d4201 0f1f00 8a0a 42 84c9 }
            // n = 6, score = 100
            //   899df0f3ffff         | mov                 byte ptr [esp + 0x29], 0xa0
            //   8d4201               | mov                 byte ptr [esp + 0x2a], 0xb1
            //   0f1f00               | mov                 byte ptr [esp + 0x2b], 0xca
            //   8a0a                 | mov                 byte ptr [esp + 0x2c], 0x23
            //   42                   | add                 esp, 0x234
            //   84c9                 | ret                 

        $sequence_23 = { 8b4514 40 c745ecc89b7200 894df8 8945fc 64a100000000 8945e8 }
            // n = 7, score = 100
            //   8b4514               | add                 esp, 4
            //   40                   | cmp                 edx, ecx
            //   c745ecc89b7200       | cmp                 ebx, eax
            //   894df8               | cmp                 esp, ebp
            //   8945fc               | cmp                 ebx, dword ptr [ecx - 0x5ac361c4]
            //   64a100000000         | cmp                 al, 0xae
            //   8945e8               | cmp                 al, 0xb5

        $sequence_24 = { e8???????? 85c0 0f8474030000 4889bc24d8000000 }
            // n = 4, score = 100
            //   e8????????           |                     
            //   85c0                 | push                eax
            //   0f8474030000         | call                esi
            //   4889bc24d8000000     | mov                 dword ptr [edi + 0xc], 0

        $sequence_25 = { 7507 6810270000 eb05 6860ea0000 }
            // n = 4, score = 100
            //   7507                 | dec                 eax
            //   6810270000           | mov                 ecx, dword ptr [edi + 0x10]
            //   eb05                 | dec                 eax
            //   6860ea0000           | test                ecx, ecx

        $sequence_26 = { 89442464 8b4220 89442468 e8???????? }
            // n = 4, score = 100
            //   89442464             | mov                 dword ptr [ebp + ecx*4 + 2], ebp
            //   8b4220               | inc                 sp
            //   89442468             | mov                 dword ptr [ebp + ebx*4 + 2], ebp
            //   e8????????           |                     

        $sequence_27 = { 4881ec88000000 488d0df5140100 ff15???????? 488b05???????? 4889442458 }
            // n = 5, score = 100
            //   4881ec88000000       | xor                 ecx, ecx
            //   488d0df5140100       | mov                 dword ptr [esp + 0x28], 0x8000000
            //   ff15????????         |                     
            //   488b05????????       |                     
            //   4889442458           | dec                 eax

        $sequence_28 = { 450f47c6 ff15???????? 03bc2488000000 413bfc 72ce }
            // n = 5, score = 100
            //   450f47c6             | dec                 esp
            //   ff15????????         |                     
            //   03bc2488000000       | lea                 eax, [0xfffff281]
            //   413bfc               | inc                 ebp
            //   72ce                 | xor                 ecx, ecx

        $sequence_29 = { 745d 68c0d40100 ff95ecf7ffff ff049d30f66e00 68d0070000 ff95ecf7ffff }
            // n = 6, score = 100
            //   745d                 | sar                 edx, 8
            //   68c0d40100           | mov                 dword ptr [ebp - 0x31], edx
            //   ff95ecf7ffff         | movzx               ecx, byte ptr [ebp - 0x2f]
            //   ff049d30f66e00       | mov                 byte ptr [ebp - 0x37], dl
            //   68d0070000           | mov                 byte ptr [ebp - 0x39], cl
            //   ff95ecf7ffff         | movzx               ecx, byte ptr [ebp - 0x30]

        $sequence_30 = { 418bd1 c1fa08 8955cf 0fb64dd1 8855c9 884dc7 0fb64dd0 }
            // n = 7, score = 100
            //   418bd1               | movsx               eax, cl
            //   c1fa08               | movzx               ecx, byte ptr [eax + 0x737a88]
            //   8955cf               | mov                 eax, dword ptr [ebp + 0x14]
            //   0fb64dd1             | inc                 eax
            //   8855c9               | mov                 dword ptr [ebp - 0x14], 0x729bc8
            //   884dc7               | mov                 dword ptr [ebp - 8], ecx
            //   0fb64dd0             | mov                 dword ptr [ebp - 4], eax

        $sequence_31 = { 8bf0 8b470c 85c0 740a 50 ffd6 c7470c00000000 }
            // n = 7, score = 100
            //   8bf0                 | cmp                 al, 0xbd
            //   8b470c               | inc                 eax
            //   85c0                 | mov                 dword ptr [ebp - 0xa3c], eax
            //   740a                 | lea                 edx, [ebp - 0x630]
            //   50                   | shl                 eax, 9
            //   ffd6                 | lea                 ecx, [eax + 0x73f670]
            //   c7470c00000000       | sub                 edx, ecx

        $sequence_32 = { 0f83d5000000 660f1f440000 418bc4 2bc7 3bc3 }
            // n = 5, score = 100
            //   0f83d5000000         | push                0x3b
            //   660f1f440000         | jge                 0x46
            //   418bc4               | mov                 eax, 0x68db8bad
            //   2bc7                 | inc                 ecx
            //   3bc3                 | imul                eax

        $sequence_33 = { 6b45e430 8945e0 8d80d0e16e00 8945e4 }
            // n = 4, score = 100
            //   6b45e430             | mov                 ecx, ebx
            //   8945e0               | dec                 eax
            //   8d80d0e16e00         | mov                 ecx, edi
            //   8945e4               | dec                 eax

        $sequence_34 = { c1f906 6bd030 8b45fc 03148d80f16e00 8b00 894218 }
            // n = 6, score = 100
            //   c1f906               | mov                 ecx, esp
            //   6bd030               | test                eax, eax
            //   8b45fc               | je                  0xc9
            //   03148d80f16e00       | jae                 0xdb
            //   8b00                 | nop                 word ptr [eax + eax]
            //   894218               | inc                 ecx

        $sequence_35 = { f7d8 c703???????? 6a00 1bc0 c7430400000000 }
            // n = 5, score = 100
            //   f7d8                 | push                edi
            //   c703????????         |                     
            //   6a00                 | mov                 dword ptr [esp + 0x14], eax
            //   1bc0                 | mov                 edx, ebx
            //   c7430400000000       | mov                 esi, 0x104

        $sequence_36 = { c6442427ff c64424283c c6442429a0 c644242ab1 c644242bca c644242c23 }
            // n = 6, score = 100
            //   c6442427ff           | je                  0x15
            //   c64424283c           | jne                 0xffffffb0
            //   c6442429a0           | dec                 eax
            //   c644242ab1           | mov                 ecx, dword ptr [eax]
            //   c644242bca           | inc                 ebp
            //   c644242c23           | xor                 ecx, ecx

        $sequence_37 = { ff15???????? 89442414 8bd3 be04010000 }
            // n = 4, score = 100
            //   ff15????????         |                     
            //   89442414             | call                esi
            //   8bd3                 | dec                 eax
            //   be04010000           | mov                 dword ptr [edi + 0x18], ebx

        $sequence_38 = { 418bd5 ff15???????? 488bd8 4883f8ff 0f84d8000000 4c8d442468 ba7e660480 }
            // n = 7, score = 100
            //   418bd5               | mov                 eax, dword ptr fs:[0]
            //   ff15????????         |                     
            //   488bd8               | mov                 dword ptr [ebp - 0x18], eax
            //   4883f8ff             | mov                 esi, eax
            //   0f84d8000000         | mov                 eax, dword ptr [edi + 0xc]
            //   4c8d442468           | test                eax, eax
            //   ba7e660480           | je                  0x11

        $sequence_39 = { 40 8985c4f5ffff 8d95d0f9ffff c1e009 8d8870f67300 2bd1 }
            // n = 6, score = 100
            //   40                   | mov                 edx, dword ptr [esp + 0x14]
            //   8985c4f5ffff         | mov                 ecx, 0x10
            //   8d95d0f9ffff         | push                3
            //   c1e009               | push                ebx
            //   8d8870f67300         | push                2
            //   2bd1                 | push                0x40000000

        $sequence_40 = { 895c2418 897c241c 75e3 8b442410 8b542414 b910000000 }
            // n = 6, score = 100
            //   895c2418             | dec                 eax
            //   897c241c             | lea                 edx, [edx + 1]
            //   75e3                 | test                al, al
            //   8b442410             | mov                 esi, edi
            //   8b542414             | mov                 eax, esi
            //   b910000000           | inc                 ecx

        $sequence_41 = { 8b45e4 8b0c8580f16e00 8b45e8 f644012880 7446 0fbec3 83e800 }
            // n = 7, score = 100
            //   8b45e4               | inc                 ecx
            //   8b0c8580f16e00       | mov                 edx, ebp
            //   8b45e8               | dec                 eax
            //   f644012880           | mov                 ebx, eax
            //   7446                 | dec                 eax
            //   0fbec3               | cmp                 eax, -1
            //   83e800               | je                  0xe2

        $sequence_42 = { 3bd1 3bd8 3be5 3b993c9e3ca5 3cae 3cb5 3cbd }
            // n = 7, score = 100
            //   3bd1                 | test                ecx, ecx
            //   3bd8                 | je                  0x14
            //   3be5                 | call                edi
            //   3b993c9e3ca5         | mov                 dword ptr [esp + 0x18], ebx
            //   3cae                 | mov                 dword ptr [esp + 0x1c], edi
            //   3cb5                 | jne                 0xffffffe9
            //   3cbd                 | mov                 eax, dword ptr [esp + 0x10]

        $sequence_43 = { e8???????? eb2b 83f8ff 7526 4c8d256bd90000 493bdc }
            // n = 6, score = 100
            //   e8????????           |                     
            //   eb2b                 | test                cl, cl
            //   83f8ff               | mov                 cl, byte ptr [ebp + 8]
            //   7526                 | lea                 eax, [ecx - 0x20]
            //   4c8d256bd90000       | cmp                 al, 0x5a
            //   493bdc               | ja                  0x16

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