YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_EXT_HKTL_MAL_Tinyshell_Backdoor
Detects Tiny Shell - an open-source UNIX backdoor
- Autor
- Mandiant
- Fecha
- 2022-03-17
- Modificada
- 2026-05-15
- Puntuación / Calidad
- 80 / 85
Qué detecta esta regla
Detects Tiny Shell - an open-source UNIX backdoor
Objetivos: ELF de Linux.
Define 16 patrones (14 de texto, 2 hex, 0 regex).
Resumen generado a partir de los metadatos y la condición de la regla.
Código de la regla
rule SIGNATURE_BASE_EXT_HKTL_MAL_Tinyshell_Backdoor : FILE
{
meta:
= "Detects Tiny Shell - an open-source UNIX backdoor"
= "Mandiant"
= "4ad5d334-98e4-577f-89c9-86626e8feb58"
= "2022-03-17"
= "2026-05-15"
= "https://www.mandiant.com/resources/blog/unc2891-overview"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_unc2891_tinyshell_slapstick.yar#L1-L29"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "1f889871263bd6cdad8f3d4d5fc58b4a32669b944d3ed0860730374bb87d730a"
= "1fe9def11dced638ad38236652877427b61d7138fc8c6ce3fe7f1403c367468f"
= 80
= 85
= "FILE"
strings:
$sb1 = { C6 00 48 C6 4? ?? 49 C6 4? ?? 49 C6 4? ?? 4C C6 4? ?? 53 C6 4? ?? 45 C6 4? ?? 54 C6 4? ?? 3D C6 4? ?? 46 C6 4? ?? 00 }
$sb2 = { C6 00 54 C6 4? ?? 4D C6 4? ?? 45 C6 4? ?? 3D C6 4? ?? 52 }
$ss1 = "fork" ascii fullword wide
$ss2 = "socket" ascii fullword wide
$ss3 = "bind" ascii fullword wide
$ss4 = "listen" ascii fullword wide
$ss5 = "accept" ascii fullword wide
$ss6 = "alarm" ascii fullword wide
$ss7 = "shutdown" ascii fullword wide
$ss8 = "creat" ascii fullword wide
$ss9 = "write" ascii fullword wide
$ss10 = "open" ascii fullword wide
$ss11 = "read" ascii fullword wide
$ss12 = "execl" ascii fullword wide
$ss13 = "gethostbyname" ascii fullword wide
$ss14 = "connect" ascii fullword wide
condition:
uint32( 0 ) == 0x464c457f and 1 of ( $sb* ) and 10 of ( $ss* )
}
Cadenas (16 patrones)
| Identificador | Tipo | Valor | Modificadores |
|---|---|---|---|
| $sb1 | hex | { C6 00 48 C6 4? ?? 49 C6 4? ?? 49 C6 4? ?? 4C C6 4? ?? 53 C6 4? ?? 45 C6 4? ?? 54 C6 4? ?? 3D C6 4? ?? 46 C6 4? ?? 00 } | |
| $sb2 | hex | { C6 00 54 C6 4? ?? 4D C6 4? ?? 45 C6 4? ?? 3D C6 4? ?? 52 } | |
| $ss1 | texto | "fork" | ascii fullword wide |
| $ss2 | texto | "socket" | ascii fullword wide |
| $ss3 | texto | "bind" | ascii fullword wide |
| $ss4 | texto | "listen" | ascii fullword wide |
| $ss5 | texto | "accept" | ascii fullword wide |
| $ss6 | texto | "alarm" | ascii fullword wide |
| $ss7 | texto | "shutdown" | ascii fullword wide |
| $ss8 | texto | "creat" | ascii fullword wide |
| $ss9 | texto | "write" | ascii fullword wide |
| $ss10 | texto | "open" | ascii fullword wide |
| $ss11 | texto | "read" | ascii fullword wide |
| $ss12 | texto | "execl" | ascii fullword wide |
| $ss13 | texto | "gethostbyname" | ascii fullword wide |
| $ss14 | texto | "connect" | ascii fullword wide |
Condición
uint32( 0 ) == 0x464c457f and 1 of ( $sb* ) and 10 of ( $ss* )En palabras sencillas (Heurística)
- El archivo debe empezar por la cabecera ELF: un ejecutable de Linux/Unix.
- Deben coincidir al menos 1 patrones de ( $sb* ).
- Deben coincidir al menos 10 patrones de ( $ss* ).
Prueba esta regla en tu navegador
Arrastra un archivo para escanearlo con esta regla usando YARA-X compilado a WebAssembly. No se sube nada.
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).
- 1f889871263bd6cdad8f3d4d5fc58b4a32669b944d3ed0860730374bb87d730a
Licencia y atribución
Autor: Mandiant
Repositorio de origen: Signature Base (Florian Roth / Nextron) @ 94a1c48d7a
Licencia: Detection Rule License 1.1 (licencia del repositorio)
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: 4ad5d334-98e4-577f-89c9-86626e8feb58
Etiquetas:FILE
Reglas relacionadas
- Herramienta ofensivaSignature Base (Florian Roth / Nextron)· Mandiant· 2022-03-17
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2022-04-28
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2023-04-20
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2023-04-20
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2023-04-20
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2023-04-20
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2023-04-20
- APT / actorSignature Base (Florian Roth / Nextron)· Mandiant· 2023-04-20