YARA · Mandiant red team tool countermeasures
FIREEYE_RT_APT_Loader_Win_PGF_2
PE rich header matches PGF backdoor
- Autor
- FireEye
- Fecha
- 2020-12-08
- Modificada
- 2020-12-09
- Puntuación / Calidad
- 75 / 75
Qué detecta esta regla
PE rich header matches PGF backdoor
Objetivos: PE de Windows.
Define 4 patrones (0 de texto, 4 hex, 0 regex).
Resumen generado a partir de los metadatos y la condición de la regla.
Código de la regla
rule FIREEYE_RT_APT_Loader_Win_PGF_2 : FILE
{
meta:
= "PE rich header matches PGF backdoor"
= "FireEye"
= "595c9e2a-3d9d-5366-9449-de1bcf333f78"
= "2020-12-08"
= "2020-12-09"
= "https://github.com/mandiant/red_team_tool_countermeasures/"
= "https://github.com/mandiant/red_team_tool_countermeasures//blob/3561b71724dbfa3e2bb78106aaa2d7f8b892c43b/rules/PGF/production/yara/APT_Loader_Win_PGF_2.yar#L4-L21"
= "https://github.com/mandiant/red_team_tool_countermeasures//blob/3561b71724dbfa3e2bb78106aaa2d7f8b892c43b/LICENSE.txt"
= "226b1ac427eb5a4dc2a00cc72c163214"
= "2398ed2d5b830d226af26dedaf30f64a"
= "24a7c99da9eef1c58f09cf09b9744d7b"
= "aeb0e1d0e71ce2a08db9b1e5fb98e0aa"
= "b8c024c6b4c3ce9915700b62da8a1f12440215b46f3a56078707f5257e575811"
= 75
= 75
= "FILE"
= 4
strings:
$rich1 = { A8 B7 17 3A EC D6 79 69 EC D6 79 69 EC D6 79 69 2F D9 24 69 E8 D6 79 69 E5 AE EC 69 EA D6 79 69 EC D6 78 69 A8 D6 79 69 E5 AE EA 69 EF D6 79 69 E5 AE FA 69 D0 D6 79 69 E5 AE EB 69 ED D6 79 69 E5 AE FD 69 E2 D6 79 69 CB 10 07 69 ED D6 79 69 E5 AE E8 69 ED D6 79 69 }
$rich2 = { C1 CF 75 A4 85 AE 1B F7 85 AE 1B F7 85 AE 1B F7 8C D6 88 F7 83 AE 1B F7 0D C9 1A F6 87 AE 1B F7 0D C9 1E F6 8F AE 1B F7 0D C9 1F F6 8F AE 1B F7 0D C9 18 F6 84 AE 1B F7 DE C6 1A F6 86 AE 1B F7 85 AE 1A F7 BF AE 1B F7 84 C3 12 F6 81 AE 1B F7 84 C3 E4 F7 84 AE 1B F7 84 C3 19 F6 84 AE 1B F7 }
$rich3 = { D6 60 82 B8 92 01 EC EB 92 01 EC EB 92 01 EC EB 9B 79 7F EB 94 01 EC EB 1A 66 ED EA 90 01 EC EB 1A 66 E9 EA 98 01 EC EB 1A 66 E8 EA 9A 01 EC EB 1A 66 EF EA 90 01 EC EB C9 69 ED EA 91 01 EC EB 92 01 ED EB AF 01 EC EB 93 6C E5 EA 96 01 EC EB 93 6C 13 EB 93 01 EC EB 93 6C EE EA 93 01 EC EB }
$rich4 = { 41 36 64 33 05 57 0A 60 05 57 0A 60 05 57 0A 60 73 CA 71 60 01 57 0A 60 0C 2F 9F 60 04 57 0A 60 0C 2F 89 60 3D 57 0A 60 0C 2F 8E 60 0A 57 0A 60 05 57 0B 60 4A 57 0A 60 0C 2F 99 60 06 57 0A 60 73 CA 67 60 04 57 0A 60 0C 2F 98 60 04 57 0A 60 0C 2F 80 60 04 57 0A 60 22 91 74 60 04 57 0A 60 0C 2F 9B 60 04 57 0A 60 }
condition:
( uint16( 0 ) == 0x5A4D ) and ( uint32( uint32( 0x3C ) ) == 0x00004550 ) and filesize < 15MB and ( ( $rich1 at 128 ) or ( $rich2 at 128 ) or ( $rich3 at 128 ) or ( $rich4 at 128 ) )
}
Cadenas (4 patrones)
| Identificador | Tipo | Valor | Modificadores |
|---|---|---|---|
| $rich1 | hex | { A8 B7 17 3A EC D6 79 69 EC D6 79 69 EC D6 79 69 2F D9 24 69 E8 D6 79 69 E5 AE EC 69 EA D6 79 69 EC D6 78 69 A8 D6 79 69 E5 AE EA 69 EF D6 79 69 E5 AE FA 69 D0 … | |
| $rich2 | hex | { C1 CF 75 A4 85 AE 1B F7 85 AE 1B F7 85 AE 1B F7 8C D6 88 F7 83 AE 1B F7 0D C9 1A F6 87 AE 1B F7 0D C9 1E F6 8F AE 1B F7 0D C9 1F F6 8F AE 1B F7 0D C9 18 F6 84 … | |
| $rich3 | hex | { D6 60 82 B8 92 01 EC EB 92 01 EC EB 92 01 EC EB 9B 79 7F EB 94 01 EC EB 1A 66 ED EA 90 01 EC EB 1A 66 E9 EA 98 01 EC EB 1A 66 E8 EA 9A 01 EC EB 1A 66 EF EA 90 … | |
| $rich4 | hex | { 41 36 64 33 05 57 0A 60 05 57 0A 60 05 57 0A 60 73 CA 71 60 01 57 0A 60 0C 2F 9F 60 04 57 0A 60 0C 2F 89 60 3D 57 0A 60 0C 2F 8E 60 0A 57 0A 60 05 57 0B 60 4A … |
Condición
( uint16( 0 ) == 0x5A4D ) and ( uint32( uint32( 0x3C ) ) == 0x00004550 ) and filesize < 15MB and ( ( $rich1 at 128 ) or ( $rich2 at 128 ) or ( $rich3 at 128 ) or ( $rich4 at 128 ) )En palabras sencillas (Heurística)
- El archivo debe empezar por «MZ»: un ejecutable de Windows (PE).
- El archivo debe ocupar menos de 15MB (un límite barato que descarta archivos grandes).
- El patrón $rich1 debe estar en el offset 128.
- El patrón $rich2 debe estar en el offset 128.
- El patrón $rich3 debe estar en el offset 128.
- El patrón $rich4 debe estar en el offset 128.
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).
- 226b1ac427eb5a4dc2a00cc72c163214
- 2398ed2d5b830d226af26dedaf30f64a
- 24a7c99da9eef1c58f09cf09b9744d7b
- aeb0e1d0e71ce2a08db9b1e5fb98e0aa
Licencia y atribución
Autor: FireEye
Repositorio de origen: Mandiant red team tool countermeasures @ 3561b71724
Licencia: BSD 2-Clause License (licencia del repositorio)
Aviso de copyright: Copyright (c) 2023, MANDIANT
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: 595c9e2a-3d9d-5366-9449-de1bcf333f78
Metadatos
| rev | 4 |
|---|
Etiquetas:FILE
Reglas relacionadas
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-12-08
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-12-08
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-12-02
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-12-02
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-11-27
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-12-02
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-12-02
- APT / actorMandiant red team tool countermeasures· FireEye· 2020-11-27