Kliencki honeypot (, także honeyclient) – rodzaj honeypota służący do wykrywania ataków na aplikacje klienckie. Klasyczne honeypoty serwerowe biernie czekają na połączenia od atakujących. Kliencki honeypot działa odwrotnie: sam łączy się z serwerami, najczęściej jako przeglądarka internetowa odwiedzająca strony, i sprawdza, czy nie został zaatakowanyENISA 2012, s. 18.arXiv 2016, s. 4.. Ataki na aplikacje klienckie nie ograniczają się jednak do stron internetowych i mogą dotyczyć m.in. poczty elektronicznej, FTP, komunikatorów internetowych czy strumieniowego przesyłania multimediów.

W honeypocie serwerowym każde połączenie jest z założenia podejrzane. Kliencki honeypot musi natomiast sam rozstrzygnąć, które z odwiedzonych serwerów są złośliwe, a które nie. Klienckie honeypoty pojawiły się około pięciu lat później niż serwerowearXiv 2016, s. 16..

Budowa i wdrażanie Kliencki honeypot pobiera adresy serwerów do odwiedzenia, np. przeszukując sieć lub korzystając z przygotowanych list, łączy się z nimi i ocenia wynik. Przykładowo HoneyC składa się z trzech modułów: kolejkującego, który tworzy listę serwerów do odwiedzenia, klienta, który wysyła do nich zapytania i przetwarza odpowiedzi, oraz silnika analizującego, który ocenia, czy doszło do naruszenia zasad bezpieczeństwaarXiv 2016, s. 12..

Zapytania klienckiego honeypota warto kierować przez serwer pośredniczący, który pozwala zmieniać adres IP. Niektóre złośliwe serwery udostępniają szkodliwe treści tylko raz dla danego adresu IP albo blokują adresy rozpoznanych honeypotówENISA 2012, s. 33–34.. Honeypot wysokiej interakcji prędzej czy później zostanie zainfekowany i może próbować rozprzestrzeniać złośliwe oprogramowanie w sieci, dlatego trzeba go odizolować. Zwykle działa w maszynie wirtualnej, którą po wykryciu ataku przywraca się do czystego stanu.

Poziom interakcji Podobnie jak honeypoty serwerowe, klienckie dzieli się według poziomu interakcji na honeypoty niskiej i wysokiej interakcji.

Wysoki poziom interakcji Honeypoty wysokiej interakcji korzystają z prawdziwego systemu operacyjnego i prawdziwej aplikacji klienckiej. Po każdej interakcji z serwerem sprawdzają, czy w systemie zaszły nieuprawnione zmiany, np. w plikach, rejestrze Windows lub procesach. Ponieważ nie korzystają z sygnatur, mogą wykrywać nieznane wcześniej atakiENISA 2012, s. 19.. Wymagają jednak więcej zasobów i pracy przy wdrożeniu i utrzymaniu.

Atakujący mogą utrudniać ich działanie. Mogą opóźnić uruchomienie exploita, bo honeypot czeka na każdej stronie tylko określony czas, albo sprawdzić, czy kod działa w maszynie wirtualnej. Niektóre złośliwe strony atakują też tylko przy części odwiedzin.

Capture-HPC Capture-HPC to otwartoźródłowy kliencki honeypot wysokiej interakcji opracowany na Victoria University of Wellington we współpracy z New Zealand Honeynet Project. Projektem kierowali Ramon Steenson i Christian Seifert, a program udostępniano na licencji GPL. Składa się z serwera, który rozdziela adresy URL między klientów działających w maszynach wirtualnych, oraz klienta, który za pomocą sterowników jądra monitoruje zmiany w systemie plików, rejestrze i procesach. Zdarzenia występujące podczas normalnej pracy, np. zapis do pamięci podręcznej przeglądarki, są pomijane dzięki listom wykluczeńarXiv 2016, s. 13.. Program był rozwijany w latach 2004–2009 i obsługiwał m.in. przeglądarki Internet Explorer i Firefox oraz aplikacje biurowearXiv 2016, s. 18..

HoneyClient HoneyClient był pierwszym otwartoźródłowym klienckim honeypotem wysokiej interakcji i był rozwijany w latach 2004–2010. Projekt był związany z organizacją MITRE, a na konferencji RECON w 2005 roku przedstawiła go Kathy Wang. HoneyClient odwiedzał strony za pomocą przeglądarek Internet Explorer i Firefox w maszynach wirtualnych z systemem Windows i wykrywał ataki, monitorując pliki, procesy i wpisy w rejestrze.

HoneyMonkey Strider HoneyMonkey opracowało w 2005 roku Microsoft Research. System nie był udostępniany publicznie. Odwiedzał strony za pomocą przeglądarki Internet Explorer w maszynach wirtualnych z systemem Windows XP na różnych poziomach aktualizacji. Za atak uznawano utworzenie plików, procesów lub wpisów w rejestrze poza obszarem przeglądarki, a po wykryciu ataku zainfekowaną maszynę wirtualną zastępowano czystą.

Adresy, pod którymi zaatakowano niezaktualizowane systemy, sprawdzano następnie na w pełni zaktualizowanych maszynach. Udany atak na taką maszynę oznaczał użycie exploita dnia zerowego. W lipcu 2005 roku system wykrył w ten sposób pierwsze znane użycie w internecie exploita podatności javaprxy.dll w Internet Explorerze, dla której nie było jeszcze poprawki. Informacje o takich atakach przekazywano do Microsoft Security Response Center.

