Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Protivirusna podjetja, strokovnjaki za informacijsko varnost in samo navdušenci razkrijejo honeypot sisteme na internetu, da bi »ujeli živo vabo« sveže različice virusa ali razkrili nenavadne hekerske taktike. Honeypots so tako pogosti, da so kiberkriminalci razvili nekakšno imuniteto: hitro prepoznajo, da je pred njimi past, in jo preprosto ignorirajo. Da bi raziskali taktike sodobnih hekerjev, smo ustvarili realističen honeypot, ki je živel na internetu sedem mesecev in privabljal različne napade. Kako je bilo, smo povedali v naši študiji "Ujeti na dejanju: vodenje realističnega tovarniškega medenjaka za zajemanje resničnih groženj". Nekaj ​​dejstev iz študije je v tej objavi.

Razvoj Honeypot: kontrolni seznam

Glavna naloga pri ustvarjanju naše superpasti je bila, da ne dovolimo, da bi nas razkrili hekerji, ki so pokazali zanimanje za to. Za to je bilo potrebno veliko dela:

  1. Ustvarite realistično legendo o podjetju, vključno s polnim imenom in fotografijo zaposlenih, telefonskimi številkami in e-pošto.
  2. Izumite in implementirajte model industrijske infrastrukture, ki ustreza legendi dejavnosti našega podjetja.
  3. Odločite se, katere omrežne storitve bodo na voljo od zunaj, vendar se ne zanesete z odpiranjem ranljivih vrat, da ne bo videti kot past za preproste uporabnike.
  4. Organizirajte pojav uhajanja informacij o ranljivem sistemu in te informacije razširjajte med potencialnimi napadalci.
  5. Izvedite diskretno spremljanje dejanj hekerjev v infrastrukturi pasti.

In zdaj o vsem po vrsti.

Ustvarite legendo

Kibernetski kriminalci so že navajeni videti veliko medenjakov, zato najnaprednejši del njih izvede poglobljeno študijo vsakega ranljivega sistema, da se prepriča, da ne gre za past. Iz istega razloga smo želeli narediti honeypot ne le realističen v smislu oblikovanja in tehničnih vidikov, ampak tudi ustvariti videz pravega podjetja.

Postavili smo se na mesto hipotetičnega coolhackerja in razvili algoritem preverjanja, ki bi nam omogočil razlikovanje pravega sistema od pasti. Vključevalo je iskanje naslovov IP podjetja v sistemih za ugled, povratno raziskovanje zgodovine naslovov IP, iskanje imen in ključnih besed, povezanih s podjetjem, pa tudi z njegovimi nasprotnimi strankami, in številne druge stvari. Kot rezultat se je legenda izkazala za precej prepričljivo in privlačno.

Odločili smo se, da tovarno past pozicioniramo kot majhen butik za industrijsko izdelavo prototipov, ki dela za zelo velike anonimne naročnike iz vojaškega in letalskega segmenta. To nas je rešilo pravnih zapletov, povezanih z uporabo obstoječe blagovne znamke.

Nato smo morali oblikovati vizijo, poslanstvo in ime organizacije. Odločili smo se, da bo naše podjetje startup z majhnim številom zaposlenih, od katerih je vsak ustanovitelj. To je dodalo verodostojnost legendi o specializaciji našega poslovanja, ki omogoča delo z občutljivimi projekti za velike in pomembne stranke. Želeli smo, da bi bilo naše podjetje videti šibko v smislu kibernetske varnosti, hkrati pa je bilo jasno, da delamo s pomembnimi sredstvi v ciljnih sistemih.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Posnetek zaslona spletnega mesta MeTech honeypot. Vir: Trend Micro

Za ime podjetja smo izbrali besedo MeTech. Stran je narejena na podlagi brezplačne predloge. Slike so bile vzete iz foto bank, pri čemer so bile uporabljene najbolj nepriljubljene in spremenjene, da bi bile manj prepoznavne.

