Znalezienie sposobu zhakowania zaatakowanego serwera


11

Właśnie przeglądałem witrynę i znalazłem pytanie: Mój serwer został zhakowany AWARYJNY . Zasadniczo pytanie brzmi: Mój serwer został zhakowany. Co powinienem zrobić?

Najlepszą odpowiedzią jest doskonała, ale to budzi pewne pytania w moim umyśle. Jednym z sugerowanych kroków jest:

Sprawdź „zaatakowane” systemy, aby zrozumieć, w jaki sposób ataki skutecznie naruszyły Twoje bezpieczeństwo. Dołóż wszelkich starań, aby dowiedzieć się, skąd pochodzą „ataki”, aby zrozumieć, jakie masz problemy i które należy rozwiązać, aby Twój system był bezpieczny w przyszłości.

Nie wykonałem żadnej pracy administratora systemu, więc nie mam pojęcia, jak mam to zrobić. Jaki byłby pierwszy krok? Wiem, że możesz zajrzeć do plików dziennika serwera, ale jako atakujący pierwszą rzeczą, którą bym zrobił, byłoby usunięcie plików dziennika. Jak „zrozumiałbyś”, w jaki sposób ataki się powiodły?


Widziałem kilka „zhakowanych” serwerów i żaden z nich nie wyczyścił logów; Wiem jednak, że zdarza się to często. Atakujący zwykle ma główny cel (kradzież danych lub częste używanie serwera jako proxy / pośrednika), a ukrywanie ich danych wejściowych jest celem drugorzędnym.
Chris S

IMHO lepiej byłoby zadać sobie pytanie, jak lepiej zabezpieczyć serwer i jak poprawnie go skontrolować.
tmow

W dzisiejszych czasach „zhakowane” serwery często pochodzą ze zautomatyzowanych skryptowych narzędzi dla dzieci, które rzadko usuwają dzienniki, często nie próbując się nawet ukryć.
Sirex,

Odpowiedzi:


11

Zacznę od tego, że jeśli nie masz żadnych plików dziennika , istnieje spora szansa, że NIGDY nie zrozumiesz, gdzie i jak atak się powiódł. Nawet przy pełnych i prawidłowych plikach dziennika pełne zrozumienie, kto, co, gdzie, kiedy, dlaczego i jak może być niezwykle trudne.

Tak więc, wiedząc, jak ważne są pliki dziennika, zaczynasz rozumieć, jak bezpiecznie musisz je przechowywać. Właśnie dlatego firmy inwestują i powinny w skrócie inwestować w zarządzanie informacjami i zdarzeniami bezpieczeństwa lub SIEM.

SIEM

Krótko mówiąc, korelowanie wszystkich plików dziennika w określone zdarzenia (czasowe lub inne) może być niezwykle trudnym zadaniem. Jeśli mi nie wierzysz, spójrz na syslog zapory w trybie debugowania. I to tylko z jednego urządzenia! Proces SIEM umieszcza te pliki dziennika w szeregu logicznych zdarzeń, co znacznie ułatwia zrozumienie, co się stało.

Aby lepiej zrozumieć, w jaki sposób warto zapoznać się z metodologiami penetracji .

Pomocna jest również wiedza o tym, w jaki sposób powstaje wirus . Lub jak napisać rootkita .

Konfigurowanie i badanie plastra miodu może być bardzo korzystne .

Pomaga także mieć parser dziennika i stać się z nim biegłym .

Pomocne jest ustalenie linii bazowej dla sieci i systemów. Jaki jest „normalny” ruch w twojej sytuacji w porównaniu z „nienormalnym” ruchem?

CERT ma doskonały przewodnik na temat tego, co zrobić po zhakowaniu komputera, w szczególności (co dotyczy bezpośrednio konkretnego pytania) sekcja „Analiza włamań”:

  • Poszukaj modyfikacji dokonanych w oprogramowaniu systemowym i plikach konfiguracyjnych
  • Poszukaj modyfikacji danych
  • Poszukaj narzędzi i danych pozostawionych przez intruza
  • Przejrzyj pliki dziennika
  • Poszukaj znaków sniffera sieciowego
  • Sprawdź inne systemy w sieci
  • Sprawdź, czy w zdalnych lokalizacjach występują systemy zaangażowane lub zagrożone

Istnieje wiele pytań podobnych do twoich zadawanych na SF:

  1. Jak zrobić sekcję zwłok w ataku na serwer
  2. Dziwne elementy w pliku Hosts i Netstat
  3. czy to próba włamania?
  4. Jak mogę nauczyć się Linuksa z punktu widzenia hakowania lub bezpieczeństwa

Może to być niezwykle skomplikowany i zaangażowany proces. Większość ludzi, w tym ja, zatrudniłaby po prostu konsultanta, gdyby zaangażował się bardziej niż to, co mogłyby połączyć moje urządzenia SIEM.

I najwyraźniej, jeśli kiedykolwiek chcesz W PEŁNI zrozumieć, w jaki sposób zhakowano twoje systemy, musisz spędzić lata studiując je i rezygnując z kobiet.


+1 za położenie fundamentu, zanim stanie się to z SIEM
Rob Moir

Przepraszam. Moja odpowiedź jest w tej chwili dość wszędzie. Zacząłem pisać o 04:00, a moja kawa IV nie została jeszcze wprowadzona.
GregD,

2

