Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Firmy antywirusowe, eksperci ds. bezpieczeństwa informacji i po prostu entuzjaści umieszczają w Internecie systemy typu Honeypot, aby „złapać” nowy wariant wirusa lub zidentyfikować nietypową taktykę hakerów. Honeypoty są tak powszechne, że cyberprzestępcy wypracowali sobie pewien rodzaj odporności: szybko identyfikują, że mają przed sobą pułapkę, i po prostu ją ignorują. Aby poznać taktykę współczesnych hakerów, stworzyliśmy realistyczny Honeypot, który działał w Internecie przez siedem miesięcy i przyciągał różnorodne ataki. O tym, jak to się stało, rozmawialiśmy w naszym badaniu ”Złapany na gorącym uczynku: uruchamianie realistycznej fabryki miodu w celu wychwytywania prawdziwych zagrożeń" Niektóre fakty z badania znajdują się w tym poście.

Rozwój Honeypota: lista kontrolna

Głównym zadaniem przy tworzeniu naszej superpułapki było uniemożliwienie zdemaskowania nas przez hakerów, którzy wykazali zainteresowanie nią. Wymagało to dużo pracy:

  1. Stwórz realistyczną legendę o firmie, zawierającą imiona i nazwiska oraz zdjęcia pracowników, numery telefonów i adresy e-mail.
  2. Wymyślić i wdrożyć model infrastruktury przemysłowej odpowiadający legendzie o działalności naszej firmy.
  3. Zdecyduj, które usługi sieciowe będą dostępne z zewnątrz, ale nie daj się zwieść otwieraniu wrażliwych portów, aby nie wyglądało to na pułapkę na frajerów.
  4. Organizuj widoczność wycieków informacji na temat podatnego systemu i rozpowszechniaj te informacje wśród potencjalnych atakujących.
  5. Wdrożyj dyskretne monitorowanie działań hakerów w infrastrukturze Honeypot.

A teraz wszystko w porządku.

Tworzenie legendy

Cyberprzestępcy są już przyzwyczajeni do napotykania wielu Honeypotów, dlatego najbardziej zaawansowana ich część szczegółowo bada każdy podatny na ataki system, aby upewnić się, że nie jest to pułapka. Z tego samego powodu staraliśmy się, aby Honeypot był nie tylko realistyczny pod względem konstrukcyjnym i technicznym, ale także sprawiał wrażenie prawdziwej firmy.

Wcielając się w rolę hipotetycznego fajnego hakera, opracowaliśmy algorytm weryfikacyjny, który odróżni prawdziwy system od pułapki. Obejmowało wyszukiwanie adresów IP firm w systemach reputacyjnych, badanie wsteczne historii adresów IP, wyszukiwanie nazw i słów kluczowych związanych z firmą, a także jej kontrahentami i wiele innych rzeczy. W rezultacie legenda okazała się dość przekonująca i atrakcyjna.

Postanowiliśmy pozycjonować fabrykę wabików jako mały butik zajmujący się prototypowaniem przemysłowym, pracujący dla bardzo dużych anonimowych klientów z segmentu wojskowego i lotniczego. Uwolniło nas to od komplikacji prawnych związanych z posługiwaniem się istniejącą marką.

Następnie musieliśmy wymyślić wizję, misję i nazwę organizacji. Zdecydowaliśmy, że nasza firma będzie startupem z niewielką liczbą pracowników, z których każdy jest założycielem. To dodało wiarygodności historii o wyspecjalizowanym charakterze naszej działalności, co pozwala na obsługę wrażliwych projektów dla dużych i ważnych klientów. Chcieliśmy, aby nasza firma sprawiała wrażenie słabej z punktu widzenia cyberbezpieczeństwa, ale jednocześnie było oczywiste, że pracujemy z ważnymi zasobami w systemach docelowych.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Zrzut ekranu witryny Honeypot firmy MeTech. Źródło: Trend Micro

Jako nazwę firmy wybraliśmy słowo MeTech. Strona została wykonana w oparciu o darmowy szablon. Zdjęcia zostały pobrane z banków zdjęć, wykorzystując te najbardziej niepopularne i modyfikując je tak, aby były mniej rozpoznawalne.