Želeli smo, da je podjetje videti resnično, zato smo morali dodati sodelavce s strokovnimi znanji, ki ustrezajo profilu dejavnosti. Izmislili smo jim imena in identitete, nato pa poskušali izbrati slike iz fotobank glede na etnično pripadnost.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Posnetek zaslona spletnega mesta MeTech honeypot. Vir: Trend Micro

Da nas ne bi odkrili, smo iskali kakovostne skupinske fotografije, med katerimi smo lahko izbrali obraze, ki jih potrebujemo. Kasneje pa smo to možnost opustili, saj bi lahko morebitni heker z obratnim iskanjem slik ugotovil, da naši »zaposleni« živijo le v fotobankah. Na koncu smo uporabili fotografije neobstoječih ljudi, ustvarjene s pomočjo nevronskih mrež.

Profili zaposlenih, objavljeni na spletnem mestu, so vsebovali pomembne informacije o njihovih tehničnih znanjih, vendar smo se izognili navajanju določenih izobraževalnih ustanov in mest.
Za izdelavo poštnih predalov smo uporabili strežnik ponudnika gostovanja, nato pa najeli več telefonskih številk v ZDA in jih združili v virtualno PBX z govornim menijem in telefonskim odzivnikom.

Infrastruktura Honeypot

Da bi se izognili izpostavljenosti, smo se odločili uporabiti kombinacijo prave industrijske strojne opreme, fizičnih računalnikov in varnih virtualnih strojev. Če pogledamo naprej, smo rezultat naših prizadevanj preverili z iskalnikom Shodan in pokazal je, da honeypot izgleda kot pravi industrijski sistem.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Rezultat skeniranja honeypota s Shodanom. Vir: Trend Micro

Kot strojno opremo za našo past smo uporabili štiri PLC-je:

  • Siemens S7-1200,
  • dva Allen-Bradley MicroLogix 1100,
  • Omron CP1L.

Ti PLC-ji so bili izbrani zaradi svoje priljubljenosti na svetovnem trgu nadzornih sistemov. In vsak od teh krmilnikov uporablja svoj protokol, s katerim smo lahko preverili, kateri od PLC-jev bi bili pogosteje napadeni in ali bi načeloma koga zanimali.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Oprema naše "tovarne" je past. Vir: Trend Micro

Nismo samo namestili kosov železa in jih povezali z internetom. Vsak krmilnik smo programirali za opravljanje nalog, med katerimi so bile

  • mešanje,
  • krmiljenje gorilnika in tekočega traku,
  • paletiranje z robotsko roko.

Da bi bil proizvodni proces realističen, smo programirali logiko za naključno spreminjanje povratnih parametrov, simulacijo zagona in zaustavitve motorjev, vklop in izklop gorilnika.

Naša tovarna je imela tri virtualne računalnike in enega fizičnega. Virtualni stroji so bili uporabljeni za krmiljenje obrata, robotskega paletizatorja in kot delovna postaja programskega inženirja PLC. Fizični računalnik je deloval kot datotečni strežnik.

Poleg spremljanja napadov na PLC-je smo želeli spremljati status programov, ki smo jih naložili v naše naprave. Da bi to naredili, smo ustvarili vmesnik, ki nam je omogočil hitro ugotavljanje, kako so bila spremenjena stanja naših virtualnih aktuatorjev in naprav. Že v fazi načrtovanja smo ugotovili, da je to veliko lažje izvesti s krmilnim programom kot z neposrednim programiranjem logike krmilnika. Odprli smo dostop do vmesnika za upravljanje naprav našega honeypota prek VNC brez gesla.

Industrijski roboti so ključni sestavni del sodobne pametne proizvodnje. V zvezi s tem smo se odločili opremi naše tovarne pasti dodati robota in delovno postajo za njegovo krmiljenje. Da bi bila »tovarna« bolj realistična, smo na krmilno delovno postajo namestili pravo programsko opremo, ki jo inženirji uporabljajo za grafično programiranje logike robota. No, ker se industrijski roboti običajno nahajajo v izoliranem notranjem omrežju, smo se odločili, da pustimo nezavarovan dostop prek VNC samo do nadzorne delovne postaje.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Okolje RobotStudio s 3D modelom našega robota. Vir: Trend Micro

