Vienetas 6 / 11

Kenkėjiškų programų ir tinklo kriminalistinė analizė: atvirkštinė gynybos inžinerija

Pelnas:

  • Suprasti statinės ir dinaminės analizės sluoksnius ir mokėti atlikti eilučių skirstymą, scenarijų anotaciją ir IOC išskyrimą dirbtiniu intelektu
  • Galimybė pažymėti modelius, pvz., anomalijas ir signalus tinklo sraute, palyginti su pradine linija, ir patikrinti kiekvieną TOK
  • Gebėjimas suprasti, kad kenkėjiškų programų diagnozė yra hipotezė ir kad ši informacija bus naudojama tik gynybai ir įgaliotam tyrimui ir negali būti naudojama neteisėtai prieigai ar atakų generavimui.

Įvykio centre dažnai būna kenkėjiškų programų – programinės įrangos, skirtos sugadinti sistemą, pavogti duomenis arba perimti valdymą. „Ką veikia šis failas, kaip jis pateko į sistemą, ką pavogė, kur perdavė į išorę? Atsakymai į šiuos klausimus yra labai svarbūs tiek norint suprasti įvykį, tiek pristatant jį teisme. Taip pat tinklo ekspertizė – įvykio atsekimas iš tinklo srauto įrašų – atskleidžia užpuoliko įėjimą ir išėjimą. Šiame skyriuje apžvelgsime, kaip dirbtinis intelektas yra greitintuvas šiose dviejose srityse ir turėtų būti naudojamas tik gynybos, tikrinimo ir įgaliotos peržiūros tikslais.

Pirmiausia siena: naudojimas gynybai

Svarbiausias šio skyriaus sakinys yra pradžioje: ši informacija skirta vieninteliam tikslui apginti jūsų sistemą, tirti bylą su autoritetu ir patikrinti įrodymus. AI naudojimas siekiant sukurti veikiančią kenkėjišką programą, įsilaužti į kažkieno sistemą arba sukurti ataką yra neteisėta ir neetiška, todėl šis modulis netaikomas. Teismo medicinos analitikas apgręžia inžinierius, kad suprastų ir įrodytų, ką padarė užpuolikas; nekartoti puolimo.

Atsargiai: AI pasakymas „parašykite man veikiančią kenkėjišką programą“ arba „kaip įsilaužti į šią sistemą“ yra neteisėtas naudojimas. Teisingas vartojimas: „apibūdinkite, ką daro šis rastas egzempliorius“, „ką šis srautas reiškia gynybos požiūriu“, „kaip patikrinti šį TOK“. Tikslas visada yra gynyba ir įrodymai.

Du kenkėjiškų programų analizės sluoksniai

Kenkėjiškų programų analizė skirstoma į dvi dalis. Statinė analizė – programos kodo ir struktūros tyrimas jos nepaleidžiant: failo tipas, eilutės – skaitomi tekstai failo viduje, įterptieji URL, vadinami sistemos funkcijomis. Dinaminė analizė (dinaminė analizė – programos paleidimas izoliuotoje aplinkoje ir jos elgsenos stebėjimas): dažniausiai atliekama smėlio dėžėje (sandbox – izoliuota saugi aplinka, kurioje kenkėjiška programa vykdoma nepažeidžiant tikrosios sistemos); Jis stebi, kuriuos failus sukuria, kokius registro raktus paliečia ir kur jungiasi.

AI padeda paaiškinti ir nustatyti prioritetus abiejuose sluoksniuose:

  • Įtartinų URL, komandų ir techninių šablonų žymėjimas kataloguose (eilutėse).
  • Paaiškinimas paprasta kalba, ką daro scenarijus arba makrokomandos.
  • Smėlio dėžės elgsenos žurnalų apibendrinimas ir IOC (kompromiso indikatorius: aptikimo signalai, pvz., kenkėjiškas IP, domeno pavadinimas, failo maiša, registracijos raktas) ištraukimas.
  • Žinomų atakų metodų susiejimo su sistema metmenys (pvz., MITER ATT&CK – atvira žinių bazė, kuri klasifikuoja atakos taktiką ir metodus).

Kiekviena išvestis yra hipotezė, kurią reikia patikrinti; Galutinė diagnozė nustatoma įrodžius elgesį smėlio dėžėje ir rąstuose.

Tinklo teismo ekspertizės analizė ir AI

