Informacinėse sistemose ir jų tinkluose naudojama nemažai techninių ir socialinių priemonių jų saugumui užtikrinti. Tradicinės priemonės, kaip ugniasienės, atakų aptikimo ir prevencijos sistemos neretai atlieka vieną specializuotą funkciją ir visos kartu padidina tinklo, kaip informacijos apsikeitimo vieneto, saugumą.
„Honeypot“ sprendimai nuo tradicinių ir labiausiai paplitusių informacijos apsaugos priemonių skiriasi tuo, kad ne tik lygiai taip pat leidžia aptikti ir sustabdyti atakas, tačiau tai yra daroma tikslingai, nukreipiant įsilaužėlio dėmesį į save – emuliuojant pažeidžiamas paslaugų tarnybas ar ištisus netikrus kompiuterių tinklus.
Kuo „honeypot“ naudojimas gali būti naudingas už organizacijos tinklo saugumą atsakingam asmeniui? Pirmiausia ši technologija suteikia papildomos informacijos apie tinkle vykstančius procesus – juk iš įvairių apsaugos ir paslaugų mechanizmų kasdien yra surenkamas didelis kiekis duomenų, kuriuos analizuojant galima suprasti, kas apskritai vyksta nagrinėjamame informacijos apsikeitimo tinkle. Iš duomenų kiekio kyla su jų apdorojimu ir analize susijusios problemos. Natūralu, kad didelį kiekį informacijos yra sudėtinga išnagrinėti, taip pat dėl įvykių gausos yra galimybė, kad tam tikra ataka liks nepastebėta. „Honeypot“ sistemos realiai surenka ne tiek daug duomenų, kadangi šios sistemos yra skirtos būtent įsilaužimams stebėti ir dažniausiai neteikia jokių kitų vartotojus aptarnaujančių paslaugų tinkle, todėl surinkti duomenys veikiausiai ir yra tiesioginė informacija apie užfiksuotų prievadų skenavimų, sistemos tyrimų arba atakų bandymus, todėl tokia informacija neretai yra svarbesnė ir tiesiogiai susijusi su tinkle vykstančiais įtartinais procesais, bei leidžia geriau suprasti nusikaltėlio logiką.
Yra ir kitų priežasčių kodėl reikėtų savo tinkle naudoti „honeypot“ sprendimą: nedidelis resursų sunaudojimas, diegimo paprastumas, vertės įrodymas. Plačiau pakomentuoti verta pastarąjį, kadangi bet kokia priemonė turi savo vertę organizacijoje, tačiau ne visuomet tai parodo, pavyzdžiui, tinkamai suderinta ugniasienė praktiškai nepastebima kasdieniame tinklo infrastruktūros gyvenime, todėl atsiranda netikro saugumo jausmas, – atrodo, jog mūsų tiesiog nepuola, o jeigu ir puola, tai negali apeiti ugniasienės. Organizacijos viduje įrengto „honeypot“ įvykių registracijos žurnalai gali puikiai pademonstruoti grėsmės egzistavimą ir iškelti naudojamų techninių ir socialinių priemonių visumos netobulumo problemą.
Kaip ir kiekvienas dalykas šiame pasaulyje, „honeypot“ turi ir savo trūkumų. Pagrindinės jų problemos yra tos, kad kol kas nėra „tobulo“ „honeypot“. Kiekvienas rinkoje esantis produktas turi savo kabliuką ir virtinę trūkumų, tačiau visiems jiems yra būdingi keli bendri bruožai – „honeypot“ dėl savo koncepcijos ir prigimties gali aptikti tik atakas, nukreiptas prieš jį patį. Tai nėra absoliutus sprendimas, o tik apsaugos priemonių komplekso nedidelė dalis. Kita problema yra tai, kad „honeypot“ taikymas yra gerai tol, kol įsilaužėlis nežino, jog puola netikrą sistemą. Todėl apie tokios sistemos egzistavimą gali žinoti, pavyzdžiui, organizacijos viduje esantys piktavaliai žmonės, kurie iš savo atakų schemos išims šią sistemą ir ten nekiš kojos, taip pat dėl techninių netobulumų ir elgesio nuspėjamumo, „honeypot“ galima identifikuoti techninėmis priemonėmis. Ir paskutinis bei kritiškiausias aspektas, į kurį taip pat reiktų atsižvelgti, yra pačių spąstų saugumas ir patikimumas – juk dėl pažeidžiamumų šioje programinėje įrangoje įsilaužėliui gali atsirasti puiki galimybė perimti tinklo kontrolę į savo rankas.
Pirmasis programinis sprendimas kurį galima aptarti yra „KFSensor Proffesional“. Tai komercinis ir nesudėtingas produktas, imituojantis tam tikrų paslaugų tarnybų darbą ir leidžiantis taip aptikti tinkle plintančius kirminus ar įsilaužėlių veiklą. Programa dirba „Windows“ aplinkoje ir leidžia imituoti šios sistemos tarnybas – SQL serverį, IIS, „radmin“, „NetBIOS“ ir kt. Taip pat yra galimybė pridėti savo reakcijos į įtartiną veiklą scenarijus, bei papildyti tarnybų parašų bazę. Dar galima paminėti nesudėtingą vartotojo sąsają ir nuotolinio administravimo galimybę.
Kita, atviro kodo „honeypot“ sistema, skirta UNIX-like sistemoms yra „Honeyd“. Sukurta 2002 metais, sistema šiuo metu yra viena populiariausių „honeypot“ dėl savo savybių ir funkcijų, o taip pat ir dėl atviro kodo, kadangi tai suteikia galimybę pritaikyti programą pagal savo individualius poreikius – pavyzdžiui pridėti papildomų paslaugų imitacijas. „Honeyd“ aptinka įtartiną veiklą visuose TCP prievaduose, tačiau paslaugų tarnybų imitacijos suprojektuotos tik įsilaužėliui suklaidinti ir jo duomenims surinkti. Taip pat „Honeyd“ turi galimybę imituoti ištisą tinklą – leidžiama pasirinkti pageidaujamų sistemų IP adresus, taip pat jiems priskirtus operacinės sistemos pirštų antspaudus, kurių spektras yra labai platus – nuo „Windows“ iki maršrutizatorių su „Linux“. Dar viena savybė yra tai, kad imitacija vykdoma ne tik vartotojo lygmenyje, bet ir IP protokolų steko lygyje – tai leidžia ženkliai sumažinti „honeypot“ tinklo aptikimo galimybę.
Nors paslaugų imitacija šiuo metu yra labiausiai paplitusi „honeypot“ veikimo schema, tačiau jau dabar imama daugiau dėmesio skirti kiek kitokiai spąstų koncepcijai – virtualių ar realių, kontroliuojamų sistemų pritaikymas įsilaužėliui stebėti. Esmė labai paprasta – įsilaužėliui suteikiama galimybė ne tik gaišti savo laiką renkant duomenis apie imituojamą sistemą ar paslaugą, bet ir įsibrauti į pačią sistemą. O tuo pat metu sistemų administratoriui suteikiama galimybė realiu laiku stebėti įsilaužėlio atliekamus veiksmus „užgrobtoje“ sistemoje. Be abejo toks požiūris reikalauja ir papildomų techninių sprendimų – juk nenorime, kad įsilaužėlis, patekęs į spąstus, pasinaudodamas jais, galėtų toliau atakuoti.
Šią technologiją išnaudojančių sistemų nėra daug, kai kurie šaltiniai mini komercinę „ManTrap“, tačiau iš atviro kodo įrankių galima rinktis „Sebek“, pritaikytą veikti „Windows“, „Linux“ ir BSD sistemose. „Sebek“ sudaro serveris ir klientas. Serveris priima duomenis iš savo klientų ir juos saugo. Klientą sudaro operacinės sistemos pataisymų rinkinys, būtinas norint paslapčia išsaugoti ir perduoti informaciją apie įsilaužėlio veiksmus į serverį.
Tokių aukšto interaktyvumo spąstų įrengimas reikalauja atskiro dėmesio, kadangi labai svarbu, jog įsilaužėlis patekęs į tokią sistemą, negalėtų brautis gilyn į tinklo infrastruktūrą ir jai kenkti – todėl šio tipo spąstus reikia atitinkamai izoliuoti nuo bendro vartojimo tinklo ir imtis visų priemonių, susiaurinant įsilaužėlio veiksmų ribas.
Straipsnyje akcentavome, kad „honeypot“ sistema yra gera tol kol ji nepastebima ir neaptinkama. Aptikęs spąstus, įsilaužėlis gali laiku susigriebti ir nutraukti visas atakas, nukreiptas prieš organizacijos tinklą bei imtis pėdsakų valymo. Todėl verta pakalbėti ir apie tai kaip išsiduoda spąstai. Pirmas aspektas yra loginis tokių sistemų dizainas – pavyzdžiui imituojant tam tikras paslaugas nereikia persistengti, juk pavyzdžiui „telnet“ ar „ssh“ paslauga gali kiek keistai atrodyti „Windows“ aplinkoje, o „Microsoft FTP server“ visai blogai atrodo „Linux“ sistemoje. Todėl pritaikant „honeypot“ pagal savo poreikius nereikia perlenkti lazdos, o taip pat reikia riboti ir emuliuojamų paslaugų skaičių – per didelis arba periodiškai kintantis atvirų prievadų skaičius tiesiog kviečia užuosti kažką negero.
Spąstuose, sukurtuose „VMWare“ ar kitose virtualiose mašinose, neturėtų būti tai mašinai būdingų įrenginių, pavyzdžiui vaizdo korta „VMware Inc [VMware SVGA II] PCI Display Adapter“ arba „VMware Virtual IDE Hard Drive“ standusis diskas gali sukelti tam tikrų minčių, kurias apsvarstyti reikės įsilaužėliui. Panašių problemų sukuria ir pagal nutylėjimą nepritaikyti nepastebimai dirbti dalykai, tokie kaip „User Mode Linux“, kurio egzistavimą galima pastebėti iš tam tikrų procesų sistemoje, bei ubd* įrenginio naudojimo. Tas pats pasakytina ir apie „FreeBSD“ sistemos „jail“ mechanizmą – procesai turi tam tikrų žymėjimo ir numeracijos savybių, leidžiančių padaryti išvadą apie tai, kad esame „jail“ aplinkoje.
Nors gali pasirodyti, kad aptikti šiuo metu įmanoma tik savadarbes „honeypot“ sistemas, tačiau taip, deja, nėra. Pailiustruokime tai „Sebek“ „honeypot“ sistemos pavyzdžiu. „Linux“ aplinkoje „Sebek“ gali būti surinktas kaip įkraunamas branduolio modulis. Be abejo jis slepia savo egzistavimą sistemoje, todėl yra nematomas pvz. „lsmod“ komandos išvedamuose rezultatuose, tačiau galime pasinaudoti (jeigu turime pagrindinio (root) vartotojo teises sistemoje) „module_hunter“ įrankiu ir išaiškinti paslėptą modulį.
Bendra visų įrankių problema yra dėl jų vykdymo laiko. Tarkime, dėl žurnalų vedimo reikia papildomų procesoriaus ciklų, norint įvykdyti tam tikrą programinį kodą. Tai susiję ir su tinklo darbu – galime pamatuoti tinklo aktyvumą kai nevyksta jokie intensyvūs procesai susiję su duomenų įvedimu / išvedimu, o vėliau paleisti programą, kuri atliktų daug skaitymo ar rašymo operacijų ir stebėti kaip staigiai pakyla tinklo aktyvumas, kadangi surinkti duomenys apie mūsų veiklą sistemoje yra „nepastebimai“ siunčiami į centrinį serverį.
Ir paskutinis „honeypot“ sistemų taikymo aspektas yra teisinė šio klausimo pusė. Kol kas dar nėra visiškai aišku ar spąstų naudojimas yra legalus ir ar jų surinkti duomenys gali būti naudojami kaip įrodymas teisme. Taip visų pirma yra todėl, kad Lietuvoje nėra suformuotos teisinės praktikos, susijusios su „honeypot“ naudojimu, todėl dabar tiksliai negalime atsakyti ar „honeypot“ naudojimas Lietuvoje yra legalus ar ne.
Taigi, šio straipsnio tikslas buvo supažindinti skaitytojus su pagrindinėmis „honeypot“ sistemų dizaino ir veikimo idėjomis, taip pat buvo trumpai apžvelgti kai kurie paplitę produktai. Kadangi tokios sistemos-spąstai dar kol kas nėra plačiai paplitusios ir taikomos, todėl de facto nėra ir sprendimo, kurį įdiegus galima būtų paspęsti idealius spąstus įsilaužėliams. Todėl dar tikrai yra vietos eksperimentams ir saviveiklai – galbūt patys sukursite būtent savo tinklui labiausiai tinkantį variantą. Tačiau reikia būti budriems – net ir pati geriausia apsaugos technologija, realizuota netinkamai, gali virsti galingu kovos įrankiu patyrusio įsilaužėlio rankose.