Wyciągnąć sieć czy moc? (za kontynuowanie zrootowanego serwera)


11

Gdy serwer zostanie zakorzenione ( np sytuacja jak ta ), jedną z pierwszych rzeczy, które można zdecydować się zrobić, to powstrzymywanie . Niektórzy specjaliści od bezpieczeństwa radzą, aby nie wprowadzać natychmiast środków zaradczych i utrzymywać serwer w trybie online do czasu ukończenia kryminalistyki. Te porady dotyczą zwykle APT . Inaczej jest w przypadku sporadycznych naruszeń skryptu dla dzieci , więc możesz zdecydować o wcześniejszym naprawieniu (naprawie). Jednym z kroków w ramach działań naprawczych jest przechowywanie serwera. Cytując z odpowiedzi Roberta Moira - „odłącz ofiarę od jej rabusiów”.

Serwer można zamknąć, ciągnąc za kabel sieciowy lub kabel zasilający .

Która metoda jest lepsza?

Biorąc pod uwagę potrzebę:

  1. Ochrona ofiar przed dalszymi szkodami
  2. Przeprowadzanie udanej medycyny sądowej
  3. (Prawdopodobnie) Ochrona cennych danych na serwerze

Edycja: 5 założeń

Zarozumiały:

  1. Wykryłeś wcześnie: 24 godziny.
  2. Chcesz odzyskać wcześnie: 3 dni 1 administratora systemu w pracy (kryminalistyka i odzyskiwanie).
  3. Serwer nie jest maszyną wirtualną ani kontenerem zdolnym do wykonania migawki przechwytującej zawartość pamięci serwerów.
  4. Postanawiasz nie próbować ścigać.
  5. Podejrzewasz, że osoba atakująca może korzystać z jakiejś formy oprogramowania (być może zaawansowanej), a oprogramowanie to nadal działa na serwerze.

2
Możesz też tu zajrzeć: security.stackexchange.com
sysadmin1138


2
@Tom - to nie jest dupek, jest to dyskusja przedłużająca konkretny punkt z tego pytania.
mfinni

3
@ sysadmin1138, w szczególności spróbuj security.stackexchange.com/q/181/33
AviD

Odpowiedzi:


6

Jeśli masz do czynienia z APT, najlepszym rozwiązaniem jest skonfigurowanie honeypot i dokładne monitorowanie całego ruchu, który do niego wpływa i wychodzi, oprócz monitorowania serwera.

Miara przechodzenia przez pamięć jest tak kosztowna pod względem czasu i wysiłku, że zwykle nie jest opłacalna, chyba że wypróbowałeś każdą inną metodę, a jeśli uznasz, że jest to opłacalne, na ogół najlepiej jest skonfigurować plaster miodu, który pozwala łatwo zrzucić pamięć i stan systemu na innym komputerze w locie, dzięki czemu można przeprowadzić analizę z mniejszym ryzykiem wykrycia, gdy maszyna jest uruchomiona.

Miałem jedną sytuację, w której atakujący przechowywał wszystko w pamięci do tego stopnia, że ​​oprócz logów maszyna wyglądała dokładnie tak, jak po wyłączeniu i ponownym włączeniu. Następnie włamali się z powrotem i zaczęli używać go ponownie, ponieważ wciąż istniała luka - nie musieli zostawiać dla siebie żadnych tylnych drzwi. Pomogła w tym ocena pamięci, ale w tym przypadku wystarczyło obserwować ruch, aby szybko zidentyfikować lukę.

W związku z tym:

Jedynym powodem, dla którego należy unikać pobierania mocy i przeprowadzania oceny dysku offline, jest przejście przez proces dokładnej analizy pamięci zagrożenia, gdy jest ono na swoim miejscu i działa. Jeśli dotarłeś do punktu, w którym jest to konieczne, nie ma powodu, aby wyciągać którąkolwiek wtyczkę.