Na virtualni stroj z robotsko krmilno delovno postajo smo namestili programsko okolje RobotStudio podjetja ABB Robotics. Ko smo nastavili RobotStudio, smo odprli simulacijsko datoteko z našim robotom v njej, tako da je bila njegova 3D slika vidna na zaslonu. Posledično bodo Shodan in drugi iskalniki, ko bodo našli nevaren strežnik VNC, dobili to sliko zaslona in jo pokazali tistim, ki iščejo industrijske robote z odprtim dostopom do nadzora.

Bistvo te pozornosti do detajlov je bilo ustvariti privlačno in čim bolj realistično tarčo za napadalce, ki bi se, ko bi jo našli, k njej znova in znova vračali.

Delovna postaja inženirja


Za programiranje logike PLC smo v infrastrukturo dodali inženirski računalnik. Na njem je bila nameščena industrijska programska oprema za programiranje PLC-jev:

  • TIA portal za Siemens,
  • MicroLogix za krmilnik Allen-Bradley,
  • CX-One za Omron.

Odločili smo se, da inženirsko delovno mesto ne bo na voljo izven omrežja. Namesto tega smo na njem nastavili isto geslo za skrbniški račun kot na preko interneta dostopni delovni postaji za nadzor robota in delovni postaji za tovarniški nadzor. Ta konfiguracija je precej pogosta v mnogih podjetjih.
Na žalost kljub vsem našim prizadevanjem niti en napadalec ni dosegel inženirjeve delovne postaje.

Datotečni strežnik

Potrebovali smo ga kot vabo za vsiljivce in kot sredstvo za podporo lastnega "dela" v tovarni pasti. To nam je omogočilo skupno rabo datotek z našim honeypotom prek naprav USB, ne da bi pustili sled v omrežju pasti. Kot operacijski sistem za datotečni strežnik smo namestili Windows 7 Pro, v katerem smo naredili skupno mapo, ki je na voljo vsem za branje in pisanje.

Sprva nismo ustvarili nobene hierarhije map in dokumentov na datotečnem strežniku. Vendar se je kasneje izkazalo, da so napadalci aktivno preučevali to mapo, zato smo se odločili, da jo napolnimo z različnimi datotekami. Da bi to naredili, smo napisali skript python, ki je ustvaril datoteko naključne velikosti z eno od danih končnic in oblikoval ime na podlagi slovarja.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Skript za ustvarjanje privlačnih imen datotek. Vir: Trend Micro

Po zagonu skripte smo dobili želeni rezultat v obliki mape, polne datotek z zelo zanimivimi imeni.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Rezultat scenarija. Vir: Trend Micro

Spremljanje okolja


Ker smo toliko truda vložili v ustvarjanje realističnega podjetja, si preprosto nismo mogli privoščiti, da bi zajebali okolje za spremljanje naših "obiskovalcev". Vse podatke smo morali dobiti v realnem času, tako da napadalci ne bi opazili, da jih opazujejo.

To smo storili s štirimi adapterji USB v Ethernet, štirimi ethernetnimi pipami SharkTap, Raspberry Pi 3 in velikim zunanjim pogonom. Naš mrežni diagram je izgledal takole:

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Diagram omrežja Honeypot z opremo za spremljanje. Vir: Trend Micro

Tri pipe SharkTap smo postavili tako, da spremljajo ves zunanji promet do PLC-ja, ki je dostopen le iz notranjega omrežja. Četrti SharkTap je sledil prometu gostov ranljivega virtualnega stroja.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Ethernetni priključek SharkTap in usmerjevalnik Sierra Wireless AirLink RV50. Vir: Trend Micro

Raspberry Pi je izvajal dnevni zajem prometa. Na internet smo se povezali s pomočjo mobilnega usmerjevalnika Sierra Wireless AirLink RV50, ki se pogosto uporablja v industrijskih podjetjih.

