Saltar al contenido

YARA · ditekSHen detection

DITEKSHEN_MALWARE_Win_Tardigrade

Detects Tardigrade

MalwareTardigradeditekSHen detectionBSD 2-Clause LicenseCompila con YARA-X
Autor
ditekSHen
Fecha
2020-11-06
Modificada
2024-11-01
Puntuación / Calidad
75 / 75

Qué detecta esta regla

Detects Tardigrade

Familia de malware asociada: Tardigrade.

Objetivos: PE de Windows.

Define 10 patrones (9 de texto, 0 hex, 1 regex). Módulos YARA usados: pe.

Resumen generado a partir de los metadatos y la condición de la regla.

Código de la regla

Incluye los imports necesarios para compilarla por sí sola.

malware-win-tardigrade.yarBSD 2-Clause License
import "pe"

rule DITEKSHEN_MALWARE_Win_Tardigrade : FILE
{
	meta:
		description = "Detects Tardigrade"
		author = "ditekSHen"
		id = "a46caaaa-2954-552a-a20f-952c47370393"
		date = "2020-11-06"
		modified = "2024-11-01"
		reference = "https://github.com/ditekshen/detection"
		source_url = "https://github.com/ditekshen/detection/blob/e76c93dcdedff04076380ffc60ea54e45b313635/yara/malware.yar#L8756-L8787"
		license_url = "https://github.com/ditekshen/detection/blob/e76c93dcdedff04076380ffc60ea54e45b313635/LICENSE.txt"
		hash = "c0976a1fbc3dd938f1d2996a888d0b3a516b432a2c38d788831553d81e2f5858"
		hash = "966b2c7c72a28310acd58bb23af4d3c893b2afca264b2d9c0ec42db815c77487"
		hash = "88be5da274df704dc7fd9882c661a0afdd35f1ce0a7145e30f51c292abd2a86b"
		hash = "cf88926b7d5a5ebbd563d0241aaf83718b77cec56da66bdf234295cc5a91c5fe"
		hash = "4afd9f0dde092daeac3f3e6ffb0aee06682b3dba6005d2bd1a914eefd5cc6a30"
		logic_hash = "2bd4f23f66844a320b6bed6242ba39096f66a08affb84abd78c342d433ed9fe6"
		score = 75
		quality = 75
		tags = "FILE"

	strings:
		$x1 = "cmd.exe /c echo kOJAdtQoDcMuogIZIl>\"%s\"&exit" fullword ascii
		$x2 = "cmd.exe /c echo HBnBcZPeUevCDQmKGzXxYJHqpzRAbRCQCihOxiLi>\"%s\"&exit" fullword ascii
		$x3 = "cmd.exe /c set kpUUCjoLWLZvJFc=3167 & reg add HKCU\\SOFTWARE\\EQwIobTRgsJ /v PDMXPmqSYnUx /t REG_DWORD /d 10080 & exit" fullword ascii
		$s1 = "ReplaceFileA" ascii
		$s2 = "FlushFileBuffers" ascii
		$s3 = "WaitNamedPipeA" ascii
		$s4 = "ImpersonateNamedPipeClient" ascii
		$s5 = "RegFlushKey" ascii
		$s6 = /cmd\.exe \/c (echo|set)/ ascii
		$s7 = ">\"%s\"&exit" ascii

	condition:
		uint16( 0 ) == 0x5a4d and pe.is_dll ( ) and ( 1 of ( $x* ) or 6 of ( $s* ) ) and ( pe.exports ( "DllGetClassObject" ) and pe.exports ( "DllMain" ) and pe.exports ( "DllRegisterServer" ) and pe.exports ( "DllUnregisterServer" ) and pe.exports ( "InitHelperDll" ) and pe.exports ( "StartW" ) )
}

Cadenas (10 patrones)

IdentificadorTipoValorModificadores
$x1texto"cmd.exe /c echo kOJAdtQoDcMuogIZIl>\"%s\"&exit"fullword ascii
$x2texto"cmd.exe /c echo HBnBcZPeUevCDQmKGzXxYJHqpzRAbRCQCihOxiLi>\"%s\"&exit"fullword ascii
$x3texto"cmd.exe /c set kpUUCjoLWLZvJFc=3167 & reg add HKCU\\SOFTWARE\\EQwIobTRgsJ /v PDMXPmqSYnUx /t REG_DWORD /d 10080 & exit"fullword ascii
$s1texto"ReplaceFileA"ascii
$s2texto"FlushFileBuffers"ascii
$s3texto"WaitNamedPipeA"ascii
$s4texto"ImpersonateNamedPipeClient"ascii
$s5texto"RegFlushKey"ascii
$s6regex/cmd\.exe \/c (echo|set)/ascii
$s7texto">\"%s\"&exit"ascii

Condición

uint16( 0 ) == 0x5a4d and pe.is_dll ( ) and ( 1 of ( $x* ) or 6 of ( $s* ) ) and ( pe.exports ( "DllGetClassObject" ) and pe.exports ( "DllMain" ) and pe.exports ( "DllRegisterServer" ) and pe.exports ( "DllUnregisterServer" ) and pe.exports ( "InitHelperDll" ) and pe.exports ( "StartW" ) )

En palabras sencillas (Heurística)

  • El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
  • Deben coincidir al menos 1 patrones de ( $x* ).
  • Deben coincidir al menos 6 patrones de ( $s* ).
  • Usa el módulo pe.
  • Comprueba funciones exportadas o el nombre de la DLL.
  • Requiere una DLL.

Prueba esta regla en tu navegador

Arrastra un archivo para escanearlo con esta regla usando YARA-X compilado a WebAssembly. No se sube nada.

Arrastra un archivo aquí o haz clic para elegirSe escanea en local con YARA-X. Archivos de hasta 200 MB.

Abrir en el editor

Referencias

Hashes de muestras

Hashes de las muestras que el autor lista en los metadatos de la regla (búscalos en tu plataforma de threat intelligence).

  • c0976a1fbc3dd938f1d2996a888d0b3a516b432a2c38d788831553d81e2f5858
  • 966b2c7c72a28310acd58bb23af4d3c893b2afca264b2d9c0ec42db815c77487
  • 88be5da274df704dc7fd9882c661a0afdd35f1ce0a7145e30f51c292abd2a86b
  • cf88926b7d5a5ebbd563d0241aaf83718b77cec56da66bdf234295cc5a91c5fe
  • 4afd9f0dde092daeac3f3e6ffb0aee06682b3dba6005d2bd1a914eefd5cc6a30

Licencia y atribución

Autor: ditekSHen

Repositorio de origen: ditekSHen detection @ e76c93dcde

Licencia: BSD 2-Clause License (licencia del repositorio)

Aviso de copyright: Copyright 2021 by ditekSHen (https://github.com/ditekshen/detection).

Regla original

Obtenida a través de YARA Forge 20260927, que añade a los nombres el prefijo de la fuente y campos meta normalizados.

Id de la regla: a46caaaa-2954-552a-a20f-952c47370393

Etiquetas:FILE