Jeśli nie przeprowadzasz analizy pamięci, najlepszym rozwiązaniem jest wyciągnięcie wtyczki z gniazdka - wyciągnięcie Ethernetu (lub użycie komendy wyłączania) spowoduje jedynie wcześniejsze powiadomienie oprogramowania atakującego - co ma znaczenie.

Więc:

Pociągnij je oba, chyba że wykonujesz analizę pamięci, w takim przypadku nie ciągnij żadnej z nich.


16

Pomocna może być analiza kryminalistyczna RAM (np. / Dev / shm).

Ale wolę odłączyć kabel zasilający (ale spróbuj się zalogować i rsync / proc tuż przed).

Powody, dla których warto wybrać kabel zasilający, to:

  1. Kiedy robisz kryminalistykę w zhakowanym systemie, „kroczysz po całym miejscu zbrodni”
  2. Zestaw root nadal działa - nie jest tak trudne, aby szkodliwy mógł coś wykonać (np. Czyszczenie systemu) w przypadku zdarzenia Network Link Down .

Kyle Rankin wygłosił miłe wprowadzenie do rozmowy kryminalistycznej - tam zaleca pociągnięcie za kabel zasilający.


+1 za „kroczenie po miejscu zbrodni”. Jeśli nie wiesz dokładnie, co robisz, lub nie zależy ci na zebraniu dokładnych dowodów kryminalistycznych, możesz raczej wezwać ekspertów, niż zanieczyszczać dowody, gdy uczysz się kryminalistyki ...
dunxd

10

Odłącz sieć. Atakujący nie może pobrać żadnych dodatkowych informacji, jeśli nie ma połączenia sieciowego. Bardzo trudno jest (czytać: niemożliwe) robić kryminalistykę bez władzy.


3
Możesz (i prawdopodobnie powinieneś) przeprowadzać analizy kryminalistyczne z off-line (A) za pomocą live CD, (B), przenosząc dysk twardy do innego systemu lub (C) po zrobieniu zdjęć dotkniętych dysków twardych (przez live CD) .
Aleksandr Levchuk

3
Często użyteczne dowody są w pamięci. Należy to uwzględnić przed zaleceniem jakiejkolwiek utraty zasilania.
Sirex,

Pomyśl także o bezpiecznym odłączeniu interfejsu LOM :)
Kedare

7

W dzisiejszych czasach może to być maszyna wirtualna, więc każda z metod jest łatwa, a nawet można ją wykonać zdalnie. (Oczywiście maszyny wirtualne dają również możliwość korzystania z migawek)

Sugerowałbym odłączenie od sieci jako automatyczny pierwszy krok, ponieważ daje to czas na zastanowienie się, jaki powinien być następny krok, niezależnie od tego, czy następnym krokiem jest wyciągnięcie przewodu zasilającego, czy coś innego. Jeśli wiesz, że twoje korporacyjne „procedury reakcji bezpieczeństwa” nie pozwolą ci szczegółowo poświęcić czasu na przeglądanie maszyny, to zachowanie zawartości pamięci RAM może nie być tak ważne.

Sugerowałbym, że „oddzielenie ofiary od jej rabusiów” w jakikolwiek sposób jest ważniejsze niż sposób, więc oba podejścia są ważne. Nie miałbym problemów z ciągnięciem samego przewodu zasilającego, powiedzmy to w ten sposób.


+1 dla maszyny wirtualnej. Jeśli odłączysz sieć, rootkit będzie działał - nie tak ciężko szkodliwym użytkownikom wykonać coś (np. Usunięcie systemu) podczas zdarzenia Network Link Down
Aleksandr Levchuk

6
Migawki stanu działającego systemu to świetny pomysł, że jestem na siebie wkurzony, że o tym nie myślę.
jgoldschrafe

@Alexsandr - Próbuję wymyślić rzeczywisty przykład i rysuję puste miejsce, ale wydaje mi się, że przypominam sobie rootkita, który pozostaje całkowicie w pamięci, więc zostałbym utracony po wyciągnięciu wtyczki. Myślę, że w obu przypadkach istnieje ryzyko utraty dowodów.
Rob Moir

6