Chcieliśmy, aby firma wyglądała realnie, dlatego potrzebowaliśmy zatrudnić pracowników o kompetencjach zawodowych, które odpowiadają profilowi ​​działalności. Wymyśliliśmy dla nich imiona i osobowości, a następnie próbowaliśmy wybrać zdjęcia z banków zdjęć według przynależności etnicznej.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Zrzut ekranu witryny Honeypot firmy MeTech. Źródło: Trend Micro

Aby uniknąć wykrycia, szukaliśmy dobrej jakości zdjęć grupowych, z których mogliśmy wybrać potrzebne nam twarze. Jednak potem porzuciliśmy tę opcję, ponieważ potencjalny haker mógłby skorzystać z wyszukiwania wstecznego obrazu i odkryć, że nasi „pracownicy” żyją tylko w bankach zdjęć. Na koniec wykorzystaliśmy zdjęcia nieistniejących ludzi stworzone za pomocą sieci neuronowych.

Opublikowane w serwisie profile pracowników zawierały ważne informacje o ich umiejętnościach technicznych, unikaliśmy jednak identyfikowania konkretnych szkół czy miast.
Do stworzenia skrzynek pocztowych wykorzystaliśmy serwer dostawcy hostingu, a następnie wynajęliśmy kilka numerów telefonów w Stanach Zjednoczonych i połączyliśmy je w wirtualną centralę PBX z menu głosowym i automatyczną sekretarką.

Infrastruktura Honeypot

Aby uniknąć narażenia, zdecydowaliśmy się użyć kombinacji prawdziwego sprzętu przemysłowego, komputerów fizycznych i bezpiecznych maszyn wirtualnych. Patrząc w przyszłość powiemy, że efekt naszych wysiłków sprawdziliśmy za pomocą wyszukiwarki Shodan i okazało się, że Honeypot wygląda jak prawdziwy system przemysłowy.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Wynik skanowania Honeypota przy użyciu Shodana. Źródło: Trend Micro

Jako sprzęt do naszej pułapki wykorzystaliśmy cztery sterowniki PLC:

  • Siemensa S7-1200,
  • dwa AllenBradley MicroLogix 1100,
  • Omrona CP1L.

Te sterowniki PLC zostały wybrane ze względu na ich popularność na światowym rynku systemów sterowania. A każdy z tych kontrolerów korzysta z własnego protokołu, co pozwoliło nam sprawdzić, który ze sterowników PLC będzie częściej atakowany i czy w zasadzie kogokolwiek zainteresuje.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Wyposażenie naszej „fabrycznej” pułapki. Źródło: Trend Micro

Nie tylko instalowaliśmy sprzęt i podłączaliśmy go do Internetu. Każdy sterownik zaprogramowaliśmy tak, aby realizował zadania m.in

  • mieszanie,
  • sterowanie palnikiem i przenośnikiem taśmowym,
  • paletyzacja za pomocą robota-manipulatora.

Aby proces produkcyjny był realistyczny, zaprogramowaliśmy logikę tak, aby losowo zmieniała parametry sprzężenia zwrotnego, symulowała uruchamianie i zatrzymywanie silników oraz włączanie i wyłączanie palników.

Nasza fabryka posiadała trzy komputery wirtualne i jeden fizyczny. Wirtualne komputery posłużyły do ​​sterowania instalacją, robotem paletyzującym oraz jako stacja robocza dla inżyniera oprogramowania PLC. Komputer fizyczny działał jako serwer plików.

Oprócz monitorowania ataków na sterowniki PLC chcieliśmy monitorować stan programów ładowanych na naszych urządzeniach. W tym celu stworzyliśmy interfejs, który pozwolił nam szybko określić, w jaki sposób modyfikowane były stany naszych wirtualnych aktorów i ustawienia. Już na etapie planowania odkryliśmy, że znacznie łatwiej jest to zrealizować za pomocą programu sterującego, niż poprzez bezpośrednie programowanie logiki sterownika. Otworzyliśmy dostęp do interfejsu zarządzania urządzeniami naszego Honeypota poprzez VNC bez hasła.

Roboty przemysłowe są kluczowym elementem nowoczesnej inteligentnej produkcji. W związku z tym postanowiliśmy dodać do wyposażenia naszej fabryki pułapek robota i zautomatyzowane stanowisko pracy do jego sterowania. Aby „fabryka” była bardziej realistyczna, na stanowisku sterującym zainstalowaliśmy prawdziwe oprogramowanie, za pomocą którego inżynierowie graficznie programują logikę robota. Otóż, ponieważ roboty przemysłowe zazwyczaj zlokalizowane są w izolowanej sieci wewnętrznej, postanowiliśmy pozostawić niechroniony dostęp poprzez VNC jedynie do stanowiska sterującego.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Środowisko RobotStudio z modelem 3D naszego robota. Źródło: Trend Micro