SHELIA SHELIA powstała na Vrije Universiteit Amsterdam. Pierwszą wersję napisał Joan Robert Rocaspana, a później program rozwijali Georgios Portokalidis, Philip Homburg i Herbert Bos. SHELIA naśladuje naiwnego użytkownika, który otwiera wszystkie linki i załączniki z niechcianej poczty. Atak wykrywa, sprawdzając, czy operacje zmieniające rejestr, system plików lub ruch sieciowy są wywoływane z obszaru pamięci, który nie powinien zawierać kodu. Dzięki temu prawie nie daje fałszywych alarmów. Może też pozwolić atakowi na pobranie złośliwego oprogramowania, które następnie przechwytuje.

UW Spycrawler Spycrawler powstał w 2005 roku na University of Washington. Był używany w badaniach naukowych i nie został udostępniony publiczniearXiv 2016, s. 14.. Korzystał z przeglądarki Internet Explorer i wykrywał dwa rodzaje zagrożeń: oprogramowanie szpiegujące dołączane do instalowanych programów, rozpoznawane programem antyszpiegowskim, oraz ataki typu , rozpoznawane po zmianach w plikach i rejestrze, tworzeniu procesów lub awariach przeglądarki.

Web Exploit Finder Web Exploit Finder (WEF) opracowali w 2006 roku Thomas Müller, Benjamin Mack i Mehmet Arziman z Hochschule der Medien w Stuttgartcie. Służy do wykrywania ataków typu drive-by download. Składa się z warstwy wirtualizacji VMware, przygotowanych maszyn z systemem Windows i panelu sterującego przeglądarkami. Ataki wykrywa po zmianach w systemie operacyjnym, analizując wywołania systemowe za pomocą modułu działającego na zasadzie rootkita.

Niski poziom interakcji Honeypoty niskiej interakcji nie uruchamiają prawdziwej aplikacji, tylko ją emulują, np. symulują przeglądarkę internetową. Odpowiedzi serwerów zwykle analizują statycznie, porównując je z sygnaturami znanych ataków. Są szybkie i łatwiejsze we wdrożeniu, ale nie wykrywają ataków na nieznane podatności, mogą dawać fałszywe alarmy lub przeoczyć złośliwy serwer i łatwiej je rozpoznaćENISA 2012, s. 18–19..

HoneyC HoneyC to kliencki honeypot niskiej interakcji rozwijany w ramach Honeynet Project. Składa się z opisanych wyżej trzech modułów, a odpowiedzi serwerów ocenia za pomocą reguł systemu wykrywania włamań Snort.

Monkey-Spider Monkey-Spider, opracowany przez Alego Ikinciego, to honeypot oparty na robocie internetowym Heritrix. Pobiera strony i przekazuje je do sprawdzenia programom antywirusowym, np. ClamAV. Wykryte adresy, pliki wykonywalne i złośliwy kod JavaScript zapisuje w bazie zagrożeń.

SpyBye SpyBye opracował Niels Provos, autor honeypota Honeyd. Początkowo program sprawdzał adresy wpisane w formularzu, później działał jako serwer pośredniczący HTTP, który przechwytuje zapytania przeglądarki podczas zwykłego przeglądania stron. Ocenia, czy osadzone na stronie odnośniki są nieszkodliwe, nieznane czy niebezpieczne, a treść skanuje programem ClamAV. Pozwala administratorom wykryć przejęcie ich strony, np. po obcych odnośnikach dopisanych przez atakującego.

Thug Thug to napisany w Pythonie kliencki honeypot niskiej interakcji, który naśladuje zachowanie przeglądarki internetowej w wybranym systemie operacyjnym. Korzysta z silnika JavaScript V8, emuluje podatne moduły, np. ActiveX, Flash i Adobe Reader, i potrafi udawać różne przeglądarki i systemy. ENISA uznała go za jeden z klienckich honeypotów wartych rozważenia przez zespoły CERT, które mogą przeznaczyć więcej zasobów na utrzymanie honeypotówENISA 2012, s. 10..

Rozwiązania hybrydowe Rozwiązania hybrydowe łączą oba podejścia. Przykładem jest HoneySpider Network, system klienckich honeypotów, przy którego projektowaniu i wdrażaniu pracował zespół CERT PolskaENISA 2012, s. 15.. Honeypot niskiej interakcji odsiewa w nim nieszkodliwe strony, a pozostałe, podejrzane lub złośliwe, są ponownie analizowane przez honeypoty wysokiej interakcjiENISA 2012, s. 19–20.. System służy do masowej analizy adresów URL i wykrywania ataków na przeglądarki i ich wtyczki, w tym ataków typu drive-by download.

Kliencki honeypot a piaskownica Kliencki honeypot przypomina piaskownicę, ale różni się od niej celem. Piaskownica służy do szczegółowej analizy zachowania złośliwego oprogramowania po infekcji, a kliencki honeypot przede wszystkim do ustalenia, czy dany zasób jest złośliwy. Obie techniki się uzupełniają, np. kliencki honeypot może przekazać znaleziony podejrzany plik do dalszej analizy w piaskownicyENISA 2012, s. 23–24..

Przypisy

Bibliografia

Linki zewnętrzne The Honeynet Project

Kategoria:Bezpieczeństwo sieciowe Kategoria:Oprogramowanie zabezpieczające