Na žalost nam ta usmerjevalnik ni omogočal selektivnega blokiranja napadov, ki se ne ujemajo z našimi načrti, zato smo v omrežje dodali požarni zid Cisco ASA 5505 v preglednem načinu, da bi blokirali z minimalnim vplivom na omrežje.

Analiza prometa


Tshark in tcpdump sta primerna za hitro reševanje trenutnih težav, vendar v našem primeru njune zmogljivosti niso zadostovale, saj smo imeli veliko gigabajtov prometa, ki ga je analiziralo več ljudi. Uporabili smo odprtokodni analizator Moloch, ki ga je razvil AOL. Po funkcionalnosti je primerljiv z Wiresharkom, vendar ima več možnosti za sodelovanje, opisovanje in označevanje paketov, izvoz in druga opravila.

Ker zbranih podatkov nismo želeli obdelovati na honeypot strojih, smo PCAP deponije vsak dan izvozili v AWS shrambo, od koder smo jih že uvozili na Moloch stroj.

Snemanje zaslona

Da bi dokumentirali dejanja hekerjev v našem honeypotu, smo napisali skripto, ki je v določenem intervalu naredila posnetke zaslona virtualnega stroja in v primerjavi s prejšnjim posnetkom zaslona ugotovila, ali se tam nekaj dogaja ali ne. Ko je bila aktivnost zaznana, je skript vklopil snemanje zaslona. Ta pristop se je izkazal za najučinkovitejšega. Poskušali smo tudi analizirati promet VNC iz odlagališča PCAP, da bi razumeli, kakšne spremembe so se zgodile v sistemu, vendar se je na koncu izkazalo, da je snemanje zaslona, ​​ki smo ga implementirali, preprostejše in bolj vizualno.

Spremljanje sej VNC


Za to smo uporabili Chaosreader in VNCLogger. Oba pripomočka izvlečeta pritiske tipk iz izpisa PCAP, vendar VNCLogger pravilneje obravnava tipke, kot so Backspace, Enter, Ctrl.

VNCLogger ima dve pomanjkljivosti. Prvič, ključe lahko pridobi le tako, da "posluša" promet na vmesniku, zato smo morali zanj simulirati sejo VNC s tcpreplay. Druga pomanjkljivost VNCLoggerja je skupna Chaosreaderju: oba ne prikazujeta vsebine odložišča. Za to sem moral uporabiti Wireshark.

Zvabimo hekerje


Ustvarili smo honeypot za napad. Da bi to dosegli, smo uprizorili uhajanje informacij, da bi pritegnili pozornost potencialnih hekerjev. Naslednja vrata so bila odprta na honeypot:

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti

Vrata RDP smo morali zapreti kmalu po začetku dela, saj je zaradi ogromne količine skeniranja prometa v našem omrežju prišlo do težav z delovanjem.
VNC terminali so najprej delovali v načinu »samo ogled« brez gesla, nato pa smo jih »po pomoti« preklopili v način polnega dostopa.

Da bi pritegnili napadalce, smo na PasteBin objavili dve objavi z "uhajajočimi" informacijami o razpoložljivem industrijskem sistemu.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
Ena od objav, objavljenih na PasteBin za privabljanje napadov. Vir: Trend Micro

Napadi


Honeypot je na spletu živel približno sedem mesecev. Prvi napad se je zgodil mesec dni po tem, ko je honeypot postal spleten.

Optični bralniki

Veliko prometa so imeli skenerji znanih podjetij - ip-ip, Rapid, Shadow Server, Shodan, ZoomEye in drugi. Bilo jih je toliko, da smo morali njihove naslove IP izključiti iz analize: 610 od 9452 ali 6,45 % vseh edinstvenih naslovov IP je pripadalo popolnoma legitimnim skenerjem.

Scammers

Eno največjih tveganj, s katerimi smo se soočili, je uporaba našega sistema za kriminalne namene: za nakup pametnih telefonov prek naročniškega računa, izplačilo letalskih milj z darilnimi karticami in druge vrste goljufij.