To nie jest sytuacja ani. Zasadniczo chcesz wykonywać obie te czynności - chcesz wykonać pewne czynności kryminalistyczne (zrzut uruchomionych procesów, nasłuchiwanie gniazd, pliki w / tmp itp.) W systemie, który został usunięty z sieci, a następnie przeprowadzić pozostałą diagnostykę z bezpiecznego środowisko (tj. płyta CD na żywo). Są jednak sytuacje, w których żadne z tych podejść nie jest właściwe, i musisz przemyśleć i zrozumieć, jakie mogą być w twojej organizacji.


Jeśli odłączysz sieć, rootkit będzie działał - nie tak trudno złośliwemu kodowi wykonać coś (np. Usunięcie systemu) podczas zdarzenia Network Link Down .
Aleksandr Levchuk

To zdecydowanie prawda i jest to szansa, którą musisz ocenić i zdecydować, czy chcesz podjąć, w zależności od wrażliwości sytuacji. Niektóre rootkity są rezydentne tylko w pamięci, a jeśli zabijesz moc systemu, wyeliminujesz wszelkie szanse, aby dowiedzieć się, jak się tam dostało. Możesz spróbować zablokować ruch poza portem przełącznika, zachowując stan łącza, ale każdy rootkit to oprogramowanie i może zrobić wszystko, co może zrobić każde inne oprogramowanie - nic nie powstrzymuje ich przed sondowaniem domyślnej bramy i odpaleniem tej samej bomby, jeśli jest nieosiągalna.
jgoldschrafe

4

Zanim cokolwiek zrobisz, dowiedz się, czy musisz zachować dowody na ewentualne ściganie. Obsługa dowodów jest bardzo trudnym tematem, a nie dla słabo wyszkolonych. Po udzieleniu odpowiedzi wyszkolona osoba zajmująca się kryminalistyką komputerową może wziąć to stąd.


1
Po pierwsze, myślę, że należy zdecydować o ściganiu czy nie? . Kyle Rankin w swoim przemówieniu ( goo.gl/g21Ok ). Zaczyna się od omówienia tego. W celu wniesienia oskarżenia należałoby przedstawić dowody znacznej utraty środków pieniężnych.
Aleksandr Levchuk

1
@Aleksander Zasadniczo musisz bardzo wcześnie wiedzieć, czy możesz ponownie użyć skompromitowanego sprzętu i danych, czy też będziesz musiał je magazynować i zbudować nowy system z całkowicie nowych części. Jest to bardzo prawdopodobne, zanim jeszcze udowodnisz utratę reputacji finansowej lub biznesowej. Zachowanie łańcucha dowodów musi nastąpić w momencie, gdy ktoś zda sobie sprawę z potencjalnie możliwego do działania zdarzenia.
sysadmin1138

Często najlepiej zacząć od utrzymywania otwartych opcji w celu ponownego wniesienia oskarżenia, czy nie, ponieważ możesz nie wiedzieć, czy istnieje strata pieniężna, więc we wczesnych etapach robienia wszystkiego zgodnie z książką ważne jest utrzymanie łańcucha dostaw.
Rory Alsop

3

Nie ma potrzeby wyłączania serwera. Możesz po prostu wyłączyć łączność z bramą graniczną / routerem. Jedna reguła zapory wystarczy, aby odrzucić każdy wysłany / odebrany pakiet.


+1 To jeden z powodów, dla których posiadanie bramki jest dobrym pomysłem. Ale co jeśli nie masz? Jeśli odłączysz bezpośredni kabel sieciowy - rootkit może otrzymać zdarzenie Network Link Down . I czy zalogowanie się do zrootowanego serwera i zrobienie czegoś w dniu 0 nie jest złym pomysłem?
Aleksandr Levchuk

2

Odpowiedź zależy w dużej mierze od tego, co rozumiesz przez „zrootowany”. Ciągnięcie za przewód sieciowy jest zwykle dobrym pomysłem, szczególnie jeśli uważasz, że był to aktywny atakujący człowiek, szukający wrażliwych informacji.