Tinklo pusėje turite PCAP (paketų fiksavimas - failas, kuriame tinklo srautas įrašomas po paketą), NetFlow / seanso įrašai (kas su kuo kalbėjo, kada ir kiek laiko) ir tarpinio serverio / DNS žurnalai. Šie duomenys gali būti didžiuliai. AI:

  • Žymi neįprastus ryšius (netikėta šalis, uostas, trukmė).
  • Jis aptinka periodinius modelius, pvz., signalizaciją (kenkėjiška programa, reguliariai siunčianti signalą „Aš čia“) į komandų serverį, ir suteikia jiems pirmenybę.
  • Žymi įtartinus / sukurtus domenų vardų modelius (algoritmu sugeneruotus domenų pavadinimus) DNS žurnaluose.
  • Jis paverčia srautą į paprastą įvykio pasakojimą ir parengia ataskaitos projektą.
Patarimas: kai dirbtinis intelektas analizuoja srautą, nustatykite įprastą bazinę liniją – įprastą sistemos elgseną: „Šis serveris paprastai jungiasi tik prie šių šalių per 443 prievadą“. Anomalija įgyja prasmę tik normalios atžvilgiu; Be pradinės padėties viskas atrodo įtartinai, o klaidingi teigiami rezultatai sprogsta.

Haliucinacijų ir diagnozės rizika

Analizuojant kenkėjiškas programas, dirbtinio intelekto haliucinacijos yra ypač pavojingos: AI gali „pamatyti“ funkcijos iškvietimą, kurio nėra, arba klaidingai interpretuoti eilutę ir pasakyti „tai yra išpirkos programa“. Tačiau diagnozė turėtų būti paremta dinamine analize (elgsenos matymu), IOC patikrinimu ir, jei įmanoma, žinomais parašais. „AI taip pasakė“ niekada neužtenka kenkėjiškų programų šeimai diagnozuoti.

trys mini dėklai

1 atvejis – makro analizė paspartinta. „Office“ dokumento VBA makrokomanda, gauta per sukčiavimo incidentą, buvo sudėtinga ir neryški. AI paaiškino makrokomandos veiksmus paprasta kalba: ji iššifravo „PowerShell“ komandą ir atsisiuntė naudingąją apkrovą iš nuotolinio adreso. Analitikas patvirtino šią hipotezę smėlio dėžėje; Atsisiųstas adresas buvo užblokuotas kaip IOC. Analizė sumažėjo nuo 3 valandų iki 40 minučių.

2 atvejis – užfiksuotas švyturys. 6 valandų trukmės „NetFlow“ įraše AI pažymėjo mažus, reguliarius ryšius su tuo pačiu išoriniu IP kas 300 sekundžių. Analitikas patvirtino, kad tai buvo komandų ir valdymo švyturys, ir atpažino pažeistą mašiną. Įprastas modelis buvo toks, kad žmogaus akis praleistų milijonus linijų.

3 atvejis – grįžimas iš klaidingos diagnozės. AI peržiūrėjo vieno pavyzdžio eilutes ir pažymėjo jį kaip „žinoma X išpirkos programa“. Analitikas paleido jį smėlio dėžėje: nebuvo jokio šifravimo elgesio, pavyzdys iš tikrųjų buvo informacijos vagystė. Dinaminis patvirtinimas neleido į ataskaitą patekti klaidingų šeimos tapatybės nustatymo duomenų.

Keturi kopijuojami šablonai

1) Stygų skirstymas:

Jūsų vaidmuo: gynybinis kenkėjiškų programų analitikas. Žemiau yra stygos, ištrauktos iš uniformos. Pažymėkite įtartinus URL, IP, failų kelius, komandas, registro raktus ir techninius rodiklius ir parašykite PAGRINDIMAS. Tai yra hipotezė; ne diagnostikos. Darbinio kodo generavimas; komentuoti tik esamas eilutes.

2) Scenarijaus / makrokomandos aprašas:

Apsaugokite šią makrokomandą / scenarijų: žingsnis po žingsnio, ką ji daro, kokį failą / tinklą / įrašą turi, ar yra kokių nors išlikimo ar duomenų išfiltravimo pėdsakų? Kiekvieną tvirtinimą susiekite su eilute kode. Kodo pavertimas vykdytinu arba „patobulinimas“; tiesiog paaiškink. Jei nesate tikri, pažymėkite kaip „patikrinti smėlio dėžėje“.

3) TOK išvada:

Toliau pateikiamas smėlio dėžės elgesio žurnalas. Iš čia ištraukite patikrintus IOC kandidatus: IP, domeno pavadinimą, failo maišą, registracijos raktą, sukurtą failą. Susiekite kiekvieną IOC su eilute žurnale. Nurodykite, kad tai yra KANDIDATAI aptikimui / blokavimui ir reikalingas patvirtinimas.

4) Tinklo anomalijų žymėjimas:

