SYMBOLCOMMON_NAMEaka. SYNONYMS
win.troldesh (Back to overview)

Troldesh

aka: Shade
VTCollection     URLhaus            

According to Malwarebyte, Ransomware is a type of malware that prevents users from accessing their system or personal files and demands ransom payment in order to regain access. Ransom.Troldesh is spread by malspam, typically in the form of attached .zip files. This ransomware sometimes uses a CMS on a compromised site to host downloads.

References
2020-05-02 ⋅ Bitdefender ⋅ Bitdefender Team
Shade / Troldesh Ransomware decryption tool
Troldesh
2020-04-27 ⋅ ZDNet ⋅ Catalin Cimpanu
Shade (Troldesh) ransomware shuts down and releases decryption keys
Troldesh
2020-04-26 ⋅ shade-team
Repository with Keys for Shade / Troldesh
Troldesh
2019-10-29 ⋅ Kaspersky Labs ⋅ Kaspersky
ShadeDecryptor tool
Troldesh
2019-06-25 ⋅ Avast ⋅ Jeff Elder
Ransomware strain Troldesh spikes again – Avast tracks new attacks
Troldesh
2019-05-22 ⋅ Palo Alto Networks Unit 42 ⋅ Brad Duncan
Shade Ransomware Hits High-Tech, Wholesale, Education Sectors in U.S, Japan, India, Thailand, Canada
Troldesh
2019-02-20 ⋅ SANS ISC InfoSec Forums ⋅ Brad Duncan
More Russian language malspam pushing Shade (Troldesh) ransomware
Troldesh
2019-01-28 ⋅ ESET Research ⋅ Juraj Jánošík
Russia hit by new wave of ransomware spam
Troldesh
2016-07-13 ⋅ Microsoft ⋅ Microsoft Defender ATP Research Team
Troldesh ransomware influenced by (the) Da Vinci code
Troldesh
2015-09-14 ⋅ Kaspersky Labs ⋅ Fedor Sinitsyn, Victor Alyushin
The Shade Encryptor: a Double Threat
CMSBrute Troldesh
2015-06-01 ⋅ Check Point ⋅ Check Point
“Troldesh” – New Ransomware from Russia
Troldesh
Yara Rules
[TLP:WHITE] win_troldesh_auto (20260917 | Detects win.troldesh.)
rule win_troldesh_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-09-17"
        version = "1"
        description = "Detects win.troldesh."
        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.troldesh"
        malpedia_rule_date = "20260916"
        malpedia_hash = "53a643781c18e08f4a50949af60172d837a0b6f6"
        malpedia_version = "20260917"
        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 = { f7430800400000 0f858b040000 8b45e4 897330 8bf3 894334 e8???????? }
            // n = 7, score = 600
            //   f7430800400000       | test                dword ptr [ebx + 8], 0x4000
            //   0f858b040000         | jne                 0x491
            //   8b45e4               | mov                 eax, dword ptr [ebp - 0x1c]
            //   897330               | mov                 dword ptr [ebx + 0x30], esi
            //   8bf3                 | mov                 esi, ebx
            //   894334               | mov                 dword ptr [ebx + 0x34], eax
            //   e8????????           |                     

        $sequence_1 = { e8???????? 8b4608 8d443018 394610 721e 68???????? 53 }
            // n = 7, score = 600
            //   e8????????           |                     
            //   8b4608               | mov                 eax, dword ptr [esi + 8]
            //   8d443018             | lea                 eax, [eax + esi + 0x18]
            //   394610               | cmp                 dword ptr [esi + 0x10], eax
            //   721e                 | jb                  0x20
            //   68????????           |                     
            //   53                   | push                ebx

        $sequence_2 = { f783d800000000100000 7413 66837ddc17 7523 f783d800000000200000 7517 e8???????? }
            // n = 7, score = 600
            //   f783d800000000100000     | test    dword ptr [ebx + 0xd8], 0x1000
            //   7413                 | je                  0x15
            //   66837ddc17           | cmp                 word ptr [ebp - 0x24], 0x17
            //   7523                 | jne                 0x25
            //   f783d800000000200000     | test    dword ptr [ebx + 0xd8], 0x2000
            //   7517                 | jne                 0x19
            //   e8????????           |                     

        $sequence_3 = { ff15???????? 211e 59 219fc4040000 8b450c ff30 8db710040000 }
            // n = 7, score = 600
            //   ff15????????         |                     
            //   211e                 | and                 dword ptr [esi], ebx
            //   59                   | pop                 ecx
            //   219fc4040000         | and                 dword ptr [edi + 0x4c4], ebx
            //   8b450c               | mov                 eax, dword ptr [ebp + 0xc]
            //   ff30                 | push                dword ptr [eax]
            //   8db710040000         | lea                 esi, [edi + 0x410]

        $sequence_4 = { ff7508 e8???????? 83c40c e9???????? 8b7518 e8???????? 8bce }
            // n = 7, score = 600
            //   ff7508               | push                dword ptr [ebp + 8]
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc
            //   e9????????           |                     
            //   8b7518               | mov                 esi, dword ptr [ebp + 0x18]
            //   e8????????           |                     
            //   8bce                 | mov                 ecx, esi

        $sequence_5 = { e8???????? 8b451c 53 56 8b30 85f6 7422 }
            // n = 7, score = 600
            //   e8????????           |                     
            //   8b451c               | mov                 eax, dword ptr [ebp + 0x1c]
            //   53                   | push                ebx
            //   56                   | push                esi
            //   8b30                 | mov                 esi, dword ptr [eax]
            //   85f6                 | test                esi, esi
            //   7422                 | je                  0x24

        $sequence_6 = { e8???????? 83c40c e9???????? 33db ff750c 33c0 50 }
            // n = 7, score = 600
            //   e8????????           |                     
            //   83c40c               | add                 esp, 0xc
            //   e9????????           |                     
            //   33db                 | xor                 ebx, ebx
            //   ff750c               | push                dword ptr [ebp + 0xc]
            //   33c0                 | xor                 eax, eax
            //   50                   | push                eax

        $sequence_7 = { eb06 8b3d???????? 8b07 8b0c98 8b5108 0355f0 8b410c }
            // n = 7, score = 600
            //   eb06                 | jmp                 8
            //   8b3d????????         |                     
            //   8b07                 | mov                 eax, dword ptr [edi]
            //   8b0c98               | mov                 ecx, dword ptr [eax + ebx*4]
            //   8b5108               | mov                 edx, dword ptr [ecx + 8]
            //   0355f0               | add                 edx, dword ptr [ebp - 0x10]
            //   8b410c               | mov                 eax, dword ptr [ecx + 0xc]

        $sequence_8 = { f6461001 0f8598000000 8d7e70 6a14 5b 8bcf e8???????? }
            // n = 7, score = 600
            //   f6461001             | test                byte ptr [esi + 0x10], 1
            //   0f8598000000         | jne                 0x9e
            //   8d7e70               | lea                 edi, [esi + 0x70]
            //   6a14                 | push                0x14
            //   5b                   | pop                 ebx
            //   8bcf                 | mov                 ecx, edi
            //   e8????????           |                     

        $sequence_9 = { e8???????? e8???????? e8???????? 85c0 0f85b3f9ffff 8b8730020000 3b8630020000 }
            // n = 7, score = 600
            //   e8????????           |                     
            //   e8????????           |                     
            //   e8????????           |                     
            //   85c0                 | test                eax, eax
            //   0f85b3f9ffff         | jne                 0xfffff9b9
            //   8b8730020000         | mov                 eax, dword ptr [edi + 0x230]
            //   3b8630020000         | cmp                 eax, dword ptr [esi + 0x230]

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