SYMBOLCOMMON_NAMEaka. SYNONYMS
win.mozart (Back to overview)

mozart

VTCollection    

According to PCrisk, Mozart is malicious software that allows attackers (cyber criminals) to execute various commands on an infected computer through the DNS protocol. This communication method helps cyber criminals to avoid detection via security software. Mozart is categorized as a malware loader and executes commands that cause download and installation of malicious software.

References
2015-01-11Security Kitten BlogNick Hoffman
The Mozart RAM Scraper
mozart
Yara Rules
[TLP:WHITE] win_mozart_auto (20260504 | Detects win.mozart.)
rule win_mozart_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.mozart."
        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.mozart"
        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 = { 7471 57 8b15???????? a1???????? }
            // n = 4, score = 200
            //   7471                 | je                  0x73
            //   57                   | push                edi
            //   8b15????????         |                     
            //   a1????????           |                     

        $sequence_1 = { 8bc7 2bc6 50 51 56 }
            // n = 5, score = 200
            //   8bc7                 | mov                 eax, edi
            //   2bc6                 | sub                 eax, esi
            //   50                   | push                eax
            //   51                   | push                ecx
            //   56                   | push                esi

        $sequence_2 = { c3 ff15???????? 33d2 3d14050000 0f95c2 4a 83e204 }
            // n = 7, score = 200
            //   c3                   | ret                 
            //   ff15????????         |                     
            //   33d2                 | xor                 edx, edx
            //   3d14050000           | cmp                 eax, 0x514
            //   0f95c2               | setne               dl
            //   4a                   | dec                 edx
            //   83e204               | and                 edx, 4

        $sequence_3 = { f6c410 741a 8b542420 8b0a 45 3be9 760a }
            // n = 7, score = 200
            //   f6c410               | test                ah, 0x10
            //   741a                 | je                  0x1c
            //   8b542420             | mov                 edx, dword ptr [esp + 0x20]
            //   8b0a                 | mov                 ecx, dword ptr [edx]
            //   45                   | inc                 ebp
            //   3be9                 | cmp                 ebp, ecx
            //   760a                 | jbe                 0xc

        $sequence_4 = { 3bca 736e 8bd0 c1ea0c 83e23f }
            // n = 5, score = 200
            //   3bca                 | cmp                 ecx, edx
            //   736e                 | jae                 0x70
            //   8bd0                 | mov                 edx, eax
            //   c1ea0c               | shr                 edx, 0xc
            //   83e23f               | and                 edx, 0x3f

        $sequence_5 = { 8d3c85c0db4000 8b07 83e61f c1e603 }
            // n = 4, score = 200
            //   8d3c85c0db4000       | lea                 edi, [eax*4 + 0x40dbc0]
            //   8b07                 | mov                 eax, dword ptr [edi]
            //   83e61f               | and                 esi, 0x1f
            //   c1e603               | shl                 esi, 3

        $sequence_6 = { 8bd9 33d2 85db 7c12 8d0495f8c84000 }
            // n = 5, score = 200
            //   8bd9                 | mov                 ebx, ecx
            //   33d2                 | xor                 edx, edx
            //   85db                 | test                ebx, ebx
            //   7c12                 | jl                  0x14
            //   8d0495f8c84000       | lea                 eax, [edx*4 + 0x40c8f8]

        $sequence_7 = { 84c0 7546 8d942418010000 52 56 e8???????? }
            // n = 6, score = 200
            //   84c0                 | test                al, al
            //   7546                 | jne                 0x48
            //   8d942418010000       | lea                 edx, [esp + 0x118]
            //   52                   | push                edx
            //   56                   | push                esi
            //   e8????????           |                     

        $sequence_8 = { 50 6a01 ffd6 8b35???????? 50 ffd6 8b4c2408 }
            // n = 7, score = 200
            //   50                   | push                eax
            //   6a01                 | push                1
            //   ffd6                 | call                esi
            //   8b35????????         |                     
            //   50                   | push                eax
            //   ffd6                 | call                esi
            //   8b4c2408             | mov                 ecx, dword ptr [esp + 8]

        $sequence_9 = { 83c408 5d c20400 833d????????02 750d }
            // n = 5, score = 200
            //   83c408               | add                 esp, 8
            //   5d                   | pop                 ebp
            //   c20400               | ret                 4
            //   833d????????02       |                     
            //   750d                 | jne                 0xf

    condition:
        7 of them and filesize < 114688
}
[TLP:WHITE] win_mozart_w0   (20180125 | Detects samples of the Mozart POS RAM scraping utility)
rule win_mozart_w0 {
    meta:
        author = "Nick Hoffman"
        description = "Detects samples of the Mozart POS RAM scraping utility"
        malpedia_reference = "https://malpedia.caad.fkie.fraunhofer.de/details/win.mozart"
        malpedia_version = "20180125"
        malpedia_license = "CC BY-NC-SA 4.0"
        malpedia_sharing = "TLP:WHITE"
    strings:
        $pdb = "z:\\Slender\\mozart\\mozart\\Release\\mozart.pdb" nocase wide ascii
        $output = {67 61 72 62 61 67 65 2E 74 6D 70 00}
        $service_name = "NCR SelfServ Platform Remote Monitor" nocase wide ascii
        $service_name_short = "NCR_RemoteMonitor"
        $encode_data = {B8 08 10 00 00 E8 ?? ?? ?? ?? A1 ?? ?? ?? ?? 53 55 8B AC 24 14 10 00 00 89 84 24 0C 10 00 00 56 8B C5 33 F6 33 DB 8D 50 01 8D A4 24 00 00 00 00 8A 08 40 84 C9 ?? ?? 2B C2 89 44 24 0C ?? ?? 8B 94 24 1C 10 00 00 57 8B FD 2B FA 89 7C 24 10 ?? ?? 8B 7C 24 10 8A 04 17 02 86 E0 BA 40 00 88 02 B8 ?? ?? ?? ?? 46 8D 78 01 8D A4 24 00 00 00 00 8A 08 40 84 C9 ?? ?? 2B C7 3B F0 ?? ?? 33 F6 8B C5 43 42 8D 78 01 8A 08 40 84 C9 ?? ?? 2B C7 3B D8 ?? ?? 5F 8B B4 24 1C 10 00 00 8B C5 C6 04 33 00 8D 50 01 8A 08 40 84 C9 ?? ?? 8B 8C 24 20 10 00 00 2B C2 51 8D 54 24 14 52 50 56 E8 ?? ?? ?? ?? 83 C4 10 8B D6 5E 8D 44 24 0C 8B C8 5D 2B D1 5B 8A 08 88 0C 02 40 84 C9 ?? ?? 8B 8C 24 04 10 00 00 E8 ?? ?? ?? ?? 81 C4 08 10 00 00}
    condition:
        any of ($pdb, $output, $encode_data) or
        all of ($service*)
}
Download all Yara Rules