Odpowiedź na ten mały kawałek może być szeroka i wysoka na milion mil, a odznaczenie tego, co stało się z zaatakowanym serwerem, może być niemal formą sztuki, podobnie jak wszystko inne, więc ponownie podam punkty początkowe i przykłady, a nie ostateczny zestaw kroków do naśladowania.

Należy pamiętać, że po napotkaniu ingerencji możesz skontrolować swój kod, administrację / konfigurację systemu i procedury ze świadomością, że jest tam pewna słabość. To pomaga napędzać motywację bardziej niż poszukiwanie teoretycznej słabości, która może, ale nie musi być. Dość często ludzie umieszczają różne rzeczy online, wiedząc, że kod mógłby zostać poddany audytowi nieco trudniej, gdybyśmy tylko mieli czas; lub system zablokował się nieco mocniej, gdyby tylko nie był tak niewygodny; lub procedury nieco się zaostrzyły, gdyby tylko szef nie pamiętał długich haseł. Wszyscy wiemy, gdzie są nasze najbardziej prawdopodobne słabe punkty, więc zacznij od nich.

W idealnym świecie dzienniki będą przechowywane na innym (miejmy nadzieję, że nie narażonym na szwank) serwerze syslog , nie tylko z serwerów, ale z dowolnych zapór ogniowych, routerów itp., Które również rejestrują ruch. Dostępne są również narzędzia takie jak Nessus, które mogą analizować system i wyszukiwać słabe punkty.

W przypadku oprogramowania / frameworku stron trzecich często dostępne są przewodniki najlepszych praktyk, których można użyć do kontroli wdrożenia, lub możesz zwrócić większą uwagę na wiadomości dotyczące bezpieczeństwa i harmonogramy łatania i odkryć pewne dziury, które mogły zostać wykorzystane.

Wreszcie, większość włamań pozostawia problem… jeśli masz czas i cierpliwość, aby go znaleźć. Skrypty „włamuj się” do dzieciaków lub włamuj się za pomocą zestawów narzędzi hakerskich koncentrują się na typowych słabościach i mogą pozostawić wzór wskazujący właściwy kierunek. Najtrudniejszą rzeczą do przeanalizowania może być włamanie kierowane ręcznie (np. Ktoś nie chciał włamać się do „strony”, ale zamiast tego chciał włamać się do „twojej” strony), a te są oczywiście najważniejsze.

Dla kogoś, kto tak naprawdę nie wie, od czego zacząć (lub nawet dla doświadczonych osób, które mają inne obowiązki), pierwszym krokiem jest prawdopodobnie zatrudnienie kogoś z dużym doświadczeniem w powyższych krokach. Kolejną zaletą tego podejścia jest to, że będą patrzeć na twoją konfigurację bez żadnych uprzedzeń i osobistego udziału w odpowiedziach.


1
+1 W rzeczywistości dodam, że lepiej zapobiegać niż walczyć, to znaczy również zapobiegać, że pewnego dnia się zdarzy. Dlatego na pierwszy rzut oka ważne jest opracowanie strategii upraszczającej rozwiązywanie problemów i ograniczającej skutki.
jutro

1

„Wiem, że możesz zajrzeć do plików dziennika serwera, ale jako atakujący pierwszą rzeczą, którą bym zrobił, byłoby usunięcie plików dziennika”.

W zależności od rodzaju kompromisu atakujący może nie mieć wystarczająco wysokich uprawnień na zaatakowanym serwerze, aby móc usuwać dzienniki. Najlepszą praktyką jest również przechowywanie logów serwera poza skrzynką na innym serwerze, aby zapobiec manipulacjom (eksportowane automatycznie w określonych odstępach czasu).

Oprócz zainfekowanych dzienników serwera nadal istnieją dzienniki sieciowe (zapora, router itp.), A także dzienniki uwierzytelnienia z usługi katalogowej, jeśli takie istnieją (Active Directory, RADIUS, itp.)

Dlatego przeglądanie dzienników jest nadal jedną z najlepszych rzeczy, które można zrobić.

Kiedy mamy do czynienia z zagrożonym pudełkiem, przesiewanie kłód jest zawsze jednym z moich głównych sposobów łączenia tego, co się stało.

-Josh


W ostatnim semestrze przeprowadziłem bardzo ograniczoną analizę dziennika. Jak znajdziesz dziurę w ogromnym pliku dziennika? Czy spojrzałbyś na ostatnie wpisy? Jak rozpoznasz podejrzane wpisy?
sixtyfootersdude

Jak rozpoznasz podejrzane wpisy? idealnie, przechowując historie dzienników do porównywania i / lub sprawdzając je wystarczająco często, aby wiedzieć, jak wyglądają niepozorne wpisy, abyś mógł wyeliminować normalne codzienne rzeczy i przyjrzeć się dokładnie temu, co zostało.
Rob Moir

1
Zgodziłbym się z Moirem. Administrator systemu musi znać system na tyle dobrze, że wie, kiedy usługa jest uruchomiona, co nie powinno być. Niektóre podejrzane wpisy w dzienniku są naprawdę łatwe do znalezienia, ponieważ mają określony podpis, który zostawiają (np. Skanowanie Nimda), podczas gdy w przypadku innych wpisów w dzienniku, tylko więcej kontekstu będzie dyktować, czy było to uzasadnione, czy nie.
Josh Brower
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.