YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_MAL_RANSOM_ELF_Esxi_Attacks_Feb23_1
Detects ransomware exploiting and encrypting ESXi servers
- Author
- Florian Roth
- Date
- 2023-02-04
- Modified
- 2023-12-05
- Score / Quality
- 85 / 85
What this rule detects
Detects ransomware exploiting and encrypting ESXi servers
It defines 8 patterns (5 text, 3 hex, 0 regex).
Summary generated from the rule's metadata and condition.
Rule source
rule SIGNATURE_BASE_MAL_RANSOM_ELF_Esxi_Attacks_Feb23_1 : FILE
{
meta:
= "Detects ransomware exploiting and encrypting ESXi servers"
= "Florian Roth"
= "d0a813aa-41f8-57df-b708-18ccb0d7a3e5"
= "2023-02-04"
= "2023-12-05"
= "https://www.bleepingcomputer.com/forums/t/782193/esxi-ransomware-help-and-support-topic-esxiargs-args-extension/page-14"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/mal_ransom_esxi_attacks_feb23.yar#L30-L56"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "11b1b2375d9d840912cfd1f0d0d04d93ed0cddb0ae4ddb550a5b62cd044d6b66"
= "27ff018574323c10821993c30cf74de15121caa92a308fbcae4eceae954e63b6"
= 85
= 85
= "FILE"
strings:
$x1 = "usage: encrypt <public_key> <file_to_encrypt> [<enc_step>] [<enc_size>] [<file_size>]" ascii fullword
$x2 = "[ %s ] - FAIL { Errno: %d }" ascii fullword
$s1 = "lPEM_read_bio_RSAPrivateKey" ascii fullword
$s2 = "lERR_get_error" ascii fullword
$s3 = "get_pk_data: key file is empty!" ascii fullword
$op1 = { 8b 45 a8 03 45 d0 89 45 d4 8b 45 a4 69 c0 07 53 65 54 89 45 a8 8b 45 a8 c1 c8 19 }
$op2 = { 48 89 95 40 fd ff ff 48 83 bd 40 fd ff ff 00 0f 85 2e 01 00 00 48 8b 9d 50 ff ff ff 48 89 9d 30 fd ff ff 48 83 bd 30 fd ff ff 00 78 13 f2 48 0f 2a 85 30 fd ff ff }
$op3 = { 31 55 b4 f7 55 b8 8b 4d ac 09 4d b8 8b 45 b8 31 45 bc c1 4d bc 13 c1 4d b4 1d }
condition:
uint16( 0 ) == 0x457f and filesize < 200KB and ( 1 of ( $x* ) or 3 of them ) or 4 of them
}
Strings (8 patterns)
| Identifier | Type | Value | Modifiers |
|---|---|---|---|
| $x1 | text | "usage: encrypt <public_key> <file_to_encrypt> [<enc_step>] [<enc_size>] [<file_size>]" | ascii fullword |
| $x2 | text | "[ %s ] - FAIL { Errno: %d }" | ascii fullword |
| $s1 | text | "lPEM_read_bio_RSAPrivateKey" | ascii fullword |
| $s2 | text | "lERR_get_error" | ascii fullword |
| $s3 | text | "get_pk_data: key file is empty!" | ascii fullword |
| $op1 | hex | { 8b 45 a8 03 45 d0 89 45 d4 8b 45 a4 69 c0 07 53 65 54 89 45 a8 8b 45 a8 c1 c8 19 } | |
| $op2 | hex | { 48 89 95 40 fd ff ff 48 83 bd 40 fd ff ff 00 0f 85 2e 01 00 00 48 8b 9d 50 ff ff ff 48 89 9d 30 fd ff ff 48 83 bd 30 fd ff ff 00 78 13 f2 48 0f 2a 85 30 fd ff … | |
| $op3 | hex | { 31 55 b4 f7 55 b8 8b 4d ac 09 4d b8 8b 45 b8 31 45 bc c1 4d bc 13 c1 4d b4 1d } |
Condition
uint16( 0 ) == 0x457f and filesize < 200KB and ( 1 of ( $x* ) or 3 of them ) or 4 of themIn plain words (Heuristic)
- The file must be smaller than 200KB (a cheap guard that skips large files).
- At least 1 patterns in ( $x* ) must match.
- At least 3 patterns in the rule must match.
- At least 4 patterns in the rule must match.
Test this rule in your browser
Drop a file to scan it with this rule using YARA-X compiled to WebAssembly. Nothing is uploaded.
Sample hashes
Hashes of samples the author lists in the rule's meta (look them up in your threat-intelligence platform).
- 11b1b2375d9d840912cfd1f0d0d04d93ed0cddb0ae4ddb550a5b62cd044d6b66
Licence & attribution
Author: Florian Roth
Source repository: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a
Licence: Detection Rule License 1.1 (repository licence)
Mirrored via YARA Forge 20260927, which prefixes rule names with the source and adds normalised meta fields.
Rule id: d0a813aa-41f8-57df-b708-18ccb0d7a3e5
Tags:FILE
Related rules
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-04-15
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-02-23
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2024-02-23
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-02-13
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-02-13
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-04-17
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-04-17
- MalwareSignature Base (Florian Roth / Nextron)· Florian Roth· 2023-11-01