Zainstalowaliśmy środowisko programistyczne RobotStudio firmy ABB Robotics na maszynie wirtualnej ze stanowiskiem sterowania robotem. Po skonfigurowaniu RobotStudio otworzyliśmy plik symulacji, w którym znajdował się nasz robot, tak aby jego obraz 3D był widoczny na ekranie. W rezultacie Shodan i inne wyszukiwarki po wykryciu niezabezpieczonego serwera VNC pobiorą ten obraz ekranu i pokażą go tym, którzy szukają robotów przemysłowych z otwartym dostępem do sterowania.

Celem tej dbałości o szczegóły było stworzenie atrakcyjnego i realistycznego celu dla napastników, którzy raz już go odnaleźli, a raz po raz do niego wracali.

Stanowisko inżyniera


Aby zaprogramować logikę PLC, do infrastruktury dodaliśmy komputer inżynierski. Zainstalowano na nim oprogramowanie przemysłowe do programowania sterowników PLC:

  • Portal TIA dla Siemensa,
  • MicroLogix dla sterownika Allen-Bradley,
  • CX-One dla firmy Omron.

Zdecydowaliśmy, że przestrzeń robocza inżynieryjna nie będzie dostępna poza siecią. Zamiast tego ustawiamy to samo hasło dla konta administratora, jakie jest na stanowisku sterowania robotem i na stanowisku sterowania fabrycznego dostępnym z Internetu. Taka konfiguracja jest dość powszechna w wielu firmach.
Niestety, pomimo wszystkich naszych wysiłków, ani jeden napastnik nie dotarł do stacji roboczej inżyniera.

Serwer plików

Potrzebowaliśmy go jako przynęty dla atakujących i jako środka wspierającego naszą własną „pracę” w fabryce wabika. Umożliwiło nam to udostępnianie plików naszemu Honeypotowi za pomocą urządzeń USB bez pozostawiania śladów w sieci Honeypot. Zainstalowaliśmy system Windows 7 Pro jako system operacyjny dla serwera plików, w którym utworzyliśmy udostępniony folder, który każdy może czytać i zapisywać.

Na początku nie tworzyliśmy żadnej hierarchii folderów i dokumentów na serwerze plików. Jednak później odkryliśmy, że napastnicy aktywnie badali ten folder, więc postanowiliśmy wypełnić go różnymi plikami. W tym celu napisaliśmy skrypt w Pythonie, który utworzył plik o losowym rozmiarze z jednym z podanych rozszerzeń, tworząc nazwę na podstawie słownika.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Skrypt generujący atrakcyjne nazwy plików. Źródło: Trend Micro

Po uruchomieniu skryptu otrzymaliśmy pożądany efekt w postaci folderu wypełnionego plikami o bardzo ciekawych nazwach.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Wynik skryptu. Źródło: Trend Micro

Środowisko monitorowania


Włożywszy tak wiele wysiłku w stworzenie realistycznej firmy, po prostu nie mogliśmy sobie pozwolić na zaniedbanie środowiska w monitorowaniu naszych „gości”. Musieliśmy uzyskać wszystkie dane w czasie rzeczywistym, tak aby atakujący nie zdawali sobie sprawy, że są obserwowani.

Wdrożyliśmy to za pomocą czterech adapterów USB na Ethernet, czterech kranów SharkTap Ethernet, Raspberry Pi 3 i dużego dysku zewnętrznego. Nasz schemat sieci wyglądał następująco:

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Schemat sieci Honeypot ze sprzętem monitorującym. Źródło: Trend Micro

Umieściliśmy trzy krany SharkTap tak, aby monitorować cały ruch zewnętrzny do sterownika PLC, dostępny tylko z sieci wewnętrznej. Czwarty SharkTap monitorował ruch gości na podatnej na ataki maszynie wirtualnej.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
SharkTap Ethernet Tap i bezprzewodowy router Sierra AirLink RV50. Źródło: Trend Micro

