Jak zrobić sekcję zwłok z ataku na serwer

29

Mam komputer z systemem Windows Server 2003 SP2 z zainstalowanymi na nim IIS6, SQL Server 2005, MySQL 5 i PHP 4.3. To nie jest maszyna produkcyjna, ale jest wystawiona na świat za pośrednictwem nazwy domeny. Pulpit zdalny jest włączony na komputerze i są na nim aktywne dwa konta administracyjne.

Dziś rano odkryłem, że maszyna została wylogowana z nieznaną nazwą użytkownika w polu tekstowym logowania. Po dalszym dochodzeniu odkryłem, że utworzono dwóch użytkowników systemu Windows, program antywirusowy został odinstalowany, a pliki .exe zostały upuszczone na dysk C:

Chciałbym wiedzieć, jakie kroki powinienem podjąć, aby upewnić się, że to się więcej nie powtórzy, i obszary, na których powinienem się skoncentrować, aby określić drogę wejścia. Sprawdziłem już netstat -a, aby zobaczyć, które porty są otwarte, i nic tam nie wydaje się dziwne. Znalazłem nieznane pliki w folderze danych MySQL, które, jak sądzę, mogły być punktem wejścia, ale nie jestem pewien.

Naprawdę doceniam kroki prowadzące do pośmiertnego ataku hakerskiego na serwer, dzięki czemu będę mógł tego uniknąć w przyszłości.

Przegląd po dochodzeniu

Po pewnym dochodzeniu chyba się dowiedziałem, co się stało. Po pierwsze, urządzenie nie było online w okresie od sierpnia '08 do października '09. W tym czasie została odkryta luka w zabezpieczeniach, Luka w zabezpieczeniach MS08-067 . „Jest to luka w zabezpieczeniach umożliwiająca zdalne wykonanie kodu. Osoba atakująca, której uda się wykorzystać tę lukę, może zdalnie uzyskać pełną kontrolę nad systemem, którego dotyczy luka. W systemach Microsoft Windows 2000, Windows XP i Windows Server 2003 osoba atakująca może wykorzystać ta luka w zabezpieczeniach RPC bez uwierzytelnienia i może uruchamiać dowolny kod ”. Luka została naprawiona dzięki aktualizacji zabezpieczeń KB958644, która ukazała się w październiku 2008 roku.

Ponieważ maszyna była wtedy w trybie offline i przegapiła tę aktualizację, uważam, że ta luka została wykorzystana wkrótce po powrocie komputera do sieci w październiku 2009 roku. Znalazłem odniesienia do programu bycnboy.exe, który został opisany jako program typu backdoor, który następnie powoduje znaczne spustoszenie w zainfekowanym systemie. Wkrótce po tym, jak maszyna była w trybie online, automatyczne aktualizacje zainstalowały łatkę, która uniemożliwiała zdalne sterowanie systemem. Ponieważ backdoor był teraz zamknięty, uważam, że osoba atakująca utworzyła fizyczne konta na komputerze i była w stanie korzystać z niego przez kolejny tydzień, dopóki nie zauważyłam, co się dzieje.

Po agresywnym usuwaniu złośliwego kodu, plików .ex i .dll, usuwaniu stron internetowych i kont użytkowników, maszyna znów działa. W najbliższej przyszłości będę monitorować system i przeglądać logi serwera, aby ustalić, czy powtórzy się incydent.

Dziękujemy za informacje i kroki, które zostały dostarczone.

Chris
źródło

Odpowiedzi:

28

