Aller au contenu

YARA · SEKOIA.IO Community

SEKOIA_Apt_Sofacy_Graphitemalware_Generic

Detects APT28 graphite malware based on strings

APT / acteurGraphiteSEKOIA.IO CommunityDetection Rule License 1.1Compile avec YARA-X
Auteur
Sekoia.io
Date
2022-09-27
Modifiée
2024-12-19
Score / Qualité
75 / 80

Ce que détecte cette règle

Detects APT28 graphite malware based on strings

Famille de malware associée : Graphite.

Cibles : PE Windows.

Elle définit 7 motifs (7 texte, 0 hex, 0 regex). Modules YARA utilisés : pe.

Résumé généré à partir des métadonnées et de la condition de la règle.

Source de la règle

Inclut les imports nécessaires pour la compiler seule.

apt-sofacy-graphitemalware-generic.yarDetection Rule License 1.1
import "pe"

rule SEKOIA_Apt_Sofacy_Graphitemalware_Generic : FILE
{
	meta:
		description = "Detects APT28 graphite malware based on strings"
		author = "Sekoia.io"
		id = "6b51cfa3-4a7d-4c2a-9fd9-f129b8a18466"
		date = "2022-09-27"
		modified = "2024-12-19"
		reference = "https://github.com/SEKOIA-IO/Community"
		source_url = "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/yara_rules/apt_sofacy_graphitemalware_generic.yar#L3-L25"
		license_url = "https://github.com/SEKOIA-IO/Community/blob/a438a5901a211c2abdf75da9c93921ef187473d1/LICENSE.md"
		logic_hash = "f4c994c36768bae6d6e3b5aeefb634e485ab7b483a693781f29d5ff44c71996f"
		score = 75
		quality = 80
		tags = "FILE"
		version = "1.0"
		classification = "TLP:CLEAR"

	strings:
		$ = "Microsoft Enhanced RSA and AES Cryptographic Provider" wide
		$ = "Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)" wide
		$ = "%s %04d sp%1d.%1d %s"
		$ = "%s%c%s%c%s"
		$ = "InternetReadFile"
		$ = "ObtainUserAgentString"
		$ = "CryptImportKey"

	condition:
		uint16be( 0 ) == 0x4d5a and filesize < 100KB and ( all of them or pe.imphash ( ) == "c56c322548250651361aef7dacf93eaf" )
}

Chaînes (7 motifs)

IdentifiantTypeValeurModificateurs
$texte"Microsoft Enhanced RSA and AES Cryptographic Provider"wide
$texte"Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"wide
$texte"%s %04d sp%1d.%1d %s"
$texte"%s%c%s%c%s"
$texte"InternetReadFile"
$texte"ObtainUserAgentString"
$texte"CryptImportKey"

Condition

uint16be( 0 ) == 0x4d5a and filesize < 100KB and ( all of them or pe.imphash ( ) == "c56c322548250651361aef7dacf93eaf" )

En clair (Heuristique)

  • Le fichier doit commencer par « MZ » — un exécutable Windows (PE).
  • Le fichier doit faire moins de 100KB (garde-fou peu coûteux qui écarte les gros fichiers).
  • Tous les motifs de la règle doivent être trouvés.
  • Utilise le module pe.
  • Vérifie le hash des imports PE (imphash).

Tester cette règle dans votre navigateur

Déposez un fichier pour le scanner avec cette règle grâce à YARA-X compilé en WebAssembly. Rien n’est envoyé.

Déposez un fichier ici ou cliquez pour choisirScanné localement avec YARA-X. Fichiers jusqu’à 200 Mo.

Ouvrir dans l’éditeur

Références

Licence et attribution

Auteur : Sekoia.io

Dépôt source : SEKOIA.IO Community @ a438a5901a

Licence : Detection Rule License 1.1 (licence du dépôt)

Règle d’origine

Reprise via YARA Forge 20260927, qui préfixe les noms de règles par la source et ajoute des champs meta normalisés.

Identifiant de règle: 6b51cfa3-4a7d-4c2a-9fd9-f129b8a18466

Métadonnées

version1.0
classificationTLP:CLEAR

Tags:FILE

Plus de règles Graphite