Како користити YARA за напредно откривање злонамерног софтвера

Последње ажурирање: 01.02.2024.

  • YARA омогућава описивање породица злонамерног софтвера коришћењем флексибилних правила заснованих на стринговима, бинарним обрасцима и својствима датотека.
  • Добро осмишљена правила могу да открију све, од ransomware-а и APT-ова до webshell-ова и zero-day експлоата у више окружења.
  • Интеграција YARA-е у резервне копије, форензичке токове рада и корпоративне алате јача одбрану изван традиционалног антивирусног софтвера.
  • YARA заједница и спремишта правила олакшавају дељење обавештајних података и континуирано побољшавају детекцију.

Како користити YARA за напредно откривање злонамерног софтвера

¿Како користити YARA за напредно откривање злонамерног софтвера? Када традиционални антивирусни програми достигну своје границе и нападачи се провуку кроз сваку могућу пукотину, на сцену ступа алат који је постао неопходан у лабораторијама за реаговање на инциденте: YARA, „швајцарски нож“ за лов на злонамерни софтверДизајниран да опише породице злонамерног софтвера користећи текстуалне и бинарне обрасце, омогућава да иде далеко даље од једноставног упаривања хеша.

У правим рукама, YARA није само за лоцирање не само познате узорке злонамерног софтвера, већ и нове варијанте, експлоите нултог дана, па чак и комерцијалне офанзивне алатеУ овом чланку ћемо детаљно и практично истражити како се користи YARA за напредно откривање злонамерног софтвера, како се пишу робусна правила, како се тестирају, како се интегришу у платформе попут Veeam-а или ваш сопствени аналитички ток рада, и које најбоље праксе прати професионална заједница.

Шта је YARA и зашто је тако моћна у откривању злонамерног софтвера?

YARA је скраћеница од „Још један рекурзивни акроним“ и постала је де факто стандард у анализи претњи јер Омогућава описивање породица злонамерног софтвера коришћењем читљивих, јасних и веома флексибилних правила.Уместо да се ослања искључиво на статичке антивирусне потписе, YARA ради са обрасцима које сами дефинишете.

Основна идеја је једноставна: YARA правило испитује датотеку (или меморију, или ток података) и проверава да ли је испуњен низ услова. услови засновани на текстуалним стринговима, хексадецималним низовима, регуларним изразима или својствима датотекеАко је услов испуњен, постоји „подударање“ и можете упозорити, блокирати или извршити детаљнију анализу.

Овај приступ омогућава безбедносним тимовима Идентификујте и класификујте злонамерни софтвер свих врста: класичне вирусе, црве, тројанце, ransomware, webshell-ове, cryptominers, злонамерне макрое и још много тогаНије ограничен на одређене екстензије датотека или формате, тако да такође детектује прикривену извршну датотеку са екстензијом .pdf или HTML датотеку која садржи веб шел.

Штавише, YARA је већ интегрисана у многе кључне услуге и алате екосистема сајбер безбедности: VirusTotal, сандбоксови попут Cuckoo-а, платформе за резервне копије попут Veeam-а или решења за лов на претње врхунских произвођачаСтога је савладавање YARA постало готово обавезно за напредне аналитичаре и истраживаче.

Напредни случајеви употребе YARA-е у откривању злонамерног софтвера

Једна од предности YARA-е је то што се прилагођава као рукавица вишеструким безбедносним сценаријима, од SOC-а до лабораторије за злонамерни софтвер. Иста правила важе и за једнократне ловове и за континуирано праћење..

Најдиректнији случај укључује стварање посебна правила за одређени злонамерни програм или целе породицеАко вашу организацију напада кампања заснована на познатој породици (на пример, тројанац за удаљени приступ или APT претња), можете профилисати карактеристичне низове и обрасце и покренути правила која брзо идентификују нове повезане узорке.

Још једна класична употреба је фокус YARA заснована на потписимаОва правила су дизајнирана да лоцирају хешеве, веома специфичне текстуалне низове, фрагменте кода, кључеве регистра или чак одређене бајт секвенце које се понављају у више варијанти истог злонамерног софтвера. Међутим, имајте на уму да ако тражите само тривијалне низове, ризикујете генерисање лажно позитивних резултата.