Ciągnięcie mocy jest znacznie trudniejsze do odpowiedzi. Jeśli uważasz, że działa szkodliwy kod, który może zakrywać jego ślady, zrób to. Jeśli jednak uważasz, że w pamięci mogą znajdować się dowody włamania, pozostaw ją uruchomioną.

Ogólnie rzecz biorąc, zależy to od tego, czy masz do czynienia ze złośliwym kodem, niezadowolonym personelem lub kimś, kto ma na myśli konkretny cel.

W przypadku błędu należy zachować ostrożność. Stracisz niewielką ilość potencjalnych dowodów, ale może to uniemożliwić masowe usuwanie innych dowodów za pomocą automatycznego kodu.

- Z drugiej strony, jeśli uważasz, że komputer został przejęty i wiesz, że nie ma na nim wrażliwych danych, jesteś bardzo pewny swojego bezpieczeństwa sieci gdzie indziej i rozumiesz konsekwencje takiego postępowania, być może dostaniesz kryminalistyczną skrzynkę jak najszybciej i sprawdź, czy możesz prześledzić lub zrozumieć atak i stamtąd. Jednak zwykle nie jest to dobry pomysł


1

Moja odpowiedź była przed edycją, z 5 założeniami.
Moje założenie było takie, że jeśli twój serwer zostanie zrootowany, masz do czynienia z wyrafinowanym, ukierunkowanym atakującym, i że nie masz możliwości dowiedzenia się, kiedy i skąd atak się wziął. (Ponieważ maszyna została zrootowana, oczywiście nie możesz ufać cokolwiek, co ci powie. Jednak możesz mieć pewne niestandardowe informacje, np. IDS ...)
Zakładałem również, że masz interes w radzeniu sobie z napastnikiem, a nie tylko machaniem odleciał jak kłopotliwa mucha. Jeśli domniemanym napastnikiem jest dzieciak skryptowy, byłoby inaczej. Założyłem również, że ponieważ atakujący jest ukierunkowany i wyrafinowany, prawdopodobnie na twoim komputerze działa niestandardowe oprogramowanie, które może reagować na twoje działania na nim ...


Ani.
Sprawdź /security//q/181/33 , w każdym razie to zły pomysł.
To jak dawanie paru bandaid czarnemu rycerzowi ... za mało, za późno, to po prostu niewiele pomoże.


Dla wszystkich, którzy uważają, że ta odpowiedź jest za daleko lub po prostu nie są wystarczająco „świadomi bezpieczeństwa” - musisz zdać sobie sprawę, że jest już za późno .
To już nie jest twój serwer, nawet jeśli go całkowicie rozłączysz. Nawet jeśli wyłączyć, należy uruchomić wszystkie swoje AVS i cokolwiek - nie masz go już, to zrobić.
To rodzaj definicji „zrootowanej”.

Teraz, zakładając, że są jego właścicielami i mogą ukryć przed tobą swoją własność, musisz rozważyć - co spowoduje odłączenie go? Tylko rzeczą będzie acheive - ponieważ będzie ona nadal zakorzenione niezależnie - to niech twój przeciwnik wie, że jesteś na nich. Co po prostu podnosi ich strażników i sprawia, że ​​zaczynają po sobie sprzątać (jeśli jeszcze tego nie zrobili), co po prostu zabije jakąkolwiek nadzieję kryminalistyki. Nadal nie chronisz tego serwera ani żadnych jego danych. Jak długo jest zakorzeniony? Skąd mógłbyś wiedzieć?

Co lepiej robić:

  • Pozostaw serwer gotowy do działania ...
  • Izoluj go od reszty sieci wewnętrznej, innych serwerów itp. - ale najlepiej podłączyć jakąś symulację, aby wyglądała na połączoną.
  • Ciche uruchamianie kryminalistyki w czasie rzeczywistym / sieci, uruchamianie śledzenia itp.
  • Spróbuj ustalić rozmiar i długość szkody (oczywiście inaczej, jeśli zdarzy się to 2 godziny temu lub 2 miesiące temu).
  • Kontynuuj stamtąd ... Dopiero po zmniejszeniu rzeczywistych obrażeń, idź dalej i oczyść je.
  • Oczywiście nie zapomnij zbadać pierwotnych przyczyn i egzekwować wszelkie kontrole, aby upewnić się, że to się nie powtórzy ...