Rudarji

Izkazalo se je, da je bil eden prvih obiskovalcev našega sistema rudar. Naložil ga je s programsko opremo za rudarjenje Monero. Na našem sistemu zaradi nizke zmogljivosti ne bi mogel veliko zaslužiti. Če pa združimo napore več deset ali celo sto takšnih sistemov, bi se lahko kar dobro izšlo.

Ransomware

Med delovanjem honeypota smo dvakrat naleteli na prave izsiljevalske viruse. V prvem primeru je bil Crysis. Njegovi operaterji so se prijavili v sistem prek VNC-ja, a so nato namestili TeamViewer in z njim izvajali nadaljnja dejanja. Potem ko smo čakali na izsiljevalsko sporočilo, ki je zahtevalo odkupnino v višini 10 $ v BTC, smo stopili v korespondenco s kriminalci in jih prosili, da nam dešifrirajo eno od datotek. Zahtevi so ugodili in ponovili zahtevo po odkupnini. Uspelo nam je barantati do 6 tisoč dolarjev, nato pa smo sistem preprosto naložili na virtualni stroj, saj smo prejeli vse potrebne informacije.

Druga izsiljevalska programska oprema je bil Phobos. Heker, ki ga je namestil, je pregledal datotečni sistem honeypota in eno uro pregledoval omrežje, nato pa namestil izsiljevalsko programsko opremo.
Tretji napad z izsiljevalsko programsko opremo se je izkazal za lažnega. Neznani "heker" je v naš sistem prenesel datoteko haha.bat, nakar smo nekaj časa opazovali, kako jo je poskušal usposobiti. En poskus je bil preimenovanje haha.bat v haha.rnsmwr.

Neizrekljivo privlačno: kako smo ustvarili medenjak, ki ga ni mogoče izpostaviti
"Heker" poveča škodljivost datoteke bat tako, da spremeni njeno končnico v .rnsmwr. Vir: Trend Micro

Ko se je paketna datoteka končno začela izvajati, jo je "heker" uredil in zvišal odkupnino z 200 $ na 750 $. Po tem je vse datoteke »šifriral«, na namizju pustil izsiljevalsko sporočilo in izginil ter spremenil gesla na našem VNC-ju.

Čez nekaj dni se je heker vrnil in, da bi se spomnil, zagnal paketno datoteko, ki je odprla veliko oken s pornografskim mestom. Očitno je na ta način poskušal opozoriti na svojo zahtevo.

Rezultati


Med študijo se je izkazalo, da je honeypot takoj po objavi informacije o ranljivosti pritegnil pozornost, aktivnost pa je iz dneva v dan rasla. Da bi past pritegnila pozornost, je bilo treba storiti veliko vdorov v varnost našega fiktivnega podjetja. Na žalost ta situacija še zdaleč ni neobičajna v mnogih resničnih podjetjih, ki nimajo redno zaposlenih na področju IT in informacijske varnosti.

Na splošno bi morale organizacije uporabljati načelo najmanjših privilegijev, mi pa smo za privabljanje napadalcev uvedli povsem nasprotno. In dlje kot smo opazovali napade, bolj sofisticirani so postajali v primerjavi s standardnimi metodami testiranja prodora.

In kar je najpomembneje, vsi ti napadi bi bili neuspešni, če bi bili med nastavitvijo omrežja izvedeni ustrezni varnostni ukrepi. Organizacije morajo zagotoviti, da njihova oprema in komponente industrijske infrastrukture niso dostopne prek interneta, kot smo posebej storili v naši pasti.

Čeprav nismo zabeležili niti enega napada na inženirjevo delovno postajo, kljub uporabi istega lokalnega skrbniškega gesla na vseh računalnikih, se je treba tej praksi izogibati, da zmanjšamo možnost vdorov. Navsezadnje je šibka varnost dodatno vabilo za napad na industrijske sisteme, ki že dolgo zanimajo kibernetske kriminalce.

Vir: www.habr.com

Dodaj komentar