SYMBOLCOMMON_NAMEaka. SYNONYMS
win.atmspitter (Back to overview)

ATMSpitter

Actor(s): Cobalt


The ATMSpitter family consists of command-line tools designed to control the cash dispenser of an ATM through function calls to either CSCWCNG.dll or MFSXFS.dll.
Both libraries are legitimate Windows drivers used to interact with the components of different ATM models.

References
2020SecureworksSecureWorks
@online{secureworks:2020:gold:983570b, author = {SecureWorks}, title = {{GOLD KINGSWOOD}}, date = {2020}, organization = {Secureworks}, url = {http://www.secureworks.com/research/threat-profiles/gold-kingswood}, language = {English}, urldate = {2020-05-23} } GOLD KINGSWOOD
More_eggs ATMSpitter Cobalt Strike CobInt MimiKatz Cobalt
2020SecureworksSecureWorks
@online{secureworks:2020:gold:1892bc8, author = {SecureWorks}, title = {{GOLD KINGSWOOD}}, date = {2020}, organization = {Secureworks}, url = {https://www.secureworks.com/research/threat-profiles/gold-kingswood}, language = {English}, urldate = {2020-05-23} } GOLD KINGSWOOD
More_eggs ATMSpitter Cobalt Strike CobInt MimiKatz
2019-11-18QuoScientQuoScient
@techreport{quoscient:20191118:intelligence:953ab5b, author = {QuoScient}, title = {{Intelligence Brief New ATMSpitter}}, date = {2019-11-18}, institution = {QuoScient}, url = {https://quoscient.io/reports/QuoINT_INTBRI_New_ATMSpitter.pdf}, language = {English}, urldate = {2020-01-13} } Intelligence Brief New ATMSpitter
ATMSpitter
2019-11-18QuoScientQuoScient
@techreport{quoscient:20191118:quoint:582f7b8, author = {QuoScient}, title = {{QuoINT INTELBRIEF – Actors Exploiting the RCE Vulnerability}}, date = {2019-11-18}, institution = {QuoScient}, url = {https://quoscient.io/reports/QuoINT_INTBRI_ATMSpitter_v2.pdf}, language = {English}, urldate = {2020-01-13} } QuoINT INTELBRIEF – Actors Exploiting the RCE Vulnerability
ATMSpitter
Yara Rules
[TLP:WHITE] win_atmspitter_auto (20210616 | Detects win.atmspitter.)
rule win_atmspitter_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2021-06-10"
        version = "1"
        description = "Detects win.atmspitter."
        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.atmspitter"
        malpedia_rule_date = "20210604"
        malpedia_hash = "be09d5d71e77373c0f538068be31a2ad4c69cfbd"
        malpedia_version = "20210616"
        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 = { 56 57 b910000000 be???????? 8dbc2480000000 f3a5 }
            // n = 6, score = 200
            //   56                   | push                esi
            //   57                   | push                edi
            //   b910000000           | mov                 ecx, 0x10
            //   be????????           |                     
            //   8dbc2480000000       | lea                 edi, dword ptr [esp + 0x80]
            //   f3a5                 | rep movsd           dword ptr es:[edi], dword ptr [esi]

        $sequence_1 = { 83e61f 8bc7 c1f805 c1e606 03348560da4000 }
            // n = 5, score = 200
            //   83e61f               | and                 esi, 0x1f
            //   8bc7                 | mov                 eax, edi
            //   c1f805               | sar                 eax, 5
            //   c1e606               | shl                 esi, 6
            //   03348560da4000       | add                 esi, dword ptr [eax*4 + 0x40da60]

        $sequence_2 = { 33c0 8945e4 3d01010000 7d0d 8a4c181c 888870c64000 }
            // n = 6, score = 200
            //   33c0                 | xor                 eax, eax
            //   8945e4               | mov                 dword ptr [ebp - 0x1c], eax
            //   3d01010000           | cmp                 eax, 0x101
            //   7d0d                 | jge                 0xf
            //   8a4c181c             | mov                 cl, byte ptr [eax + ebx + 0x1c]
            //   888870c64000         | mov                 byte ptr [eax + 0x40c670], cl

        $sequence_3 = { c7430801000000 e8???????? 6a06 89430c 8d4310 8d8984c84000 }
            // n = 6, score = 200
            //   c7430801000000       | mov                 dword ptr [ebx + 8], 1
            //   e8????????           |                     
            //   6a06                 | push                6
            //   89430c               | mov                 dword ptr [ebx + 0xc], eax
            //   8d4310               | lea                 eax, dword ptr [ebx + 0x10]
            //   8d8984c84000         | lea                 ecx, dword ptr [ecx + 0x40c884]

        $sequence_4 = { b8bc100000 e8???????? a1???????? 8a15???????? 53 56 57 }
            // n = 7, score = 200
            //   b8bc100000           | mov                 eax, 0x10bc
            //   e8????????           |                     
            //   a1????????           |                     
            //   8a15????????         |                     
            //   53                   | push                ebx
            //   56                   | push                esi
            //   57                   | push                edi

        $sequence_5 = { 762a 56 e8???????? 8d0445cccd4000 }
            // n = 4, score = 200
            //   762a                 | jbe                 0x2c
            //   56                   | push                esi
            //   e8????????           |                     
            //   8d0445cccd4000       | lea                 eax, dword ptr [eax*2 + 0x40cdcc]

        $sequence_6 = { 8945d8 8bf8 897dd4 8b5dd0 ebab c745e450914000 817de45c914000 }
            // n = 7, score = 200
            //   8945d8               | mov                 dword ptr [ebp - 0x28], eax
            //   8bf8                 | mov                 edi, eax
            //   897dd4               | mov                 dword ptr [ebp - 0x2c], edi
            //   8b5dd0               | mov                 ebx, dword ptr [ebp - 0x30]
            //   ebab                 | jmp                 0xffffffad
            //   c745e450914000       | mov                 dword ptr [ebp - 0x1c], 0x409150
            //   817de45c914000       | cmp                 dword ptr [ebp - 0x1c], 0x40915c

        $sequence_7 = { 83c404 3d20140020 0f8784000000 7470 8d88fdefffdf 83f906 }
            // n = 6, score = 200
            //   83c404               | add                 esp, 4
            //   3d20140020           | cmp                 eax, 0x20001420
            //   0f8784000000         | ja                  0x8a
            //   7470                 | je                  0x72
            //   8d88fdefffdf         | lea                 ecx, dword ptr [eax - 0x20001003]
            //   83f906               | cmp                 ecx, 6

        $sequence_8 = { 83ec24 b90a000000 8d742448 8bfc }
            // n = 4, score = 200
            //   83ec24               | sub                 esp, 0x24
            //   b90a000000           | mov                 ecx, 0xa
            //   8d742448             | lea                 esi, dword ptr [esp + 0x48]
            //   8bfc                 | mov                 edi, esp

        $sequence_9 = { 8b44240c 8b74244c 40 8944240c 3bc6 }
            // n = 5, score = 200
            //   8b44240c             | mov                 eax, dword ptr [esp + 0xc]
            //   8b74244c             | mov                 esi, dword ptr [esp + 0x4c]
            //   40                   | inc                 eax
            //   8944240c             | mov                 dword ptr [esp + 0xc], eax
            //   3bc6                 | cmp                 eax, esi

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