2
Myślę, że może to zadziałać w sytuacji, w której można szybko przenieść je do symulowanego / izolowanego środowiska, ale tak niewiele organizacji może to zrobić, że w rzeczywistości chcą pójść po stronę „zminimalizowania wpływu” rzeczy, czyli odłączyć zasilanie lub sieć jest często natychmiastowe usunięcie tego zagrożenia. (nadal dajesz +1, jak chciałbym, żeby było tak :-)
Rory Alsop

@Rory problem polega na tym, że nie można zminimalizować wpływu, serwer jest już zainstalowany. Nie odzyskujesz tego, a wszelkie wrażliwe dane są potencjalnie skradzione, ponieważ nie wiesz, jak długo mieli dostęp. To powiedziawszy, symulowane środowisko to tylko oblodzenie, ważna jest izolacja - i wierzę, że większość organizacji ma solidną zaporę ogniową, przerzuć kilka zasad dostępu i jesteś złoty. To kolejny powód, dla którego dostępne serwery powinny znajdować się w strefie DMZ - ułatwia to część ....
AviD

Również, chcę zrobić coś jasne - powyżej stosuje się, gdy system operacyjny jest zakorzenione . Jeśli w Twojej witrynie wykorzystywana jest jakaś forma luki w zabezpieczeniach (np. SQL Injection), ABSOLUTNIE zamknij ją i pociągnij za wszystkie przewody, które możesz zdobyć! Ale root systemu operacyjnego jest inny - kontrolują całą infrastrukturę twojego komputera. Nie masz już żadnej kontroli.
AviD,

2
nie, miałem na myśli minimalizację wpływu poza tę zrootowaną maszynę. Zgadzam się, że jest całkowicie zagubiony, ale jeśli nie uda ci się szybko go odizolować, nie masz możliwości dowiedzenia się, co kontroler może zrobić z resztą twojego systemu
Rory Alsop

0

Po przejrzeniu twoich założeń dokonaj obu. Użyj nośnika CD / DVD, aby zrzucić bieżący stan. Przede wszystkim będziesz chciał móc określić, w jaki sposób zostałeś narażony na szwank. Możesz także spróbować odzyskać dane użytkownika spoza obrazów kopii zapasowej. Siema

Następnie odbuduj system z najnowszego niezabrudzonego nośnika kopii zapasowej. Sprawdź to za pomocą sum kontrolnych, jeśli to możliwe. Alternatywnie zainstaluj ponownie oprogramowanie z nośnika instalacyjnego i ponownie skonfiguruj. Ponowna konfiguracja powinna być automatyczna, jeśli używasz Puppet lub cfEngine do skonfigurowania serwera.

Załaduj ponownie dane użytkownika i wyszukaj składniki zestawu root. Sprawdź, czy nie ma programów setuid lub setgid w katalogach danych.

Określ i zamknij metodę dostępu zastosowaną do zainfekowania systemu. Reaktywacja etapowa serwera, dająca czas na sprawdzenie, czy aplikacje działają zgodnie z oczekiwaniami. Uważnie monitoruj nowe próby infekcji.

To wszystko zakłada, że ​​infekcja odbywa się na poziomie root. Infekcje internetowe można wykonać, zmieniając kod uruchamiany przez serwer WWW. Zezwolenie serwerowi na dostęp do zapisu do jego kodu może ułatwić to. Nadal możesz traktować tę sprawę tak, jakby konto root zostało przejęte.

Jeśli włamano się do roota na jednym systemie w jednym systemie, możesz mieć więcej komputerów. Ostrożnie zastanów się, do których systemów można uzyskać dostęp bez hasła z zainfekowanego systemu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.