Robienie sekcji zwłok jest sztuką samą w sobie. Za każdym razem jest trochę inaczej, ponieważ tak naprawdę nie ma dwóch takich samych włamań. Mając to na uwadze, poniżej znajduje się ogólny przegląd mojego zalecanego procesu z kilkoma szczegółowymi uwagami na temat Twojej sytuacji:

  1. Fizycznie odłącz urządzenie od sieci. (Naprawdę. Zrób to teraz.)
  2. Opcjonalny krok: Wykonaj kopię obrazu binarnego dysku twardego do przyszłego użytku.
  3. Wykonaj kopię wszystkich plików dziennika, cennych danych itp. Na wymiennym dysku twardym
    • Opcjonalnie skopiuj również wszystkie znalezione „narzędzia hakerskie”
  4. Rozpocznij rzeczywistą sekcję zwłok. W Twoim przypadku:
    • Zanotuj wszystkie nowe lub brakujące konta użytkowników. Sprawdź, czy ich katalogi domowe mają jakieś „interesujące” treści.
    • Zanotuj wszelkie nowe lub brakujące programy / pliki binarne / pliki danych.
    • Najpierw sprawdź dzienniki MySQL - poszukaj czegoś „niezwykłego”
    • Sprawdź pozostałe dzienniki serwera. Sprawdź, czy możesz znaleźć tworzonych nowych użytkowników, adresy, z których się logowali itp.
    • Poszukaj dowodów na uszkodzenie lub kradzież danych
  5. Gdy znajdziesz przyczynę problemu, zanotuj, jak zapobiec ponownemu wystąpieniu problemu.
  6. Wyczyść serwer: sformatuj i zainstaluj ponownie wszystko, przywróć dane i zatkaj oryginalny otwór notatkami z punktu 5.

Zazwyczaj wykonujesz krok 2, jeśli zamierzasz zaangażować organy ścigania. Wykonaj krok 3, aby móc przejrzeć informacje po odbudowie serwera bez konieczności odczytywania kopii obrazu wykonanej w kroku 2.

Stopień szczegółowości kroku 4 zależy od twoich celów: samo zatkanie dziury to inny rodzaj dochodzenia niż śledzenie, kto ukradł cenne dane :)

Krok 6 jest krytyczny dla IMHO. Nie „naprawiasz” zainfekowanego hosta: czyścisz go i zaczynasz od znanego dobrego stanu. To gwarantuje, że nie przegapisz żadnej bryłki paskudnego pozostawionego na pudełku jako bomby zegarowej.

Nie jest to bynajmniej pełny zarys sekcji zwłok. Oznaczam to jako wiki społeczności, ponieważ zawsze szukam ulepszeń w tym procesie - nie używam go często :-)

voretaq7
źródło
3
Nie mam doświadczenia w robieniu czegoś takiego, ale rada Security Monkey, jeśli zamierzasz sfotografować maszynę do zbadania, to pociągnąć za przewód zasilający, zobrazować dysk twardy, a następnie rozpocząć badanie. (Security Monkey: it.toolbox.com/blogs/securitymonkey )
MattB
1
Security Monkey is dead on - Chcesz zamrozić maszynę na zimno (szarpnąć przewód zasilający), kiedy przejdziesz do jej zobrazowania. zamknięcie i / lub uruchomienie może wyzwolić kod samozniszczenia lub czyszczenia, a szarpnięcie mocy zapobiega temu przed zrobieniem obrazu.
voretaq7
2
Ponadto - powiedziałbym, że nie należy ufać wynikom poleceń „wbudowanych” w zhakowanym systemie, takich jak netstat (lub reż. Itp.) Ponownie, nie mam bezpośredniego doświadczenia z tym na poziomie przedsiębiorstwa, ale pamiętam, że zostałem zhakowany na komputerach osobistych, gdzie częścią włamania była wymiana wbudowanych narzędzi do maskowania tego, co naprawdę się działo.
MattB
4
+1 krok 6 jest niezbędny, nie wiesz, czy netstat pokazuje ci prawdę bez analizowania rzeczywistego ruchu w sieci - a to samo w sobie może być dość skomplikowane i próba cierpliwości ... więc wytrzyj to. To już nie jest twoje pudełko. Analizuj obraz, jak chcesz, ale wytrzyj cholerną maszynę;)
Oskar Duveborn
1
Powiedziałbym, że prawdopodobnie lepiej za każdym razem robić krok # 2, ponieważ nie jesteś całkowicie pewien, co znajdziesz podczas dochodzenia. Posiadanie obrazów binarnych oznacza również, że możesz mieć różne osoby spoglądające na różne rzeczy, używając ich kopii.
Vatine