SYMBOLCOMMON_NAMEaka. SYNONYMS
win.bankshot (Back to overview)

Bankshot

aka: COPPERHEDGE, FoggyBrass

Actor(s): Lazarus Group

VTCollection    

There is no description at this point.

References
2023-08-30Kaspersky LabsDavid Emm
IT threat evolution in Q2 2023
3CX Backdoor Bankshot BLINDINGCAN GoldMax Kazuar QUIETCANARY tomiris GoldenJackal
2023-04-12Kaspersky LabsSeongsu Park
Following the Lazarus group by tracking DeathNote campaign
Bankshot BLINDINGCAN ForestTiger LambLoad LPEClient MimiKatz NedDnLoader Racket Downloader Volgmer
2022-09-10Malversegreenplan
Realizziamo un C&C Server in Python (Bankshot)
Bankshot
2022-04-20CISACISA
TraderTraitor: North Korean State-Sponsored APT Targets Blockchain Companies
Bankshot TraderTraitor
2022-04-18CISACISA, FBI, U.S. Department of the Treasury
AA22-108A: TraderTraitor: North Korean State-Sponsored APT Targets Blockchain Companies (PDF)
FastCash Bankshot
2022-04-18CISACISA, FBI, U.S. Department of the Treasury
Alert (AA22-108A): TraderTraitor: North Korean State-Sponsored APT Targets Blockchain Companies
Bankshot
2021-10-08Virus BulletinSeongsu Park
Multi-universe of adversary: multiple campaigns of the Lazarus group and their connections
Dacls AppleJeus AppleJeus Bankshot BookCodes RAT Dacls DRATzarus LCPDot LPEClient
2021-02-28PWC UKPWC UK
Cyber Threats 2020: A Year in Retrospect
elf.wellmess FlowerPower PowGoop 8.t Dropper Agent.BTZ Agent Tesla Appleseed Ave Maria Bankshot BazarBackdoor BLINDINGCAN Chinoxy Conti Cotx RAT Crimson RAT DUSTMAN Emotet FriedEx FunnyDream Hakbit Mailto Maze METALJACK Nefilim Oblique RAT Pay2Key PlugX QakBot REvil Ryuk StoneDrill StrongPity SUNBURST SUPERNOVA TrickBot TurlaRPC Turla SilentMoon WastedLocker WellMess Winnti ZeroCleare APT10 APT23 APT27 APT31 APT41 BlackTech BRONZE EDGEWOOD Inception Framework MUSTANG PANDA Red Charon Red Nue Sea Turtle Tonto Team
2020-08-19US-CERTUS-CERT
Malware Analysis Report (AR20-232A)
Bankshot BLINDINGCAN
2020-06-23ReversingLabsKarlo Zanki
Hidden Cobra - from a shed skin to the viper’s nest
Bankshot PEBBLEDASH TAINTEDSCRIBE
2020-05-12US-CERTUS-CERT
MAR-10288834-1.v1 – North Korean Remote Access Tool: COPPERHEDGE
Bankshot
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-01-01SecureworksSecureWorks
NICKEL GLADSTONE
AlphaNC Bankshot Ratankba Lazarus Group
2018-10-03Virus BulletinMichal Poslušný, Peter Kálnai
Lazarus Group A Mahjong Game Played with Different Sets of Tiles
Bankshot BanPolMex RAT FuwuqiDrama HOTWAX KillDisk (Lazarus) NACHOCHEESE REDSHAWL WannaCryptor
2017-12-13US-CERTUS-CERT
Malware Analysis Report (MAR) - 10135536-B
BADCALL Bankshot
Yara Rules
[TLP:WHITE] win_bankshot_auto (20230808 | Detects win.bankshot.)
rule win_bankshot_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-12-06"
        version = "1"
        description = "Detects win.bankshot."
        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.bankshot"
        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 = { 8bf8 8d5101 8a01 41 84c0 75f9 57 }
            // n = 7, score = 300
            //   8bf8                 | dec                 eax
            //   8d5101               | lea                 ecx, [0x961e]
            //   8a01                 | mov                 ebx, eax
            //   41                   | test                ecx, ecx
            //   84c0                 | jne                 0x1bb
            //   75f9                 | dec                 eax
            //   57                   | lea                 ecx, [esp + 0x350]

        $sequence_1 = { 8bec 81ec48040000 a1???????? 33c5 8945f8 53 }
            // n = 6, score = 300
            //   8bec                 | dec                 eax
            //   81ec48040000         | mov                 dword ptr [esp + 0x30], 0x80000002
            //   a1????????           |                     
            //   33c5                 | dec                 eax
            //   8945f8               | lea                 ecx, [esp + 0x240]
            //   53                   | xor                 edx, edx

        $sequence_2 = { e9???????? 57 33ff 8bcf 8bc7 894de4 3998c0e10110 }
            // n = 7, score = 200
            //   e9????????           |                     
            //   57                   | or                  byte ptr [esi + edx + 0x19], al
            //   33ff                 | mov                 eax, edi
            //   8bcf                 | mov                 dword ptr [ebp - 0x1c], ecx
            //   8bc7                 | cmp                 dword ptr [eax + 0x1001e1c0], ebx
            //   894de4               | je                  0xf9
            //   3998c0e10110         | test                ebx, ebx

        $sequence_3 = { c74048b8e40110 8b4508 6689486c 8b4508 66898872010000 8b4508 83a04c03000000 }
            // n = 7, score = 200
            //   c74048b8e40110       | jbe                 0xfffffff2
            //   8b4508               | mov                 eax, dword ptr [ebp + 8]
            //   6689486c             | mov                 dword ptr [eax + 0x350], ecx
            //   8b4508               | mov                 eax, dword ptr [ebp + 8]
            //   66898872010000       | pop                 ecx
            //   8b4508               | mov                 dword ptr [eax + 0x48], 0x1001e4b8
            //   83a04c03000000       | mov                 eax, dword ptr [ebp + 8]

        $sequence_4 = { 33c9 33d2 66898c45f47fffff 8d8df47fffff 8d7102 668b01 83c102 }
            // n = 7, score = 200
            //   33c9                 | mov                 edi, eax
            //   33d2                 | lea                 edx, [ecx + 1]
            //   66898c45f47fffff     | mov                 al, byte ptr [ecx]
            //   8d8df47fffff         | inc                 ecx
            //   8d7102               | test                al, al
            //   668b01               | jne                 5
            //   83c102               | push                edi

        $sequence_5 = { 89855c38ffff fec1 888d6438ffff 85fa 0f84a4000000 }
            // n = 5, score = 200
            //   89855c38ffff         | xor                 byte ptr [ebp + ecx - 0xc26c], 0xaa
            //   fec1                 | inc                 ecx
            //   888d6438ffff         | cmp                 ecx, edx
            //   85fa                 | jl                  4
            //   0f84a4000000         | cmp                 dword ptr [ebp - 0xc26c], 0x2000

        $sequence_6 = { 8b45fc 817848b8e40110 7409 ff7048 e8???????? }
            // n = 5, score = 200
            //   8b45fc               | lea                 ecx, [ebp - 0x110]
            //   817848b8e40110       | push                ecx
            //   7409                 | lea                 edx, [ebp - 0x118]
            //   ff7048               | mov                 ecx, dword ptr [edx*4 + 0x7188c8]
            //   e8????????           |                     

        $sequence_7 = { 0f84a6000000 680c400000 8d85e4bfffff 53 50 }
            // n = 5, score = 200
            //   0f84a6000000         | mov                 ebp, esp
            //   680c400000           | sub                 esp, 0x448
            //   8d85e4bfffff         | xor                 eax, ebp
            //   53                   | mov                 dword ptr [ebp - 8], eax
            //   50                   | push                ebx

        $sequence_8 = { 680c000200 e8???????? 8bf8 83c404 85ff 0f8429060000 6915????????04010000 }
            // n = 7, score = 200
            //   680c000200           | mov                 word ptr [ebp + eax*2 - 0x800c], cx
            //   e8????????           |                     
            //   8bf8                 | lea                 ecx, [ebp - 0x800c]
            //   83c404               | lea                 esi, [ecx + 2]
            //   85ff                 | mov                 ax, word ptr [ecx]
            //   0f8429060000         | add                 ecx, 2
            //   6915????????04010000     |     

        $sequence_9 = { 83c40c 8d85bcbaffff 33f6 6828050000 56 50 }
            // n = 6, score = 200
            //   83c40c               | jae                 0xdf2
            //   8d85bcbaffff         | lea                 ecx, [ebp - 0xc260]
            //   33f6                 | lea                 edx, [ecx + 1]
            //   6828050000           | mov                 al, byte ptr [ecx]
            //   56                   | inc                 ecx
            //   50                   | test                al, al

        $sequence_10 = { e8???????? 83c40c e8???????? 99 b907000000 }
            // n = 5, score = 200
            //   e8????????           |                     
            //   83c40c               | mov                 eax, dword ptr [ebx*4 + 0x10017fc8]
            //   e8????????           |                     
            //   99                   | mov                 dword ptr [ebp - 0x2c], eax
            //   b907000000           | mov                 dword ptr [ebp - 0x18], edx

        $sequence_11 = { e8???????? 83c404 89861c020000 8b45e0 8d4e0c 6a06 8d90c4e10110 }
            // n = 7, score = 200
            //   e8????????           |                     
            //   83c404               | mov                 eax, dword ptr [ebp - 4]
            //   89861c020000         | cmp                 dword ptr [eax + 0x48], 0x1001e4b8
            //   8b45e0               | je                  0x18
            //   8d4e0c               | push                dword ptr [eax + 0x48]
            //   6a06                 | cmp                 dword ptr [eax + 0x1001e1c0], ebx
            //   8d90c4e10110         | je                  0xf0

        $sequence_12 = { 0f1f4000 80b40d943dffffaa 41 3bca 7cf3 }
            // n = 5, score = 200
            //   0f1f4000             | push                ebp
            //   80b40d943dffffaa     | mov                 ebp, esp
            //   41                   | sub                 esp, 0x448
            //   3bca                 | xor                 eax, ebp
            //   7cf3                 | mov                 dword ptr [ebp - 8], eax

        $sequence_13 = { c700???????? 8b4508 898850030000 8b4508 59 c74048b8e40110 }
            // n = 6, score = 200
            //   c700????????         |                     
            //   8b4508               | lea                 edx, [eax + 0x1001e1c4]
            //   898850030000         | mov                 al, byte ptr [edi + 0x1001e1bc]
            //   8b4508               | or                  byte ptr [esi + edx + 0x19], al
            //   59                   | inc                 edx
            //   c74048b8e40110       | movzx               eax, byte ptr [ecx + 1]

        $sequence_14 = { 50 e8???????? 83c40c 6b45e430 8945e0 8d80d0e10110 }
            // n = 6, score = 200
            //   50                   | mov                 eax, dword ptr [ebp + 8]
            //   e8????????           |                     
            //   83c40c               | pop                 ecx
            //   6b45e430             | mov                 dword ptr [eax + 0x48], 0x1001e4b8
            //   8945e0               | mov                 eax, dword ptr [ebp + 8]
            //   8d80d0e10110         | mov                 dword ptr [ebp - 0x20], eax

        $sequence_15 = { 8b542420 8987d0000000 8b442424 898fd4000000 8917 }
            // n = 5, score = 100
            //   8b542420             | add                 esp, 4
            //   8987d0000000         | jmp                 0x3b
            //   8b442424             | lea                 edx, [ebx + 0xc]
            //   898fd4000000         | push                1
            //   8917                 | lea                 ecx, [esp + 0x14]

        $sequence_16 = { e8???????? 488d0de7030000 e8???????? 33c0 4883c420 }
            // n = 5, score = 100
            //   e8????????           |                     
            //   488d0de7030000       | mov                 dword ptr [esp + 0x60], ebp
            //   e8????????           |                     
            //   33c0                 | mov                 ebx, ebp
            //   4883c420             | dec                 eax

        $sequence_17 = { 488d0d1e960000 c705????????30000000 8bd8 c705????????02000000 48c705????????07000000 48893d???????? }
            // n = 6, score = 100
            //   488d0d1e960000       | lea                 edx, [0x5358]
            //   c705????????30000000     |     
            //   8bd8                 | inc                 ebp
            //   c705????????02000000     |     
            //   48c705????????07000000     |     
            //   48893d????????       |                     

        $sequence_18 = { 8b0c95c8887100 8844192e 8b0495c8887100 804c182d04 ff4604 eb08 }
            // n = 6, score = 100
            //   8b0c95c8887100       | cdq                 
            //   8844192e             | mov                 ecx, 7
            //   8b0495c8887100       | idiv                ecx
            //   804c182d04           | add                 esp, 0xc
            //   ff4604               | cdq                 
            //   eb08                 | mov                 ecx, 7

        $sequence_19 = { 51 ff15???????? 8bf0 83feff 89742410 7544 ff15???????? }
            // n = 7, score = 100
            //   51                   | push                0
            //   ff15????????         |                     
            //   8bf0                 | push                3
            //   83feff               | lea                 eax, [esp + 0x4c0]
            //   89742410             | push                0xc0000000
            //   7544                 | push                eax
            //   ff15????????         |                     

        $sequence_20 = { ff15???????? 68???????? 57 8985bcfbffff }
            // n = 4, score = 100
            //   ff15????????         |                     
            //   68????????           |                     
            //   57                   | jne                 5
            //   8985bcfbffff         | push                edi

        $sequence_21 = { 48c744243002000080 e8???????? 488d8c2440020000 33d2 }
            // n = 4, score = 100
            //   48c744243002000080     | inc    ecx
            //   e8????????           |                     
            //   488d8c2440020000     | mov                 ecx, 0x58
            //   33d2                 | dec                 eax

        $sequence_22 = { 52 8d85c4fbffff 50 ff15???????? 8d8dd0fdffff }
            // n = 5, score = 100
            //   52                   | mov                 edx, dword ptr [esp + 0x20]
            //   8d85c4fbffff         | mov                 dword ptr [edi + 0xd0], eax
            //   50                   | mov                 eax, dword ptr [esp + 0x24]
            //   ff15????????         |                     
            //   8d8dd0fdffff         | mov                 dword ptr [edi + 0xd4], ecx

        $sequence_23 = { 57 83e502 4d ff15???????? 85f6 7407 }
            // n = 6, score = 100
            //   57                   | add                 esp, 0xc
            //   83e502               | cdq                 
            //   4d                   | mov                 ecx, 7
            //   ff15????????         |                     
            //   85f6                 | idiv                ecx
            //   7407                 | add                 esp, 0xc

        $sequence_24 = { 8d1c85b4ef0110 33c0 f00fb10b 8b15???????? 83cfff 8bca }
            // n = 6, score = 100
            //   8d1c85b4ef0110       | imul                esi, esi, 0x30
            //   33c0                 | mov                 ecx, dword ptr [ecx*4 + 0x1001f180]
            //   f00fb10b             | and                 byte ptr [ecx + esi + 0x28], 0xfd
            //   8b15????????         |                     
            //   83cfff               | pop                 edi
            //   8bca                 | pop                 esi

        $sequence_25 = { 7508 8b36 85f6 75e7 eb3a 81c694010000 }
            // n = 6, score = 100
            //   7508                 | ret                 4
            //   8b36                 | mov                 ecx, dword ptr [esp + 0x3c1c]
            //   85f6                 | or                  eax, 0xffffffff
            //   75e7                 | jne                 0x33
            //   eb3a                 | mov                 dword ptr [edi*4 + 0x10017fc8], eax
            //   81c694010000         | test                eax, eax

        $sequence_26 = { e9???????? 8d8df0feffff 51 8d95e8feffff }
            // n = 4, score = 100
            //   e9????????           |                     
            //   8d8df0feffff         | cdq                 
            //   51                   | mov                 ecx, 7
            //   8d95e8feffff         | add                 esp, 0xc

        $sequence_27 = { ff15???????? 8b8df8f3ffff c7410800000000 8b95f8f3ffff 837a0400 }
            // n = 5, score = 100
            //   ff15????????         |                     
            //   8b8df8f3ffff         | add                 esp, 0xc
            //   c7410800000000       | cdq                 
            //   8b95f8f3ffff         | mov                 ecx, 7
            //   837a0400             | add                 esp, 0xc

        $sequence_28 = { 8dbc24de040000 668974245c f3ab 66ab }
            // n = 4, score = 100
            //   8dbc24de040000       | cdq                 
            //   668974245c           | mov                 ecx, 7
            //   f3ab                 | idiv                ecx
            //   66ab                 | push                3

        $sequence_29 = { 85c9 0f85b5010000 488d8c2450030000 e8???????? e9???????? 498d4906 }
            // n = 6, score = 100
            //   85c9                 | lea                 eax, [ecx - 0x2a]
            //   0f85b5010000         | dec                 eax
            //   488d8c2450030000     | lea                 eax, [esp + 0x38]
            //   e8????????           |                     
            //   e9????????           |                     
            //   498d4906             | dec                 eax

        $sequence_30 = { ff15???????? 41b958000000 488d1558530000 458d41d6 }
            // n = 4, score = 100
            //   ff15????????         |                     
            //   41b958000000         | inc                 ecx
            //   488d1558530000       | mov                 eax, 0x4000
            //   458d41d6             | dec                 eax

        $sequence_31 = { 8895affbffff 8b859cfbffff 8a8daffbffff 8808 8b9588fbffff }
            // n = 5, score = 100
            //   8895affbffff         | idiv                ecx
            //   8b859cfbffff         | push                edx
            //   8a8daffbffff         | lea                 eax, [ebp - 0x43c]
            //   8808                 | push                eax
            //   8b9588fbffff         | lea                 ecx, [ebp - 0x230]

        $sequence_32 = { 8b15???????? 6a01 8d4c2414 6a04 51 8944241c }
            // n = 6, score = 100
            //   8b15????????         |                     
            //   6a01                 | cdq                 
            //   8d4c2414             | mov                 ecx, 7
            //   6a04                 | add                 esp, 0xc
            //   51                   | cdq                 
            //   8944241c             | mov                 ecx, 7

        $sequence_33 = { c1f906 6bc030 03048d80f10110 50 ff15???????? 5d }
            // n = 6, score = 100
            //   c1f906               | cmp                 ecx, dword ptr [eax*8 + 0x10017b20]
            //   6bc030               | je                  0x37
            //   03048d80f10110       | inc                 eax
            //   50                   | mov                 dword ptr [ebp - 0x20], 0x1001bae0
            //   ff15????????         |                     
            //   5d                   | jmp                 0xffffffbd

        $sequence_34 = { 33cc e8???????? 8be5 5d c20400 8b8c241c3c0000 83c8ff }
            // n = 7, score = 100
            //   33cc                 | mov                 ebp, esp
            //   e8????????           |                     
            //   8be5                 | sub                 esp, 0x448
            //   5d                   | xor                 eax, ebp
            //   c20400               | mov                 dword ptr [ebp - 8], eax
            //   8b8c241c3c0000       | push                ebx
            //   83c8ff               | mov                 edi, eax

        $sequence_35 = { 7531 e8???????? 8904bdc87f0110 85c0 7514 }
            // n = 5, score = 100
            //   7531                 | lea                 edx, [ecx + 1]
            //   e8????????           |                     
            //   8904bdc87f0110       | mov                 al, byte ptr [ecx]
            //   85c0                 | inc                 ecx
            //   7514                 | test                al, al

        $sequence_36 = { 6a03 6a00 6a03 8d8424c0040000 68000000c0 50 ff15???????? }
            // n = 7, score = 100
            //   6a03                 | jne                 0xffffffef
            //   6a00                 | jmp                 0x44
            //   6a03                 | add                 esi, 0x194
            //   8d8424c0040000       | jmp                 5
            //   68000000c0           | push                eax
            //   50                   | push                -0xa
            //   ff15????????         |                     

        $sequence_37 = { 33d2 488bc8 4889742448 ff15???????? 896c2460 8bdd }
            // n = 6, score = 100
            //   33d2                 | xor                 edx, edx
            //   488bc8               | dec                 eax
            //   4889742448           | mov                 ecx, eax
            //   ff15????????         |                     
            //   896c2460             | dec                 eax
            //   8bdd                 | mov                 dword ptr [esp + 0x48], esi

        $sequence_38 = { 488d9560040000 41b800400000 488bce 89442460 89442468 4889442420 ff15???????? }
            // n = 7, score = 100
            //   488d9560040000       | lea                 ecx, [0x3e7]
            //   41b800400000         | xor                 eax, eax
            //   488bce               | dec                 eax
            //   89442460             | add                 esp, 0x20
            //   89442468             | dec                 eax
            //   4889442420           | lea                 edx, [ebp + 0x460]
            //   ff15????????         |                     

        $sequence_39 = { e8???????? 83c404 eb36 8d530c }
            // n = 4, score = 100
            //   e8????????           |                     
            //   83c404               | mov                 eax, dword ptr [edi*4 + 0x10017fc8]
            //   eb36                 | or                  dword ptr [ebx + eax + 0x18], 0xffffffff
            //   8d530c               | add                 esp, 0xc

        $sequence_40 = { 8d7201 8a0a 42 84c9 75f9 6a00 }
            // n = 6, score = 100
            //   8d7201               | xor                 eax, ebp
            //   8a0a                 | mov                 dword ptr [ebp - 8], eax
            //   42                   | push                ebx
            //   84c9                 | xor                 ecx, esp
            //   75f9                 | mov                 esp, ebp
            //   6a00                 | pop                 ebp

        $sequence_41 = { 8815???????? 488d442438 488d353a490000 41b919000200 4533c0 48c7c102000080 }
            // n = 6, score = 100
            //   8815????????         |                     
            //   488d442438           | mov                 ecx, esi
            //   488d353a490000       | mov                 dword ptr [esp + 0x60], eax
            //   41b919000200         | mov                 dword ptr [esp + 0x68], eax
            //   4533c0               | dec                 eax
            //   48c7c102000080       | mov                 dword ptr [esp + 0x20], eax

        $sequence_42 = { 6bd030 895de4 8b049dc87f0110 8945d4 8955e8 8a5c1029 80fb02 }
            // n = 7, score = 100
            //   6bd030               | sub                 esp, 0x448
            //   895de4               | xor                 eax, ebp
            //   8b049dc87f0110       | mov                 dword ptr [ebp - 8], eax
            //   8945d4               | push                ebx
            //   8955e8               | push                ebp
            //   8a5c1029             | mov                 ebp, esp
            //   80fb02               | sub                 esp, 0x448

        $sequence_43 = { 8b8544d4ffff 83c001 6689856cd4ffff 8a4d1c }
            // n = 4, score = 100
            //   8b8544d4ffff         | push                ecx
            //   83c001               | mov                 ecx, dword ptr [ebp - 4]
            //   6689856cd4ffff       | mov                 eax, 1
            //   8a4d1c               | mov                 esp, ebp

        $sequence_44 = { 51 68???????? 8b4dfc e8???????? b801000000 8be5 }
            // n = 6, score = 100
            //   51                   | mov                 dword ptr [edi], edx
            //   68????????           |                     
            //   8b4dfc               | push                0xa00
            //   e8????????           |                     
            //   b801000000           | push                0x1990
            //   8be5                 | push                eax

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