YARA · Signature Base (Florian Roth / Nextron)
SIGNATURE_BASE_MAL_Netfilter_Dropper_Jun_2021_1_1
Detects the dropper of Netfilter rootkit
- Autor
- Arkbird_SOLG
- Fecha
- 2020-06-18
- Modificada
- 2023-12-05
- Puntuación / Calidad
- 75 / 85
Qué detecta esta regla
Detects the dropper of Netfilter rootkit
Objetivos: PE de Windows.
Define 5 patrones (3 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_MAL_Netfilter_Dropper_Jun_2021_1_1 : FILE
{
meta:
= "Detects the dropper of Netfilter rootkit"
= "Arkbird_SOLG"
= "d91f48aa-9580-572d-a72c-19b80624cdbe"
= "2020-06-18"
= "2023-12-05"
= "https://twitter.com/struppigel/status/1405483373280235520"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/yara/apt_cn_netfilter.yar#L4-L26"
= "https://github.com/Neo23x0/signature-base/blob/94a1c48d7ab499879287ff611dfe7f9c56376030/LICENSE"
= "a5c873085f36f69f29bb8895eb199d42ce86b16da62c56680917149b97e6dac"
= "659e0d1b2405cadfa560fe648cbf6866720dd40bb6f4081d3dce2dffe20595d9"
= "d0a03a8905c4f695843bc4e9f2dd062b8fd7b0b00103236b5187ff3730750540"
= "b70eb5d2d234d0f523c41fa146f315cf7239bbe7a988b393e75ea6cf6aa438d3"
= 75
= 85
= "FILE"
= "White"
= "Chinese APT Group"
strings:
$seq1 = { b8 ff 00 00 00 50 b8 00 00 00 00 50 8d 85 dd fe ff ff 50 e8 ?? 0d 00 00 83 c4 0c b8 00 00 00 00 88 85 dc fd ff ff b8 ff 00 00 00 50 b8 00 00 00 00 50 8d 85 dd fd ff ff 50 e8 ?? 0d 00 00 83 c4 0c b8 00 00 50 00 50 e8 ?? 0d 00 00 83 c4 04 89 85 d8 fd ff ff 8b 85 d8 fd ff ff 89 85 d4 fd ff ff b8 00 00 50 00 50 b8 00 00 00 00 50 8b 85 d8 fd ff ff 50 e8 ?? 0c 00 00 83 c4 0c 8b 45 0c 8b 8d d8 fd ff ff 89 08 b8 3c 00 00 00 50 b8 00 00 00 00 50 8d 85 98 fd ff ff 50 e8 ?? 0c 00 00 83 c4 0c b8 3c 00 00 00 89 85 98 fd ff ff 8d 85 98 fd ff ff 83 c0 10 8d 8d dc fe ff ff 89 08 8d 85 98 fd ff ff 83 c0 14 b9 00 01 00 00 89 08 8d 85 98 fd ff ff 83 c0 2c 8d 8d dc fd ff ff 89 08 8d 85 98 fd ff ff 83 c0 30 b9 00 01 00 00 89 08 b8 0a 31 40 00 50 e8 ?? 0c 00 00 89 85 94 fd ff ff b8 16 31 40 00 50 8b 85 94 fd ff ff 50 e8 ?? 0c 00 00 89 45 fc b8 28 31 40 00 50 8b 85 94 fd ff ff 50 e8 ?? 0c 00 00 89 45 f8 b8 36 31 40 00 50 8b 85 94 fd ff ff 50 e8 [2] 00 00 89 45 f4 b8 47 31 40 00 50 8b 85 94 fd ff ff 50 e8 [2] 00 00 89 45 f0 b8 58 31 40 00 50 8b 85 94 fd ff ff 50 e8 ?? 0b 00 00 89 45 ec b8 69 31 40 00 50 8b 85 94 fd ff ff 50 e8 ?? 0b 00 00 89 45 e8 b8 7a 31 40 00 50 8b 85 94 fd ff ff 50 e8 ?? 0b 00 00 89 45 e4 b8 8e 31 40 00 50 8b 85 94 fd ff ff 50 e8 ?? 0b 00 00 89 45 e0 8b 45 08 50 e8 ?? 0b 00 00 83 c4 04 8d 8d 98 fd ff ff 51 b9 00 00 00 00 51 50 8b 45 08 50 8b 45 fc ff d0 85 }
$seq2 = { b8 00 00 00 00 89 85 90 fd ff ff b8 00 00 00 00 89 85 8c fd ff ff b8 00 00 00 00 89 85 88 fd ff ff b8 00 00 00 00 89 85 84 fd ff ff b8 04 00 00 00 89 85 80 fd ff ff b8 00 00 00 00 88 85 7f f5 ff ff b8 00 08 00 00 50 b8 00 00 00 00 50 8d 85 80 f5 ff ff 50 e8 ?? 0b 00 00 83 c4 0c b8 00 00 00 00 50 b8 00 00 00 00 50 b8 00 00 00 00 50 b8 00 00 00 00 50 b8 9d 31 40 00 50 8b 45 f8 ff d0 89 85 90 fd ff ff 8b 85 }
$s1 = "%s\\netfilter.sys" fullword ascii
$s2 = "SYSTEM\\CurrentControlSet\\Services\\netfilter" fullword ascii
$s3 = "\\\\.\\netfilter" fullword ascii
condition:
uint16( 0 ) == 0x5a4d and filesize > 6KB and filesize < 1000KB and ( all of ( $seq* ) or 2 of ( $s* ) )
}
Cadenas (5 patrones)
| Identificador | Tipo | Valor | Modificadores |
|---|---|---|---|
| $seq1 | hex | { b8 ff 00 00 00 50 b8 00 00 00 00 50 8d 85 dd fe ff ff 50 e8 ?? 0d 00 00 83 c4 0c b8 00 00 00 00 88 85 dc fd ff ff b8 ff 00 00 00 50 b8 00 00 00 00 50 8d 85 dd … | |
| $seq2 | hex | { b8 00 00 00 00 89 85 90 fd ff ff b8 00 00 00 00 89 85 8c fd ff ff b8 00 00 00 00 89 85 88 fd ff ff b8 00 00 00 00 89 85 84 fd ff ff b8 04 00 00 00 89 85 80 fd … | |
| $s1 | texto | "%s\\netfilter.sys" | fullword ascii |
| $s2 | texto | "SYSTEM\\CurrentControlSet\\Services\\netfilter" | fullword ascii |
| $s3 | texto | "\\\\.\\netfilter" | fullword ascii |
Condición
uint16( 0 ) == 0x5a4d and filesize > 6KB and filesize < 1000KB and ( all of ( $seq* ) or 2 of ( $s* ) )En palabras sencillas (Heurística)
- El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
- El archivo debe ocupar menos de 1000KB (un límite barato que descarta archivos grandes).
- El archivo debe ocupar más de 6KB.
- Deben coincidir todos los patrones de ( $seq* ).
- Deben coincidir al menos 2 patrones de ( $s* ).
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).
- 659e0d1b2405cadfa560fe648cbf6866720dd40bb6f4081d3dce2dffe20595d9
- d0a03a8905c4f695843bc4e9f2dd062b8fd7b0b00103236b5187ff3730750540
Licencia y atribución
Autor: Arkbird_SOLG
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: d91f48aa-9580-572d-a72c-19b80624cdbe
Metadatos
| tlp | White |
|---|---|
| adversary | Chinese APT Group |
Etiquetas:FILE
Reglas relacionadas
- MalwareSignature Base (Florian Roth / Nextron)· Arkbird_SOLG· 2020-07-30
- MalwareSignature Base (Florian Roth / Nextron)· Arkbird_SOLG· 2020-06-18
- Herramienta ofensivaSignature Base (Florian Roth / Nextron)· Arkbird_SOLG· 2022-11-22
- APT / actorSignature Base (Florian Roth / Nextron)· Arkbird_SOLG· 2020-08-24
- ExploitSignature Base (Florian Roth / Nextron)· Arkbird_SOLG· 2021-05-04