YARA такође блиста када је у питању филтрирање по типови датотека или структурне карактеристикеМогуће је креирати правила која се примењују на PE извршне датотеке, Office документе, PDF-ове или практично било који формат, комбиновањем стрингова са својствима као што су величина датотеке, одређени заглавља (нпр. 0x5A4D за PE извршне датотеке) или сумњиви увоз функција.

У савременом окружењу, његова употреба је повезана са inteligencia de amenazasЈавни репозиторијуми, истраживачки извештаји и IOC фидови се преводе у YARA правила која су интегрисана у SIEM, EDR, платформе за прављење резервних копија или sandbox-ове. Ово омогућава организацијама да брзо откривање нових претњи које деле карактеристике са већ анализираним кампањама.

Разумевање синтаксе YARA правила

Синтакса YARA-е је прилично слична синтакси C-а, али на једноставнији и фокусиранији начин. Свако правило се састоји од имена, опционог одељка са метаподацима, одељка са низом података и, обавезно, одељка са условом.Од сада па надаље, моћ лежи у томе како све то комбинујете.

Lo primero es el назив правилаМора да иде одмах после кључне речи rule (o regla Ако документујете на шпанском, иако ће кључна реч у датотеци бити ruleи мора бити важећи идентификатор: без размака, без броја и без доње црте. Добра је идеја пратити јасну конвенцију, на пример нешто попут Варијанта породице злонамерног софтвера o APT_Actor_Tool, што вам омогућава да на први поглед идентификујете шта је намењено детекцији.

Ексклузивни садржај - Кликните овде  ¿Cómo vincular mi cuenta de AVG AntiVirus con mi computadora?

Следи одељак stringsгде дефинишете обрасце које желите да тражите. Овде можете користити три главна типа: текстуални низови, хексадецимални низови и регуларни изразиТекстуални низови су идеални за људски читљиве фрагменте кода, URL-ове, интерне поруке, имена путања или PDB-ове. Хексадецимални бројеви вам омогућавају да снимите сирове бајт обрасце, што је веома корисно када је код замаскиран, али задржава одређене константне секвенце.

Регуларни изрази пружају флексибилност када је потребно да покријете мале варијације у низу, као што су промене домена или благо измењени делови кода. Штавише, и стрингови и регуларни изрази дозвољавају да излазни изрази представљају произвољне бајтове, што отвара врата веома прецизним хибридним обрасцима.

La sección condition То је једина обавезна опција и дефинише када се сматра да правило „подудара“ са датотеком. Тамо користите булове и аритметичке операције (и, или, не, +, -, *, /, било који, све, садржи итд.) да би се изразила прецизнија логика детекције од једноставног „ако се овај стринг појави“.

На пример, можете навести да правило важи само ако је датотека мања од одређене величине, ако се појављују сви критични низови или ако је присутан барем један од неколико низова. Такође можете комбиновати услове као што су дужина низа, број подударања, одређени офсети у датотеци или величина саме датотеке.Креативност овде прави разлику између генеричких правила и хируршких детекција.

Коначно, имате опциони одељак metaИдеално за документовање периода. Уобичајено је да се укључи аутор, датум креирања, опис, интерна верзија, референца на извештаје или карте и, генерално, све информације које помажу да репозиторијум буде организован и разумљив за друге аналитичаре.

Практични примери напредних YARA правила

Да бисмо све горе наведено ставили у перспективу, корисно је видети како је једноставно правило структурирано и како постаје сложеније када се појаве извршне датотеке, сумњиви увози или понављајуће секвенце инструкција. Почнимо са играчком-лењиром и постепено повећавајмо величину..

Минимално правило може да садржи само стринг и услов који га чини обавезним. На пример, можете да тражите одређени текстуални стринг или низ бајтова који представља фрагмент злонамерног софтвера. Услов би, у том случају, једноставно навео да је правило испуњено ако се тај низ или образац појави., без додатних филтера.

Међутим, у стварним условима ово је недовољно, јер Једноставни ланци често генеришу много лажно позитивних резултатаЗато је уобичајено комбиновање неколико стрингова (текстуалних и хексадецималних) са додатним ограничењима: да датотека не прелази одређену величину, да садржи одређене заглавља или да се активира само ако се пронађе барем један стринг из сваке дефинисане групе.

Типичан пример у анализи извршних PE датотека укључује увоз модула pe из YARA-е, што вам омогућава да испитате интерна својства бинарне датотеке: увезене функције, секције, временске ознаке итд. Напредно правило може захтевати да се датотека увезе Процес креирања desde Kernel32.dll и неке HTTP функције из wininet.dll, поред тога што садржи одређени низ знакова који указује на злонамерно понашање.

Ова врста логике је савршена за лоцирање Тројанци са могућностима даљинског повезивања или излазачак и када се имена датотека или путање мењају од једне кампање до друге. Важно је фокусирати се на основно понашање: креирање процеса, HTTP захтеви, шифровање, перзистентност итд.

Још једна веома ефикасна техника је посматрање низови инструкција који се понављају између узорака из исте породице. Чак и ако нападачи спакују или замагљују бинарни фајл, често поново користе делове кода које је тешко променити. Ако након статичке анализе пронађете константне блокове инструкција, можете формулисати правило са џокери у хексадецималним низовима који обухвата тај образац уз одржавање одређене толеранције.

Са овим правилима „заснованим на понашању кода“ могуће је праћење читавих кампања злонамерног софтвера попут оних PlugX/Korplug или других APT породицаНе детектујете само одређени хеш, већ идете на развојни стил, такорећи, нападача.

Употреба YARA у стварним кампањама и претњама нултог дана

YARA је доказала своју вредност посебно у области напредних претњи и zero-day експлоатација, где класични механизми заштите стижу прекасно. Добро познати пример је коришћење YARA-е за лоцирање експлоита у Silverlight-у на основу минималних процурелих обавештајних података..

У том случају, из имејлова украдених од компаније посвећене развоју офанзивних алата, изведено је довољно образаца да се изгради правило усмерено на одређени експлоат. Са тим једним правилом, истраживачи су успели да прате узорак кроз море сумњивих досијеа.Идентификујте експлоит и присилите га да га исправите, спречавајући много озбиљнију штету.

Ове врсте прича илуструју како YARA може да функционише као рибарска мрежа у мору досијеаЗамислите своју корпоративну мрежу као океан пун „риба“ (датотека) свих врста. Ваша правила су попут одељака у мрежи: сваки одељак садржи рибе које одговарају одређеним карактеристикама.

Ексклузивни садржај - Кликните овде  ¿Stack App incluye opciones para compartir archivos cifrados?

Када завршите са вучењем, имате узорци груписани по сличности са одређеним породицама или групама нападача: „слично врсти X“, „слично врсти Y“ итд. Неки од ових узорака могу вам бити потпуно нови (нови бинарни фајлови, нове кампање), али се уклапају у познати образац, што убрзава вашу класификацију и одговор.

Да би извукле максимум из YARA у овом контексту, многе организације удружују снаге напредна обука, практичне лабораторије и контролисана експериментална окружењаПостоје високо специјализовани курсеви посвећени искључиво уметности писања добрих правила, често заснованих на стварним случајевима сајбер шпијунаже, у којима студенти вежбају са аутентичним узорцима и уче да траже „нешто“ чак и када не знају тачно шта траже.

Интегришите YARA у платформе за прављење резервних копија и опоравак

Једна област у коју се YARA савршено уклапа, а која често пролази помало незапажено, јесте заштита резервних копија. Ако су резервне копије заражене злонамерним софтвером или ransomware-ом, враћање система може поново покренути целу кампању.Зато су неки произвођачи директно уградили YARA моторе у своја решења.

Могу се покренути платформе за прављење резервних копија следеће генерације YARA сесије анализе засноване на правилима на тачкама враћањаЦиљ је двострук: лоцирати последњу „чисту“ тачку пре инцидента и открити злонамерни садржај скривен у датотекама који можда нису покренуте другим проверама.

У овим окружењима типичан процес укључује избор опције „Скенирајте тачке враћања помоћу YARA лењира„током конфигурације задатка анализе. Затим се наводи путања до датотеке са правилима (обично са екстензијом .yara или .yar), која се обично чува у конфигурационој фасцикли специфичној за решење за прављење резервних копија.“

Током извршавања, механизам итеративно пролази кроз објекте садржане у копији, примењује правила и Све подударности бележи у посебном YARA дневнику анализе.Администратор може да прегледа ове логове из конзоле, прегледа статистику, види које су датотеке покренуле упозорење, па чак и да прати којим машинама и одређеном датуму одговара свако подударање.

Ову интеграцију допуњују и други механизми као што су откривање аномалија, праћење величине резервне копије, претраживање одређених IOC-ова или анализа сумњивих алатаАли када су у питању правила прилагођена одређеној породици или кампањи ransomware-а, YARA је најбољи алат за прецизирање те претраге.

Како тестирати и валидирати YARA правила без нарушавања ваше мреже

Android malware

Када почнете да пишете сопствена правила, следећи кључни корак је да их темељно тестирате. Превише агресивно правило може генерисати поплаву лажно позитивних резултата, док превише лабаво може дозволити да стварне претње промакну.Зато је фаза тестирања једнако важна као и фаза писања.

Добра вест је да не морате да поставите лабораторију пуну радног малвера и заразите пола мреже да бисте то урадили. Већ постоје репозиторијуми и скупови података који нуде ове информације. познати и контролисани узорци злонамерног софтвера у истраживачке сврхеМожете преузети те узорке у изоловано окружење и користити их као тестну платформу за ваша правила.

Уобичајени приступ је да се почне са локалним покретањем YARA-е, из командне линије, на директоријуму који садржи сумњиве датотеке. Ако се ваша правила подударају где треба и једва да се покваре у чистим датотекама, на правом сте путу.Ако превише окидају, време је да прегледате стрингове, прецизирате услове или уведете додатна ограничења (величина, увоз, помаци итд.).

Још једна кључна ствар је да осигурате да ваша правила не угрожавају перформансе. Приликом скенирања великих директоријума, потпуних резервних копија или масивних колекција узорака, Лоше оптимизована правила могу успорити анализу или потрошити више ресурса него што је потребно.Стога је препоручљиво мерити временске интервале, поједноставити компликоване изразе и избегавати претерано тешке регуларне изразе.

Након што прођете кроз ту фазу лабораторијског тестирања, моћи ћете да Промовишите правила у производном окружењуБило да је у питању ваш SIEM, ваши системи за резервне копије, имејл сервери или где год желите да их интегришете. И не заборавите да одржавате континуирани циклус прегледа: како се кампање развијају, ваша правила ће захтевати периодична прилагођавања.

Алати, програми и ток рада са YARA-ом

идентификујте датотеке без датотека

Поред званичне бинарне датотеке, многи професионалци су развили мале програме и скрипте око YARA-е како би олакшали њену свакодневну употребу. Типичан приступ укључује креирање апликације за саставите свој безбедносни комплет који аутоматски чита сва правила у фасцикли и примењује их на директоријум за анализу.

Ове врсте домаћих алата обично раде са једноставном структуром директоријума: једна фасцикла за правила преузета са интернета (на пример, „rulesyar“) и другу фасциклу за сумњиве датотеке које ће бити анализиране (на пример, „малвер“). Када се програм покрене, проверава да ли обе фасцикле постоје, приказује правила на екрану и припрема се за извршавање.

Када притиснете дугме као што је „Започните проверуАпликација затим покреће извршну датотеку YARA са жељеним параметрима: скенирање свих датотека у фасцикли, рекурзивна анализа поддиректоријума, приказивање статистике, испис метаподатака итд. Сва подударања се приказују у прозору са резултатима, што показује која датотека одговара ком правилу.

Ексклузивни садржај - Кликните овде  Como Reconocer Un Billete Falso De 500

Овај ток рада омогућава, на пример, откривање проблема у групи извезених имејлова. злонамерне уграђене слике, опасни прилози или веб-шкољке скривене у наизглед безопасним датотекамаМноге форензичке истраге у корпоративним окружењима ослањају се управо на ову врсту механизма.

Што се тиче најкориснијих параметара приликом позивања YARA-е, истичу се опције као што су следеће: -r за рекурзивно претраживање, -S за приказ статистике, -m за издвајање метаподатака и -w за игнорисање упозорењаКомбиновањем ових заставица можете прилагодити понашање свом случају: од брзе анализе у одређеном директоријуму до потпуног скенирања сложене структуре фасцикли.

Најбоље праксе при писању и одржавању YARA правила

Да бисте спречили да ваше складиште правила постане неуправљив хаос, препоручљиво је применити низ најбољих пракси. Прво је рад са доследним шаблонима и конвенцијама именовањатако да сваки аналитичар може на први поглед да разуме шта свако правило ради.

Многи тимови усвајају стандардни формат који укључује заглавље са метаподацима, ознакама које указују на тип претње, актера или платформу и јасан опис онога што се откриваОво помаже не само интерно, већ и када делите правила са заједницом или доприносите јавним спремиштима.

Још једна препорука је да увек имате на уму да YARA је само још један слој одбранеНе замењује антивирусни софтвер или EDR, већ их допуњује у стратегијама за Заштитите свој Windows рачунарИдеално би било да се YARA уклопи у шире референтне оквире, као што је NIST оквир, који се такође бави идентификацијом, заштитом, откривањем, реаговањем и опоравком имовине.

Са техничке тачке гледишта, вреди посветити време evitar falsos positivosОво подразумева избегавање превише генеричких низова, комбиновање неколико услова и коришћење оператора као што су all of o any of Користите своју главу и искористите структурна својства датотеке. Што је специфичнија логика која окружује понашање злонамерног софтвера, то боље.

На крају, одржавајте дисциплину верзирање и периодични преглед То је кључно. Породице злонамерног софтвера се развијају, индикатори се мењају, а правила која данас функционишу могу бити неадекватна или застарела. Периодично прегледање и усавршавање вашег скупа правила је део игре мачке и миша у сајбер безбедности.

YARA заједница и доступни ресурси

Један од главних разлога зашто је YARA стигла тако далеко је снага њене заједнице. Истраживачи, безбедносне фирме и тимови за реаговање из целог света континуирано деле правила, примере и документацију.стварајући веома богат екосистем.

Главна референтна тачка је Званични репозиторијум компаније YARA на GitHub-уТамо ћете пронаћи најновије верзије алата, изворни код и линкове до документације. Одатле можете пратити напредак пројекта, пријављивати проблеме или доприносити побољшањима ако желите.

Званична документација, доступна на платформама као што је ReadTheDocs, нуди комплетан водич за синтаксу, доступни модули, примери правила и референце за употребуТо је суштински ресурс за искоришћавање најнапреднијих функција, као што су PE инспекција, ELF, правила меморије или интеграције са другим алатима.

Поред тога, постоје и заједнички репозиторијуми YARA правила и потписа где аналитичари из целог света... Они објављују колекције спремне за употребу или колекције које се могу прилагодити вашим потребама.Ови репозиторијуми обично укључују правила за одређене породице злонамерног софтвера, комплете за експлоатацију, злонамерно коришћене алате за тестирање на пентестинг, веб шкољке, крипто руднике и још много тога.

Паралелно, многи произвођачи и истраживачке групе нуде Специфична обука у YARA-и, од основних нивоа до веома напредних курсеваОве иницијативе често укључују виртуелне лабораторије и практичне вежбе засноване на сценаријима из стварног света. Неке се чак нуде бесплатно непрофитним организацијама или ентитетима који су посебно рањиви на циљане нападе.

Читав овај екосистем значи да, уз мало посвећености, можете прећи пут од писања првих основних правила до развијају софистициране пакете способне за праћење сложених кампања и откривање невиђених претњиА комбиновањем YARA-е са традиционалним антивирусом, безбедним резервним копијама и обавештајним подацима о претњама, знатно отежавате ствари злонамерним актерима који лутају интернетом.

Уз све наведено, јасно је да је YARA много више од једноставног услужног програма командне линије: то је pieza clave у било којој напредној стратегији за откривање злонамерног софтвера, флексибилан алат који се прилагођава вашем начину размишљања као аналитичара и заједнички језик који повезује лабораторије, SOC-ове и истраживачке заједнице широм света, омогућавајући сваком новом правилу да дода још један слој заштите од све софистициранијих кампања.

Како открити опасни злонамерни софтвер без датотека у систему Windows 11
Повезани чланак:
Како открити опасни злонамерни софтвер без датотека у систему Windows 11