Deividas buvo vienas iš SOCshare bendruomenės susitikimo Nr. 3, vykusio šių metų birželio mėn., pranešėjų. Pateikiame trumpą jo pasidalytų įžvalgų ir rekomendacijų apžvalgą.
Sveiki, esu Deividas ir vadovauju dinamiškai „Nord Security“ kibernetinių grėsmių žvalgybos tyrimų komandai, specialiai „NordVPN Threat Protection“ produktui. Mano Kibernetinių grėsmių žvalgybos tyrimų komanda yra grėsmių žvalgybos komandos dalis, kurią sudaro „Python“ inžinieriai ir duomenų mokslininkai, kuriantys pažangius mašininio mokymosi modelius, kad apsaugotų mūsų klientus, kurie naudojasi „NordVPN“ programėle „Threat Protection“. Mūsų, kibernetinių grėsmių žvalgybos tyrėjų, misija – apsaugoti klientus nuo nuolat kintančių kibernetinių grėsmių, ypač nuo sukčiavimo, kenkėjiškų programų, apgaulingų tinklalapių ir pažeidžiamų programėlių.
Vykdydami šią misiją, aš ir mano komanda nuolat ieškome naujoviškų būdų, kaip rinkti, analizuoti ir reaguoti į kibernetinių grėsmių žvalgybinę informaciją. Tradiciškai organizacijos, siekdamos patenkinti KTI poreikius, daugiausia pasikliaudavo trečiųjų šalių tiekėjais. Nors turime strateginių partnerių, taip pat tikime savarankiškumo ir atvirojo kodo įrankių (kartu su mūsų vidaus įrankiais) galia rinkti reikšmingą žvalgybinę informaciją. Toks požiūris leidžia mums sumažinti priklausomybę nuo tiekėjų ir pritaikyti žvalgybos duomenų rinkimą konkretiems poreikiams.
Kibernetinių grėsmių žvalgyba – tai informacijos apie galimas grėsmes ir grėsmių dalyvius, nukreiptus prieš organizaciją arba, mūsų atveju, mūsų klientus, rinkimas ir analizė. Ši žvalgybos informacija leidžia organizacijoms numatyti kibernetines grėsmes, užkirsti joms kelią ir į jas reaguoti. Mūsų atveju ji užtikrina, kad mūsų naudotojai būtų apsaugoti nuo paslėptų pavojų, apie kuriuos jie gali nežinoti, ir suteikia jiems ramybę bei saugumą.
Norint veiksmingai rinkti kibernetinių grėsmių žvalgybinę informaciją (CTI), labai svarbu naudotis įvairiais šaltiniais. Kiekvienas šaltinis siūlo unikalių įžvalgų, kurias sujungus galima gauti išsamų supratimą apie grėsmių aplinką, kurioje esate. Štai pagrindiniai CTI šaltiniai, kuriais naudojamės aš ir mano komanda, o jūs taip pat galite naudotis:
Atvirųjų šaltinių žvalgyba – tai duomenų rinkimo iš viešai prieinamų šaltinių procesas. Tai gali būti:
● Naujienų straipsniai ir tinklaraščių įrašai: Galite rasti naudingų kompromitavimo indikatorių (IOC) arba atakos indikatorių (atakos vektorių), kuriuos galima panaudoti blokuojant galimus kenkėjiškus URL adresus, domenus, IP adresus ir slaptažodžius, kurie potencialiai gali būti nukreipti prieš jūsų įmonę.
● Socialiniai tinklai: Tokių platformų, kaip „X“ (buvęs „Twitter“), „LinkedIn“ ir „Reddit“, stebėjimas gali atskleisti realiuoju laiku kylančias grėsmes ir tendencijas.
● Viešieji forumai: Tokiose svetainėse kaip „Stack Overflow“ ir „GitHub issues“ galima sužinoti apie pažeidžiamumus ir išnaudojimo būdus, apie kuriuos diskutuoja bendruomenė.
Dark web – tai paslėpta interneto dalis, kurioje dažniausiai vykdoma neteisėta veikla.
Stebėdami tamsiojo interneto forumus ir prekyvietes, galime iš anksto įspėti apie:
● Duomenų saugumo pažeidimus: Informaciją apie pažeistas paskyras, duomenų bazes ir asmeninę informaciją. Tai gali atskleisti, ar neseniai buvo pažeistas jūsų konkurento saugumas, į ką turėtumėte atkreipti dėmesį arba ar kolega buvo apgautas ir įvedė savo prisijungimo duomenis ten, kur neturėjo.
● Kenkėjiškų programų pardavimai: Išsami informacija apie naujausias parduodamas arba aptarinėjamas kenkėjiškas programas ir išnaudojimo priemonių rinkinius. Pavyzdžiui, šiuo metu „RedLine“ informacijos vagis parduodamas palyginti pigiai, todėl didėja tikimybė, kad padaugės „RedLine“ informacijos vagies užkrėtimų.
● Grėsmių veikėjų ryšiai: Kibernetinių nusikaltėlių, planuojančių arba vykdančių atakas, sąveika. Būdami atsidavę CTI specialistai, galite net įsiskverbti į šias grupes ir surinkti vertingos žvalgybinės informacijos.
Vidaus tinklo ir įrenginių žurnaliniai įrašai yra aukso kasyklos galimoms grėsmėms nustatyti.
Klausiate, kodėl? Štai kodėl:
● Ugniasienės žurnalai: Iš jų galima bandyti nustatyti visą potencialaus užpuoliko infrastruktūrą.
● IDS/IPS: Registruoja įtartiną veiklą ir galimus įsilaužimus.
● Galinių įrenginių saugumo žurnalai: Fiksuokite informaciją iš antivirusinės programinės įrangos, EDR (angl. Endpoint Detection and Response) sprendimų ir kitų galinio taško apsaugos priemonių.
Naudodamiesi šiais dalykais galite orientuotis į galimai kenkėjiškus URL adresus / domenus / IP adresus / hash’us, kuriuos galite blokuoti savo svetainėje, kol jie dar nepasiekė jūsų.
Honeypots – tai sistema, skirta kibernetiniams įsilaužėliams privilioti.
Labai svarbu turėti ir stebėti „medaus taškus“, kurie gali padėti išsiaiškinti:
● Atakos būdus: Suprasti, kaip užpuolikai galėtų išnaudoti pažeidžiamumus.
● Kenkėjiškos programinės įrangos pavyzdžius: Kenkėjiškų programų pavyzdžių rinkimas analizei, tyrimams ir blokavimui. Jei turite atvirkštinei inžinerijai skirtą asmenį, tai gali būti naudinga. Jei ne, labai veiksmingas gali būti tiesiog slaptažodžių blokavimas.
● Elgsenos modeliai: Užpuolikų taktikos ir elgsenos modelių analizė.
Bendradarbiavimas su kitomis organizacijomis ir dalyvavimas Informacijos – dalijimosi bendruomenėse gali sustiprinti CTI pastangas (esu tikrai dėkingas, kad turime lietuviškus Informacijos dalijimosi susitikimus).
Nustačius galimus žvalgybos informacijos šaltinius, šiai informacijai rinkti ir analizuoti galima naudoti įvairias priemones ir metodus.
Štai mano metodai-favoritai:
PTI rinkimo su „Python“ pavyzdys
Pažvelkime į praktinį pavyzdį, kaip rinkti CTI naudojant „Python“.
Šiame pavyzdyje naudosiu žiniatinklio nuskaitymą, kad surinktų duomenis iš „Fake Security Blog News Website“ (suklastoto saugumo tinklaraščio naujienų svetainės).
Reikalavimai:
● Python 3.x
● Libraries: requests, BeutifulSoup4, pandas
Tai tik pavyzdinis scenarijus (nieko pažangaus), kiekvieną scenarijų reikėtų keisti, redaguoti kiekvienam tinklaraščiui ir dar daugiau.
import requests
from bs4 import BeautifulSoup import pandas as pd
#Blog Posts def fetch_blog_posts(url): response = requests.get(url) if response.status_code == 200: soup = BeautifulSoup(response.content, ‘html.parser’) posts = []
for item in soup.find_all(‘article’): title = item.find(‘h2’).text date = item.find(‘time’)[‘datetime’] summary = item.find(‘p’).text link = item.find(‘a’)[‘href’]
posts.append({ ‘title’: title, ‘date’: date, ‘summary’: summary, ‘link’: link })
return posts else: print(f”Failed to retrieve content from {url}”) return []
#URL of the cyber threat blog to scrape blog_url = ‘https://fakesecurityblognewswebsite.com’ posts = fetch_blog_posts(blog_url)
#Save the data to a CSV file if posts: df = pd.DataFrame(posts) df.to_csv(‘cyber_threat_blog_posts.csv’, index=False) print(„Data saved to cyber_threat_blog_posts.csv”) else: print(„No data to save.”) |
● Tinklaraščio įrašų gavimas: Funkcija fetch_blog_posts įveda URL adresą, atlieka HTTP užklausą į šį URL adresą ir analizuoja HTML turinį naudodama „BeutifulSoup“.
● Duomenų išskyrimas: Ištraukia kiekvieno tinklaraščio įrašo pavadinimą, datą, santrauką ir nuorodas.
● Duomenų saugojimas: Duomenys saugomi žodynų sąraše, konvertuojami į pandas DataFrame ir išsaugomi kaip CSV failas.
Šį scenarijų galite modifikuoti taip, kad jis spustelėtų kiekvieną URL adresą, analizuotų tame URL esantį HTML turinį ir ieškotų raktažodžių, pavyzdžiui, BlackCat arba AlphaV, kad būtų galima nustatyti IOC, atakos vektorius, arba, jei nėra paminėtas nei BlackCat, nei AlphaV, tiesiog praleisti tą tinklaraščio įrašą. Šį procesą galima automatizuoti ir patikrinti jų kenkėjiškumo įvertinimą per „VirusTotal“, „MalwareBazaar“, „IPAbuse“ ar kitus šaltinius, kurie pateikia verdiktus dėl IOC.
Apibendrinant galima pasakyti, kad surinkti CTI nepasikliaujant pardavėjais įmanoma, tačiau tam reikia daug informacijos ir „Know How“ bei rankų (kūrėjų, tyrėjų komandos..), tačiau galiausiai tai naudinga daugeliui organizacijų. Naudodamosi atvirojo kodo priemonėmis ir ištekliais, saugumo komandos gali įgyti vertingų įžvalgų, kartu išlaikydamos CTI procesų kontrolę. Pateiktas „Python“ skriptas yra tik pradinis taškas; norint sukurti išsamią CTI sistemą, galima integruoti daugybę kitų priemonių ir metodų. Tobulėjant kibernetinėms grėsmėms, turi tobulėti ir mūsų žvalgybos duomenų rinkimo bei analizės metodai, kad būtume vienu žingsniu priekyje potencialių priešininkų.
Drąsiai pritaikykite ir išplėskite „Python“ scenarijų, kad jis atitiktų jūsų konkrečius poreikius, ir išnagrinėkite įvairius šaltinius, įrankius, kad sukurtumėte išsamią CTI strategiją.
Šis įrašas publikuotas kaip dalis „SOCshare“ projekto, kuris yra dalinai fnansuojamas Europos Sąjungos. Išreikštos nuomonės ir požiūriai yra tik autorių ir nebūtinai atspindi Europos Sąjungos ar Europos kibernetinio saugumo kompetencijos centro požiūrį ir nuomonę. Nei Europos Sąjunga, nei Europos kibernetinio saugumo kompetencijos centras negali būti laikomi atsakingais už jas.