YARA-säännöt haittaohjelmien tunnistamiseen
Kirjoitatte merkkijonoihin, tavukuvioihin ja tiedostorakenteeseen perustuvia YARA-sääntöjä haittaohjelmaperheiden tunnistamiseen.
YARA-säännöt haittaohjelmien tunnistamiseen on ilmainen Cyber Security Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Cyber Security Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Cyber Security Academy-kurssilla on yhteensä 4 oppituntia.
Mikä YARA on?
YARA on haittaohjelmien luokitteluun suunniteltu kuviontunnistustyökalu. Säännöissä kuvataan haittaohjelmaperheitä yhdistämällä merkkijonokuvioita, tavusarjoja ja totuusarvoehtoja. YARA etsii osumia tiedostoista, prosesseista tai muistista ja ilmoittaa niistä.
YARA-säännön rakenne
Säännössä on kolme osaa: meta (metatiedot, kuten tekijä ja päivämäärä), strings (etsittävät kuviot) ja condition (kuvioita yhdistävä totuusarvologiikka). Säännöt käännetään skanneriksi nopeita tiedostojärjestelmän läpikäyntejä varten.
rule ExampleRule {
meta:
author = "analyst"
strings:
$a = "malicious_string"
$b = { 4D 5A 90 00 }
condition:
$a and $b
}Merkkijonokuviot
YARA tukee kolmea merkkijonotyyppiä: tavalliset tekstimerkkijonot (muokkaimilla nocase ja wide), jokerimerkkejä sisältävät heksakuviot ({ 4D 5A ?? ?? }) ja säännölliset lausekkeet (/pattern/). wide käsittelee Windows-haittaohjelmissa yleisiä UTF-16-merkkijonoja.
Heksakuviot ja jokerimerkit
Käyttäkää ??-merkintää yksitavuisiin jokerimerkkeihin ja [n-m]-merkintää heksakuvioiden vaihtuvan pituisiin hyppäyksiin. Esimerkki: { 60 89 E5 31 C0 [4-8] 5D C3 } osuu shellcode-stubiin muuttuvista osioista riippumatta.
Ehtologiikka
Ehdot yhdistävät merkkijonoja operaattoreilla and, or ja not. Käyttäkää joustavaa täsmäytystä varten ehtoja any of them, all of them tai 2 of ($a*). Kynnysarvoehdot, kuten 5 of ($s*), vähentävät yleisten merkkijonojen aiheuttamia vääriä positiivisia.
Tiedoston ominaisuuksien ehdot
YARA voi tarkistaa tiedostokoon (filesize < 1MB), PE-otsakkeen ominaisuudet (pe.imphash()) ja aloituskohdan tavut (uint16(0) == 0x5A4D). PE-moduulin ehdot tunnistavat tiettyjä kääntäjän tuotoksia ja linkkerin metatietoja.
Sääntöjen kirjoittaminen käyttäytymisanalyysin perusteella
Käyttäkää staattisessa ja dynaamisessa analyysissä poimittuja merkkijonoja sääntöjen merkkijonoina. C2-URL-osoite, yksilöllinen mutexin nimi, tietty virheilmoitus tai shellcode-stubista peräisin oleva tavusarja tuottaa vahvan, vähän vääriä positiivisia aiheuttavan YARA-merkkijonon.
YARA-sääntöjen testaaminen
Testatkaa komennolla yara rule.yar /path/to/sample. Vahvistakaa tulokset puhtaiden tiedostojen edustavalla kokoelmalla väärien positiivisten määrän mittaamiseksi. Käyttäkää --no-warnings-valitsinta hiljaiseen tulosteeseen ja -r-valitsinta rekursiiviseen hakemistojen skannaukseen.
yara -r rules/family.yar /malware_corpus/
yara -r rules/family.yar /System32/ 2>/dev/nullYARA tietoturvatuotteissa
YARA-säännöt toimivat ClamAV:n, OSSECin, Velociraptorin, Splunkin ja EDR-alustojen sisällä. Keskittäkää säännöt Git-repositorioon, versioikaa ne, vertaisarvioikaa ne ennen käyttöönottoa ja seuratkaa osumatilastoja vähäarvoisten sääntöjen poistamiseksi käytöstä.
Yleisten sudenkuoppien välttäminen
Liian yleiset merkkijonot aiheuttavat vääriä positiivisia. Hyvin lyhyet heksakuviot osuvat kohinaan. Profiloikaa säännöt aina edustavilla puhtailla näytteillä ennen käyttöönottoa. Käyttäkää mahdollisuuksien mukaan ehtoa all of them ehdon any of them sijaan tarkkuuden parantamiseksi.
YARA-yhteisön resurssit
YARA-Forge kokoaa laadukkaita yhteisön sääntöjä. MalwareBazaarin kaltaiset haittaohjelmarekisterit tarjoavat näytteitä testausta varten. Toimittajien (Mandiant, Kaspersky) GitHub-repositoriot julkaisevat tutkimustason sääntöjä, joita voitte tutkia ja mukauttaa.
Tietotesti
Mitä YARA-ehto 2 of ($s*) tarkoittaa?
Yhteenveto
YARA-säännöt yhdistävät merkkijonokuvioita, tavusarjoja ja totuusarvoehtoja haittaohjelmaperheiden luokittelemiseksi. Käyttäytymisanalyysin havaintojen perusteella laaditut säännöt, puhtailla tiedostokokoelmilla tehtävä testaus ja käyttöönotto tietoturva-alustojen kautta luovat skaalautuvan tunnistuskattavuuden.
Opi Cyber Security Academy tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 76
- Oppitunnit
- 303
Usein kysytyt kysymykset
Onko oppitunti ”YARA-säännöt haittaohjelmien tunnistamiseen” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Cyber Security Academy-oppimispolun 3 oppituntia, myös oppitunnin “YARA-säännöt haittaohjelmien tunnistamiseen”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Cyber Security Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”YARA-säännöt haittaohjelmien tunnistamiseen”?
Kirjoitatte merkkijonoihin, tavukuvioihin ja tiedostorakenteeseen perustuvia YARA-sääntöjä haittaohjelmaperheiden tunnistamiseen. Harjoittelet Cyber Security Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Cyber Security Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Cyber Security Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”YARA-säännöt haittaohjelmien tunnistamiseen”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Cyber Security Academy-oppitunnilla?
Kyllä. Jokainen Cyber Security Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Staattinen analyysi: merkkijonot, hajautusarvot ja PE-otsakkeet
- Dynaaminen analyysi hiekkalaatikossa
- Toiminnalliset IOC:t: rekisteri-, verkko- ja tiedostojäljet
- YARA-säännöt haittaohjelmien tunnistamiseen