SYMBOLCOMMON_NAMEaka. SYNONYMS
win.velso (Back to overview)

Velso

VTCollection    

Ransomware that appears to require manually installation (believed to be via RDP). Encrypts files with .velso extension.

References
2018-01-26Bleeping ComputerLawrence Abrams
The Velso Ransomware Being Manually Installed by Attackers
Velso
Yara Rules
[TLP:WHITE] win_velso_auto (20230808 | Detects win.velso.)
rule win_velso_auto {

    meta:
        author = "Felix Bilstein - yara-signator at cocacoding dot com"
        date = "2023-12-06"
        version = "1"
        description = "Detects win.velso."
        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.velso"
        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 = { 8b8c24bc000000 8b442440 01d9 898424b8000000 89c2 898c24bc000000 8b8424f8000000 }
            // n = 7, score = 200
            //   8b8c24bc000000       | mov                 ecx, dword ptr [esp + 0xbc]
            //   8b442440             | mov                 eax, dword ptr [esp + 0x40]
            //   01d9                 | add                 ecx, ebx
            //   898424b8000000       | mov                 dword ptr [esp + 0xb8], eax
            //   89c2                 | mov                 edx, eax
            //   898c24bc000000       | mov                 dword ptr [esp + 0xbc], ecx
            //   8b8424f8000000       | mov                 eax, dword ptr [esp + 0xf8]

        $sequence_1 = { c7442404???????? c70424???????? 89442414 e8???????? 8b442414 89442404 a1???????? }
            // n = 7, score = 200
            //   c7442404????????     |                     
            //   c70424????????       |                     
            //   89442414             | mov                 dword ptr [esp + 0x14], eax
            //   e8????????           |                     
            //   8b442414             | mov                 eax, dword ptr [esp + 0x14]
            //   89442404             | mov                 dword ptr [esp + 4], eax
            //   a1????????           |                     

        $sequence_2 = { ffd0 e9???????? b801000000 e9???????? c744240800000000 8b4520 8b00 }
            // n = 7, score = 200
            //   ffd0                 | call                eax
            //   e9????????           |                     
            //   b801000000           | mov                 eax, 1
            //   e9????????           |                     
            //   c744240800000000     | mov                 dword ptr [esp + 8], 0
            //   8b4520               | mov                 eax, dword ptr [ebp + 0x20]
            //   8b00                 | mov                 eax, dword ptr [eax]

        $sequence_3 = { c745a801000000 e8???????? 83ec04 8d4de0 c70424???????? c745a802000000 e8???????? }
            // n = 7, score = 200
            //   c745a801000000       | mov                 dword ptr [ebp - 0x58], 1
            //   e8????????           |                     
            //   83ec04               | sub                 esp, 4
            //   8d4de0               | lea                 ecx, [ebp - 0x20]
            //   c70424????????       |                     
            //   c745a802000000       | mov                 dword ptr [ebp - 0x58], 2
            //   e8????????           |                     

        $sequence_4 = { 8b00 89d9 ff5024 e9???????? 8b4c2430 8854244f 8b01 }
            // n = 7, score = 200
            //   8b00                 | mov                 eax, dword ptr [eax]
            //   89d9                 | mov                 ecx, ebx
            //   ff5024               | call                dword ptr [eax + 0x24]
            //   e9????????           |                     
            //   8b4c2430             | mov                 ecx, dword ptr [esp + 0x30]
            //   8854244f             | mov                 byte ptr [esp + 0x4f], dl
            //   8b01                 | mov                 eax, dword ptr [ecx]

        $sequence_5 = { c6458001 7587 90 8db42600000000 8b4108 3b410c 0f835c060000 }
            // n = 7, score = 200
            //   c6458001             | mov                 byte ptr [ebp - 0x80], 1
            //   7587                 | jne                 0xffffff89
            //   90                   | nop                 
            //   8db42600000000       | lea                 esi, [esi]
            //   8b4108               | mov                 eax, dword ptr [ecx + 8]
            //   3b410c               | cmp                 eax, dword ptr [ecx + 0xc]
            //   0f835c060000         | jae                 0x662

        $sequence_6 = { 85d2 0f85ed070000 c78574ffffff00000000 c6857dffffff00 c7458810000000 8b4d08 85c9 }
            // n = 7, score = 200
            //   85d2                 | test                edx, edx
            //   0f85ed070000         | jne                 0x7f3
            //   c78574ffffff00000000     | mov    dword ptr [ebp - 0x8c], 0
            //   c6857dffffff00       | mov                 byte ptr [ebp - 0x83], 0
            //   c7458810000000       | mov                 dword ptr [ebp - 0x78], 0x10
            //   8b4d08               | mov                 ecx, dword ptr [ebp + 8]
            //   85c9                 | test                ecx, ecx

        $sequence_7 = { c785a8feffff01000000 e8???????? 8d8de8feffff e8???????? c78598feffff00000000 83bd9cfeffff01 8b85a0feffff }
            // n = 7, score = 200
            //   c785a8feffff01000000     | mov    dword ptr [ebp - 0x158], 1
            //   e8????????           |                     
            //   8d8de8feffff         | lea                 ecx, [ebp - 0x118]
            //   e8????????           |                     
            //   c78598feffff00000000     | mov    dword ptr [ebp - 0x168], 0
            //   83bd9cfeffff01       | cmp                 dword ptr [ebp - 0x164], 1
            //   8b85a0feffff         | mov                 eax, dword ptr [ebp - 0x160]

        $sequence_8 = { 8d4de0 89422c 8b450c c7420800000000 c7421400000000 c7421c00000000 c7422400000000 }
            // n = 7, score = 200
            //   8d4de0               | lea                 ecx, [ebp - 0x20]
            //   89422c               | mov                 dword ptr [edx + 0x2c], eax
            //   8b450c               | mov                 eax, dword ptr [ebp + 0xc]
            //   c7420800000000       | mov                 dword ptr [edx + 8], 0
            //   c7421400000000       | mov                 dword ptr [edx + 0x14], 0
            //   c7421c00000000       | mov                 dword ptr [edx + 0x1c], 0
            //   c7422400000000       | mov                 dword ptr [edx + 0x24], 0

        $sequence_9 = { a1???????? 0f84d4010000 85c0 0f84f0020000 8b16 8b00 893c90 }
            // n = 7, score = 200
            //   a1????????           |                     
            //   0f84d4010000         | je                  0x1da
            //   85c0                 | test                eax, eax
            //   0f84f0020000         | je                  0x2f6
            //   8b16                 | mov                 edx, dword ptr [esi]
            //   8b00                 | mov                 eax, dword ptr [eax]
            //   893c90               | mov                 dword ptr [eax + edx*4], edi

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