Pradinė padėtis: šis serveris paprastai bendrauja tik su [šalimi/paslauga] nuo 443. Aš pateiksiu jums seanso įrašus. Remiantis tik tuo, kas TIKRAI vyksta įraše: pažymėkite netikėtą tikslą, prievadą, trukmę ir periodinius (švyturių) modelius; Rodyti kiekvieną su atitinkama eilute. Neteigti priežastingumo; Komentuokite iš gynybos perspektyvos.

Silpnas raginimas / Stiprus raginimas

Silpnas raginimas:

Pasakyk man, ar šis failas yra virusas?

Nėra konteksto, jokio patikrinimo; AI gali pažvelgti į eilutes ir pateikti tikslią, bet netikslią diagnozę.

Galingas raginimas:

Jūsų vaidmuo: gynybinis kenkėjiškų programų analitikas. Pateiksiu statinių rodiklių pavyzdį (failo tipas, eilutės, vadinamos API) ir smėlio dėžės veikimo santrauka. Užduotis: pasiūlykite galimą kategoriją (pvz., parsisiuntimo programa, įsilaužėlis, išpirkos programa) kaip HIPOTEzę, pagrįstą pastebėtu elgesiu; Susiekite kiekvieną hipotezę su konkrečiu rodikliu. Galutinės šeimos diagnozės suteikimas; Išvardykite dinaminio patvirtinimo veiksmus. Komentuoti tik gynybai.

Remdamiesi stebėjimu, „hipoteze“, patikrinimo žingsniu ir gynybiniu suvaržymu, rezultatai yra naudingi ir etiški.

Analizės sluoksnių lentelė

sluoksnis

ką mato

AI indėlis

patikrinimas

statinis

Stygos, struktūra, API

Įtartinas indikatoriaus žymėjimas

rankinis patikrinimas

Dinamiškas

darbinis elgesys

Žurnalo suvestinė, TOK išvada

smėlio dėžės stebėjimas

Tinklas (PCAP / srautas)

eismo modelius

Anomalijos / švyturio žymėjimas

Pradinis patvirtinimas

koreliacija

kelių šaltinių

pasakojimo kontūras

kryžminiai įrodymai

Dažnos klaidos

  • Darant prielaidą, kad statinė diagnozė yra galutinė. Šeimos diagnozę turėtų patvirtinti dinaminis elgesys.
  • Ieškoma anomalijų be bazinės linijos. Neapibrėžiant normalaus, viskas tampa klaidingai teigiama.
  • IOC blokavimas be patikrinimo. Klaidingas IOC perima teisėtą srautą; patvirtinti.
  • AI atakos kūrimas / prašymas. Neleistinas naudojimas; tik gynyba ir patikrinimas.
  • Paleisti kenkėją be izoliacijos. Dinaminė analizė visada atliekama izoliuotoje smėlio dėžėje.

Apibendrinant

Kenkėjiškų programų ir tinklo ekspertizės analizė atskleidžia techninę incidento esmę. AI; Tai labai pagreitina eilučių skirstymą, scenarijų / makrokomandos anotaciją, IOC ištraukimą ir tinklo anomalijų žymėjimą. Tačiau diagnozė yra hipotezė; dinaminė analizė, pradinė padėtis ir IOC patikra yra žmogaus darbas. Ir svarbiausia: ši informacija skirta tik gynybai, įgaliotam patikrinimui ir įrodymų tikrinimui – niekada neteisėtai prieigai ar atakų plėtrai.

Taikymo užduotis

Nustatykite scenarijaus / makrokomandos anotacijos scenarijų saugioje, izoliuotoje aplinkoje (arba įsivaizduojamame egzemplioriuje). Taikyti „scenarijaus/makrokomandos aprašymo“ ir „IOC išvados“ šablonus; Prijunkite ir patikrinkite kiekvieną IOC AI ištrauką prie šaltinio. Tada pabandykite seanso pavyzdiniame žurnale rasti švyturio šabloną su „Tinklo anomalijų žymėjimo“ šablonu ir patvirtinkite pradine linija.

kontrolinis sąrašas

  • [ ] Analizę atlikau tik gynybos / įgaliotos peržiūros tikslais.
  • [ ] Diagnozę traktavau kaip hipotezę ir patvirtinau ją dinamišku elgesiu.
  • [ ] Kenkėjišką programą paleidau tik izoliuotoje smėlio dėžėje.
  • [ ] Aiškinau tinklo anomalijas, palyginti su bazine linija.
  • [ ] Kiekvieną IOC prijungiau prie šaltinio ir patvirtinau prieš blokuodamas.