SYMBOLCOMMON_NAMEaka. SYNONYMS
win.lorenz (Back to overview)

Lorenz

VTCollection    

Tesorion describes Lorenz as a ransomware with design and implementation flaws, leading to impossible decryption with tools provided by the attackers. A free decryptor for 2021 versions was made available via the NoMoreRansom initiative. A new version of the malware was discovered in March 2022, for which again was provided a free decryptor, while the ransomware operators are not able to provide tools to decrypt affected files.

References
2023-02-23Arctic WolfMarkus Neis, Ross Phillips, Seth Battles, Steven Campbell
Getting Dumped: A Trust Relationship Destroyed by Lorenz
Lorenz
2022-09-12Arctic WolfAlex Ammons, Arctic Wolf Labs Team, Markus Neis, Ross Phillips, Steven Campbell, Teresa Whitmore
Chiseling In: Lorenz Ransomware Group Cracks MiVoice And Calls Back For Free
Chisel Lorenz
2022-03-21TesorionGijs Rijnders
Lorenz ransomware rebound: corruption and irrecoverable files
Lorenz
2022-02-08CybereasonLior Rochberger
Cybereason vs. Lorenz Ransomware
Lorenz
2021-08-05Twitter (@AltShiftPrtScn)Peter Mackenzie
Tweet on Lorenz ransomware tricking user into allowing OAuth permissions to "Thunderbird with ExQuilla" for O365
Lorenz
2021-06-29The RecordCatalin Cimpanu
Free decrypter available for Lorenz ransomware
Lorenz
2021-06-25TesorionGijs Rijnders
Lorenz ransomware: analysis and a free decryptor
Lorenz
2021-05-13Bleeping ComputerLawrence Abrams
Meet Lorenz — A new ransomware gang targeting the enterprise
Lorenz
Yara Rules
[TLP:WHITE] win_lorenz_auto (20260504 | Detects win.lorenz.)
rule win_lorenz_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2026-05-04"
        version = "1"
        description = "Detects win.lorenz."
        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.lorenz"
        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 = { 8b1481 8955b8 8b450c 8b482c 8b55ec 8b45e0 8b75ec }
            // n = 7, score = 300
            //   8b1481               | mov                 edx, dword ptr [ecx + eax*4]
            //   8955b8               | mov                 dword ptr [ebp - 0x48], edx
            //   8b450c               | mov                 eax, dword ptr [ebp + 0xc]
            //   8b482c               | mov                 ecx, dword ptr [eax + 0x2c]
            //   8b55ec               | mov                 edx, dword ptr [ebp - 0x14]
            //   8b45e0               | mov                 eax, dword ptr [ebp - 0x20]
            //   8b75ec               | mov                 esi, dword ptr [ebp - 0x14]

        $sequence_1 = { 8b55b8 8b02 8b4808 894db4 8b4db4 e8???????? 8b4db8 }
            // n = 7, score = 300
            //   8b55b8               | mov                 edx, dword ptr [ebp - 0x48]
            //   8b02                 | mov                 eax, dword ptr [edx]
            //   8b4808               | mov                 ecx, dword ptr [eax + 8]
            //   894db4               | mov                 dword ptr [ebp - 0x4c], ecx
            //   8b4db4               | mov                 ecx, dword ptr [ebp - 0x4c]
            //   e8????????           |                     
            //   8b4db8               | mov                 ecx, dword ptr [ebp - 0x48]

        $sequence_2 = { 6a00 68d5070000 68???????? 6a02 e8???????? 83c418 83f801 }
            // n = 7, score = 300
            //   6a00                 | push                0
            //   68d5070000           | push                0x7d5
            //   68????????           |                     
            //   6a02                 | push                2
            //   e8????????           |                     
            //   83c418               | add                 esp, 0x18
            //   83f801               | cmp                 eax, 1

        $sequence_3 = { ba01000000 d3e2 8955f8 8b45fc 8b08 234df8 7421 }
            // n = 7, score = 300
            //   ba01000000           | mov                 edx, 1
            //   d3e2                 | shl                 edx, cl
            //   8955f8               | mov                 dword ptr [ebp - 8], edx
            //   8b45fc               | mov                 eax, dword ptr [ebp - 4]
            //   8b08                 | mov                 ecx, dword ptr [eax]
            //   234df8               | and                 ecx, dword ptr [ebp - 8]
            //   7421                 | je                  0x23

        $sequence_4 = { e8???????? 8bc8 e8???????? 0fb6c8 85c9 7460 8d4ddc }
            // n = 7, score = 300
            //   e8????????           |                     
            //   8bc8                 | mov                 ecx, eax
            //   e8????????           |                     
            //   0fb6c8               | movzx               ecx, al
            //   85c9                 | test                ecx, ecx
            //   7460                 | je                  0x62
            //   8d4ddc               | lea                 ecx, [ebp - 0x24]

        $sequence_5 = { 8b55fc 8b427c 50 8b4dfc 8b5158 8b45fc 8b7058 }
            // n = 7, score = 300
            //   8b55fc               | mov                 edx, dword ptr [ebp - 4]
            //   8b427c               | mov                 eax, dword ptr [edx + 0x7c]
            //   50                   | push                eax
            //   8b4dfc               | mov                 ecx, dword ptr [ebp - 4]
            //   8b5158               | mov                 edx, dword ptr [ecx + 0x58]
            //   8b45fc               | mov                 eax, dword ptr [ebp - 4]
            //   8b7058               | mov                 esi, dword ptr [eax + 0x58]

        $sequence_6 = { e8???????? 8b4d08 ff55e0 8b4df4 64890d00000000 59 8be5 }
            // n = 7, score = 300
            //   e8????????           |                     
            //   8b4d08               | mov                 ecx, dword ptr [ebp + 8]
            //   ff55e0               | call                dword ptr [ebp - 0x20]
            //   8b4df4               | mov                 ecx, dword ptr [ebp - 0xc]
            //   64890d00000000       | mov                 dword ptr fs:[0], ecx
            //   59                   | pop                 ecx
            //   8be5                 | mov                 esp, ebp

        $sequence_7 = { 8b91ac000000 83ea01 8b45f8 8990ac000000 8b4df8 8b919c000000 8955e8 }
            // n = 7, score = 300
            //   8b91ac000000         | mov                 edx, dword ptr [ecx + 0xac]
            //   83ea01               | sub                 edx, 1
            //   8b45f8               | mov                 eax, dword ptr [ebp - 8]
            //   8990ac000000         | mov                 dword ptr [eax + 0xac], edx
            //   8b4df8               | mov                 ecx, dword ptr [ebp - 8]
            //   8b919c000000         | mov                 edx, dword ptr [ecx + 0x9c]
            //   8955e8               | mov                 dword ptr [ebp - 0x18], edx

        $sequence_8 = { e9???????? 8d4df2 894dd0 6859020000 68???????? 8b55d0 0fb602 }
            // n = 7, score = 300
            //   e9????????           |                     
            //   8d4df2               | lea                 ecx, [ebp - 0xe]
            //   894dd0               | mov                 dword ptr [ebp - 0x30], ecx
            //   6859020000           | push                0x259
            //   68????????           |                     
            //   8b55d0               | mov                 edx, dword ptr [ebp - 0x30]
            //   0fb602               | movzx               eax, byte ptr [edx]

        $sequence_9 = { c745f800000000 837d0800 742c 8b45fc 8b88a4000000 394d08 }
            // n = 6, score = 300
            //   c745f800000000       | mov                 dword ptr [ebp - 8], 0
            //   837d0800             | cmp                 dword ptr [ebp + 8], 0
            //   742c                 | je                  0x2e
            //   8b45fc               | mov                 eax, dword ptr [ebp - 4]
            //   8b88a4000000         | mov                 ecx, dword ptr [eax + 0xa4]
            //   394d08               | cmp                 dword ptr [ebp + 8], ecx

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