Forklaret: Yara regler

    Pieter Arnts Pieter Arnts
    4 år siden

Yara logo

YARA-regler er en måde at identificere skadelige programmer (eller andre filer) ved at oprette regler, der ser efter bestemte egenskaber. YARA blev oprindeligt udviklet af Victor Alvares fra Virustotal og bruges hovedsageligt til forskning og detektion. Det blev udviklet med ideen om at beskrive mønstre, der identificerer bestemte stammer eller hele familier af skadelige programmer.

syntaks

hver regel skal starte med ordreglen efterfulgt af navnet eller identifikatoren. Identifikatoren kan indeholde et alfanumerisk tegn og understregningstegnet, men det første tegn må ikke være et ciffer. Der er en liste over Yara-nøgleord, der ikke må bruges som en identifikator, fordi de har en foruddefineret betydning.

tilstand

regler er sammensat af flere sektioner. Tilstandsafsnittet er det eneste, der kræves. Dette afsnit angiver, hvornår regelresultatet er sandt for det objekt (fil), der undersøges. Den indeholder et boolsk udtryk, der bestemmer resultatet. Betingelser er ved design boolske udtryk og kan indeholde alle de sædvanlige logiske og relationelle operatører. Du kan også medtage en anden regel som en del af dine forhold.

Strings

for at give betingelsesafsnittet en betydning skal du også bruge en strings sektion. Strengene sektioner er, hvor du kan definere de strenge, der vil blive søgt i filen. Lad os se på et let eksempel.

rule vendor
{
strings:
$text_string1 = "Vendor name" wide
$text_string2 = "Alias name" wide
condition:
$text_string1 or $text_string2
}

reglen vist ovenfor er navngivet leverandør og ser efter strengene “leverandørnavn” og “Aliasnavn”. Hvis en af disse strenge findes, er resultatet af reglen sandt.

der er flere typer strenge, du kan kigge efter:

  • i kombination med jokertegn, spring og alternativer.
  • tekststrenge med modifikatorer: nocase, fuldord, bred og ascii.
  • regulære udtryk, med de samme modifikatorer som tekststrenge.

der er mange mere avancerede forhold, du kan bruge, men de er uden for rammerne af dette indlæg. Hvis du gerne vil vide mere, kan du finde det i Yara-dokumentationen.

Metadata

Metadata kan tilføjes for at hjælpe med at identificere de filer, der blev hentet af en bestemt regel. Metadataidentifikatorerne efterfølges altid af et lighedstegn og den indstillede værdi. De tildelte værdier kan være strenge, heltal eller en boolsk værdi. Bemærk, at identifikator / værdipar defineret i metadatasektionen ikke kan bruges i afsnittet betingelse, deres eneste formål er at gemme yderligere oplysninger om reglen.

Resume

YARA er et værktøj, der kan bruges til at identificere filer, der opfylder visse betingelser. Det bruges hovedsageligt af sikkerhedsforskere til at klassificere ondsindet program.

Links

signaturbaseret detektion med YARA

seneste YARA-dokumentation

YARA: Enkel og effektiv måde at dissekere ondsindet program

skærmbilleder blev lavet ved hjælp af Yara Editor af Adlice

Pieter Arnts



+