Raspberry Pi codziennie przechwytywało ruch. Z Internetem połączyliśmy się za pomocą routera komórkowego Sierra Wireless AirLink RV50, często stosowanego w przedsiębiorstwach przemysłowych.

Niestety router ten nie pozwolił nam na selektywne blokowanie ataków, które nie odpowiadały naszym planom, dlatego dodaliśmy do sieci zaporę sieciową Cisco ASA 5505 w trybie przezroczystym, aby blokować przy minimalnym wpływie na sieć.

Analiza ruchu


Tshark i tcpdump są odpowiednie do szybkiego rozwiązywania bieżących problemów, ale w naszym przypadku ich możliwości nie były wystarczające, ponieważ mieliśmy wiele gigabajtów ruchu, który był analizowany przez kilka osób. Użyliśmy analizatora Molocha typu open source opracowanego przez firmę AOL. Jest porównywalny pod względem funkcjonalności z Wireshark, ale ma więcej możliwości współpracy, opisywania i oznaczania pakietów, eksportowania i innych zadań.

Ponieważ nie chcieliśmy przetwarzać zebranych danych na komputerach typu Honeypot, zrzuty PCAP były codziennie eksportowane do pamięci AWS, skąd już je importowaliśmy na maszynę Moloch.

Nagrywanie ekranu

Aby udokumentować działania hakerów w naszym Honeypocie, napisaliśmy skrypt, który w zadanych odstępach czasu wykonywał zrzuty ekranu maszyny wirtualnej i porównując to z poprzednim zrzutem ekranu, ustalał, czy coś się tam dzieje, czy nie. Po wykryciu aktywności skrypt obejmował nagrywanie ekranu. To podejście okazało się najskuteczniejsze. Próbowaliśmy także przeanalizować ruch VNC ze zrzutu PCAP, aby zrozumieć, jakie zmiany zaszły w systemie, ale ostatecznie zaimplementowane przez nas nagranie ekranu okazało się prostsze i bardziej wizualne.

Monitorowanie sesji VNC


W tym celu użyliśmy Chaosreader i VNCLogger. Obydwa narzędzia wyodrębniają naciśnięcia klawiszy ze zrzutu PCAP, ale VNCLogger obsługuje klawisze takie jak Backspace, Enter i Ctrl bardziej poprawnie.

VNCLogger ma dwie wady. Po pierwsze: może wyodrębniać klucze jedynie poprzez „nasłuchiwanie” ruchu w interfejsie, dlatego musieliśmy symulować dla niego sesję VNC za pomocą tcpreplay. Druga wada VNCLoggera jest wspólna dla Chaosreadera: oba nie pokazują zawartości schowka. Aby to zrobić, musiałem użyć Wireshark.

Wabimy hakerów


Stworzyliśmy Honeypot, który można atakować. Aby to osiągnąć, zaaranżowaliśmy wyciek informacji, aby przyciągnąć uwagę potencjalnych atakujących. Na Honeypot zostały otwarte następujące porty:

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować

Port RDP musiał zostać zamknięty wkrótce po uruchomieniu, ponieważ ogromna ilość ruchu związanego ze skanowaniem w naszej sieci powodowała problemy z wydajnością.
Terminale VNC najpierw działały w trybie tylko do przeglądania bez hasła, a następnie „przez pomyłkę” przełączyliśmy je w tryb pełnego dostępu.

Aby przyciągnąć atakujących, opublikowaliśmy na PasteBin dwa posty z informacjami, które wyciekły na temat dostępnego systemu przemysłowego.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
Jeden z postów opublikowanych w PasteBin w celu przyciągnięcia ataków. Źródło: Trend Micro

Ataki


Honeypot żył w Internecie przez około siedem miesięcy. Pierwszy atak miał miejsce miesiąc po uruchomieniu Honeypota.

Skanery

Było dużo ruchu ze skanerów znanych firm - ip-ip, Rapid, Shadow Server, Shodan, ZoomEye i innych. Było ich tak dużo, że musieliśmy wykluczyć z analizy ich adresy IP: 610 z 9452, czyli 6,45% wszystkich unikalnych adresów IP, należało do całkowicie legalnych skanerów.

Oszuści

Jednym z największych zagrożeń, z jakim się spotkaliśmy, jest wykorzystanie naszego systemu do celów przestępczych: kupowanie smartfonów za pośrednictwem konta abonenckiego, wypłacanie mil lotniczych za pomocą kart podarunkowych i inne rodzaje oszustw.

