Detekce založená na podpisu pomocí YARA

v předchozím příspěvku jsem hovořil o tom, jak můžete pomocí STIX, TAXII a Kybox sdílet inteligenci hrozeb.

Jedním z klíčových prvků pro uvedení hrozbě informace na dobré využití vyžaduje, aby informace, je žalovatelné, nebo alespoň použitelné. Sdílené informace musí být přesné, úplné a relevantní pro vaše prostředí.

Kybox poskytuje společnou strukturu pro reprezentaci kybernetických pozorovatelných napříč a mezi operačními oblastmi podnikové kybernetické bezpečnosti. Kybox může obsahovat hashe, řetězce nebo klíče registru. Informace poskytované prostřednictvím systému lze použít ke kontrole přítomnosti malwaru ve vašem prostředí. YARA je jednou z alternativ k použití Kyboxu, ale tyto dvě se vzájemně nevylučují.

co je YARA?

YARA je nástroj určený k tomu, aby pomohl výzkumníkům malwaru identifikovat a klasifikovat vzorky malwaru. Říká se tomu švýcarský armádní nůž odpovídající vzoru pro bezpečnostní výzkumníky(a všechny ostatní). Je multiplatformní a lze jej použít jak z rozhraní příkazového řádku, tak prostřednictvím vlastních skriptů Pythonu.

tento nástroj umožňuje provádět detekci malwaru založenou na podpisu, což je něco podobného tomu, co pro vás mohou antivirová řešení udělat.

Jak Jej Používáte?

Chcete-li použít tuto metodu, potřebujete pravidlo a soubor, který chcete zkontrolovat. Chcete-li jej například spustit z příkazového řádku, použijte:
toto se zobrazí, pokud se dané pravidlo shoduje s poskytnutým souborem. Pokud nevidíte výstup a nepoužili jste možnost negovat, znamená to, že se žádné pravidlo neshodovalo.

můžete jej spustit pomocí několika konfiguračních přepínačů; to jsou dva nejdůležitější :

  • -n: tisk pouze nesplněných pravidel (negovat).
  • – r: rekurzivně prohledávat adresáře.

pravidla

pravidlo je množina řetězců a nějaká forma logiky, napsaná Booleovskými výrazy.

Tam je podpora pro tři různé typy řetězců:

  • Hexadecimální řetězce, které jsou užitečné pro stanovení surového bajtů;
  • Textové řetězce;
  • Regulární výrazy.

podmínky jsou Booleovské výrazy, které poznáte z běžných programovacích jazyků. Mohou pracovat na kterémkoli z daných řetězců, ale také na speciálních vestavěných proměnných, jako je velikost souboru, nebo na externích proměnných, které definujete mimo pravidlo. K dispozici je také podpora pro použití modulů, jako je kukačka, rozšířit funkce, které můžete použít v podmínkách.

z Yary budete mít největší prospěch, pokud jí poskytnete dobrou sadu pravidel. Můžete buď napsat vlastní pravidla, nebo je získat od jiného poskytovatele.

Napište vlastní pravidla

psaní vlastních pravidel není tak obtížné, pokud vezmete v úvahu tyto pokyny:

  • kritéria, která používáte, musí být nezbytnou součástí chování malwaru.
  • kritéria by měla být dostatečná k rozlišení testované rodiny malwaru od jiných rodin malwaru.
  • kritéria musí být něco, co je běžné u různých vzorků.

Jakmile budete mít analýzu malware a extrahuje užitečné, rozpoznatelné data z něj, pak můžete transformovat informace do YARA řetězce a kombinovat je s nějakou formou logiku.

získejte pravidla z externích zdrojů

protože YARA používá podpisy podobné antivirovým řešením, mělo by smysl tyto podpisy znovu použít jako databázi pravidel. S použitím skriptu clamav_to_yara.py, můžete převést databázi podpisů ClamAV na vlastní sadu pravidel.

dalším zdrojem pravidel je úložiště GitHub YaraRules. Toto je sada pravidel pod licencí GNU-GPLv2 udržovanou skupinou výzkumných pracovníků v oblasti IT bezpečnosti. Pravidla jsou uložena v různých kategoriích-pravidla zaměřená na detekci anti-debug a anti-vizualizačních technik, škodlivých dokumentů, packerů atd. – a často aktualizované. Můžete je získat klonováním úložiště Github.

některé platformy pro sdílení hrozeb, jako jsou MISP a ThreatConnect, také podporují YARA. To vám umožní vytvářet pravidla na základě vašich vlastních shromážděných informací o hrozbách.

automaticky generovat pravidla

S použitím generátoru pravidel z Joe Sandbox můžete vytvářet podpisy pro Windows na základě statických a dynamických údajů o chování. Všimněte si, že platí stejná pravidla jako při používání bezplatných online karantén pro analýzu malwaru. Nahráváte soubory do externí cloudové služby, což by nemělo být prováděno s citlivými soubory nebo daty obsahujícími jakoukoli formu pověření uživatele.

Další Případy Použití

jsem se zmínil dříve, že můžete převést ClamAV databáze použitelných pravidel. Také to jde opačně. Předpokládejme, že máte soubor podrobných pravidel. ClamAV můžete nakonfigurovat tak, aby rozšířil svou sadu funkcí o poskytnutá pravidla a podporoval YARA. To vám umožní přizpůsobit pravidla komprimovaným nebo zabaleným souborům. VirusTotal private API má také funkci, pomocí které můžete zadat vlastní pravidla a nechat je spustit při nahrání odpovídajícího vzorku.

ochrana založená na podpisu nestačí

pouze spoléhání se na ochranu založenou na podpisu již nestačí. Útočníci vyvinuli protiopatření, která mohou použít k obcházení této metody. S využitím různých šifrovacích služeb, baličů a polymorfismu mohou snadno generovat malware, který je dostatečně odlišný, takže již neodpovídá existujícím podpisům. Poté nějakou dobu trvá, než se nová chuť zvedne a sdílí se podpis.

tyto nevýhody nezastarají detekci založenou na podpisu. Bezpečnostní komunita je silná ve sdílení nových indikátorů hrozeb, takže tyto typy nástrojů se stále ukáží jako důležitý přínos pro váš arzenál.

závěr

přestože detekce založená na podpisu pomocí YARA má své limity, jedná se o snadno použitelný a poměrně jednoduchý způsob detekce malwaru ve vašem prostředí. Nebylo by moudré spoléhat se na to jako na jediné opatření na ochranu před hrozbami,ale vzhledem k přímému použití by chybějící tento nástroj nebyl dobrý nápad.

You might also like

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.