Górniczy

Jednym z pierwszych gości naszego systemu okazał się górnik. Pobrał na niego oprogramowanie do wydobywania Monero. Nie byłby w stanie zarobić dużo pieniędzy na naszym konkretnym systemie ze względu na niską produktywność. Jeśli jednak połączyć wysiłki kilkudziesięciu, a nawet setek takich systemów, mogłoby to wyjść całkiem nieźle.

Oprogramowanie ransomware

Podczas pracy Honeypot dwukrotnie zetknęliśmy się z prawdziwymi wirusami ransomware. W pierwszym przypadku był to Crysis. Jego operatorzy logowali się do systemu poprzez VNC, po czym instalowali TeamViewer i za jego pomocą wykonywali dalsze działania. Po oczekiwaniu na wiadomość o wyłudzeniu, żądającą okupu w wysokości 10 6 dolarów w BTC, nawiązaliśmy korespondencję z przestępcami, prosząc ich o odszyfrowanie dla nas jednego z plików. Spełnili żądanie i ponowili żądanie okupu. Udało nam się wynegocjować aż XNUMX tysięcy dolarów, po czym po prostu wgraliśmy system ponownie na maszynę wirtualną, gdyż otrzymaliśmy wszystkie niezbędne informacje.

Drugim oprogramowaniem ransomware okazał się Phobos. Haker, który go zainstalował, spędził godzinę przeglądając system plików Honeypot i skanując sieć, a następnie w końcu zainstalował oprogramowanie ransomware.
Trzeci atak ransomware okazał się fałszywy. Nieznany „haker” pobrał plik haha.bat na nasz system, po czym przez chwilę obserwowaliśmy, jak próbował go uruchomić. Jedną z prób była zmiana nazwy haha.bat na haha.rnsmwr.

Niewypowiedzianie atrakcyjny: jak stworzyliśmy Honeypot, którego nie można wyeksponować
„Haker” zwiększa szkodliwość pliku bat, zmieniając jego rozszerzenie na .rnsmwr. Źródło: Trend Micro

Kiedy plik wsadowy w końcu zaczął działać, „haker” dokonał jego edycji, zwiększając okup z 200 do 750 dolarów. Następnie „zaszyfrował” wszystkie pliki, zostawił wiadomość o wyłudzeniu na pulpicie i zniknął, zmieniając hasła w naszym VNC.

Kilka dni później haker wrócił i dla przypomnienia uruchomił plik wsadowy, który otwierał wiele okien ze stroną pornograficzną. Najwyraźniej w ten sposób próbował zwrócić uwagę na swoje żądanie.

Wyniki


W trakcie badania okazało się, że od razu po opublikowaniu informacji o luce, Honeypot przyciągnął uwagę, a aktywność rosła z dnia na dzień. Aby pułapka zwróciła na siebie uwagę, nasza fikcyjna firma musiała doświadczyć wielu naruszeń bezpieczeństwa. Niestety, taka sytuacja nie jest rzadkością wśród wielu prawdziwych firm, które nie zatrudniają pełnoetatowych pracowników ds. IT i bezpieczeństwa informacji.

Ogólnie rzecz biorąc, organizacje powinny stosować zasadę najmniejszych uprawnień, podczas gdy my wdrożyliśmy jej dokładne przeciwieństwo, aby przyciągnąć atakujących. Im dłużej obserwowaliśmy ataki, tym bardziej wyrafinowane stawały się w porównaniu ze standardowymi metodami testów penetracyjnych.

A co najważniejsze, wszystkie te ataki nie powiodłyby się, gdyby podczas konfigurowania sieci wdrożono odpowiednie środki bezpieczeństwa. Organizacje muszą zadbać o to, aby ich sprzęt i elementy infrastruktury przemysłowej nie były dostępne za pośrednictwem Internetu, jak to miało miejsce w przypadku naszej pułapki.

Choć nie odnotowaliśmy ani jednego ataku na stację roboczą inżyniera, pomimo stosowania na wszystkich komputerach tego samego hasła administratora lokalnego, należy unikać tej praktyki, aby zminimalizować możliwość włamań. W końcu słabe zabezpieczenia stanowią dodatkowe zaproszenie do ataków na systemy przemysłowe, które od dawna interesują cyberprzestępców.

Źródło: www.habr.com

Dodaj komentarz