Jak wykryć, czy system Linux został zhakowany

Jak wykryć, czy system Linux został zhakowany
Gdy podejrzewa się, że system został zhakowany, jedynym bezpiecznym rozwiązaniem jest zainstalowanie wszystkiego od samego początku, zwłaszcza jeśli celem był serwer lub urządzenie zawierające informacje przekraczające prywatność użytkownika lub administratora prywatności. Jednak możesz postępować zgodnie z pewnymi procedurami, aby spróbować zrozumieć, czy Twój system został naprawdę zhakowany, czy nie.

Zainstaluj system wykrywania włamań (IDS), aby wiedzieć, czy system został zhakowany

Pierwszą rzeczą do zrobienia po podejrzeniu ataku hakera jest skonfigurowanie IDS (system wykrywania włamań) w celu wykrycia anomalii w ruchu sieciowym. Po rozpoczęciu ataku narażone urządzenie może stać się zautomatyzowanym zombie w usłudze hakerów. Jeśli haker zdefiniował automatyczne zadania w urządzeniu ofiary, zadania te prawdopodobnie wytworzą anomalny ruch, który można wykryć za pomocą systemów wykrywania włamań, takich jak Ossec lub parszenie, które zasługują na dedykowany samouczek, mamy następujące czynności, aby zacząć od najbardziej popularny:

  • Skonfiguruj identyfikatory snortu i tworz reguły
  • Rozpoczęcie pracy z OSSEC (system wykrywania włamania)
  • Pwarki powiadomienia
  • Instalowanie i korzystanie z systemu wykrywania wtargnięcia Snort w celu ochrony serwerów i sieci

Dodatkowo, do konfiguracji IDS i właściwej konfiguracji, musisz wykonać dodatkowe zadania wymienione poniżej.

Monitoruj aktywność użytkowników, aby wiedzieć, czy system został zhakowany

Jeśli podejrzewasz, że zostałeś zhakowany, pierwszym krokiem jest upewnienie się, że intruz nie jest zalogowany do twojego systemu, możesz go osiągnąć za pomocą poleceń ”w" Lub "Kto”, Pierwszy zawiera dodatkowe informacje:

# w

Notatka: Polecenia „W” i „Who” mogą nie pokazywać użytkowników zalogowanych z pseudo terminali, takich jak terminal XFCE lub terminal Mate.

Pierwsza kolumna pokazuje nazwa użytkownika, W takim przypadku Linuxhint i Linuxlat są rejestrowane, druga kolumna Tty pokazuje terminal, kolumna Z pokazuje adres użytkownika, w tym przypadku nie ma zdalnych użytkowników, ale gdyby tak było. ZALOGUJ SIE@ Kolumna pokazuje czas logowania, kolumna JCPU podsumowuje minuty procesu wykonane w terminalu lub Tty. PCPU pokazuje procesor zużyty przez proces wymieniony w ostatniej kolumnie CO. Informacje o procesorze są szacunkowe i nie są dokładne.

Chwila w równa się wykonaniu czas aktu, Kto I ps -a Razem inną alternatywą, ale mniej pouczającą jest polecenie „Kto”:

# Kto

Innym sposobem nadzorowania aktywności użytkowników jest polecenie „ostatnie”, co pozwala odczytać plik WTMP który zawiera informacje na temat dostępu do logowania, źródła logowania, czasu logowania, z funkcjami ulepszonymi określonymi zdarzeniami logowania, aby spróbować uruchomić:

# ostatni

Dane wyjściowe pokazuje nazwę użytkownika, terminal, adres źródłowy, czas logowania i czas trwania czasu.

Jeśli podejrzewasz złośliwą aktywność przez określonego użytkownika, możesz sprawdzić historię bash, zaloguj się jako użytkownik, którego chcesz zbadać i uruchomić polecenie historia Jak w poniższym przykładzie:

# Su
# Historia

Powyżej możesz zobaczyć historię poleceń, te polecenia działa, czytając plik ~/.bash_history Znajduje się w domu użytkowników:

# mniej /dom //.bash_history

Wewnątrz tego pliku zobaczysz to samo wyjście, niż podczas korzystania z polecenia „historia".

Oczywiście ten plik można łatwo usunąć lub sfałszować jego zawartość, nie można uznać za fakt, ale jeśli atakujący przeprowadził polecenie „złego” i zapomniał usunąć historię, będzie tam.

Sprawdzanie ruchu sieciowego, aby dowiedzieć się, czy system został zhakowany

Jeśli haker naruszył twoje bezpieczeństwo, istnieje duże prawdopodobieństwo, że zostawił backdoor, sposób na odzyskanie, skrypt dostarczający określone informacje, takie jak spam lub górnicze bitcoiny, na pewnym etapie, jeśli trzymał coś w systemie komunikując się lub wysyłając jakieś informacje, które musisz być w stanie to zauważyć, monitorując ruch w poszukiwaniu nietypowej aktywności.

Aby rozpocząć, uruchom polecenie iftop, które domyślnie nie pojawia się w instalacji standardowej debian. Na swojej oficjalnej stronie internetowej IFTOP jest opisywana jako „Najlepsze polecenie użycia przepustowości”.

Aby zainstalować go w dystrybucjach Debian i opartych na Linux:

# apt Zainstaluj iftop

Po zainstalowaniu uruchom go z sudo:

# sudo iftop -i

Pierwsza kolumna pokazuje localHost, w tym przypadku Montsegur, => i <= indicates if traffic is incoming or outgoing, then the remote host, we can see some hosts addresses, then the bandwidth used by each connection.

Podczas korzystania z IFTOP zamknij wszystkie programy za pomocą ruchu, takich jak przeglądarki internetowe, posłańcy, aby odrzucić jak najwięcej zatwierdzonych połączeń, aby przeanalizować to, co pozostaje, identyfikacja dziwnego ruchu nie jest trudna.

Netstat poleceń jest również jedną z głównych opcji podczas monitorowania ruchu sieciowego. Następujące polecenie wyświetli porty słuchania (l) i aktywne (a).

# netstat -la

Więcej informacji na temat NetStat można znaleźć na temat sprawdzania otwartych portów w Linux.

Sprawdzanie procesów, aby wiedzieć, czy system został zhakowany

W każdym systemie operacyjnym, gdy coś wydaje się nie tak, jedną z pierwszych rzeczy, których szukamy, są procesy, aby spróbować zidentyfikować nieznany lub coś podejrzanego.

# szczyt

W przeciwieństwie do klasycznych wirusów, nowoczesna technika hackowania może nie wytwarzać dużych pakietów, jeśli haker chce uniknąć uwagi. Sprawdź ostrożnie poleceń i użyj polecenia lsof -p Do podejrzanych procesów. Polecenie LSOF pozwala zobaczyć, jakie pliki są otwarte i powiązane z nimi procesy.

# lsof -p

Proces powyżej 10119 należy do sesji bash.

Oczywiście, aby sprawdzić procesy, jest polecenie Ps zbyt.

# ps -axu

Wyjście PS -exu powyżej pokazuje użytkownika w pierwszym colum (root), identyfikatorze procesu (PID), który jest unikalny, zużycie procesora i pamięci przez każdy proces, pamięć wirtualna i rozmiar zestawu rezydenta, terminal, stan procesu, jego czas rozpoczęcia i polecenie, które go rozpoczęło.

Jeśli zidentyfikujesz coś nienormalnego, możesz sprawdzić z LSOF z numerem PID.

Sprawdzanie systemu pod kątem infekcji rootkits:

Rootkits należą do najbardziej niebezpiecznych zagrożeń dla urządzeń, jeśli nie gorsze, po wykryciu rootkit nie ma innego rozwiązania niż ponowna instalacja systemu, czasami rootkit może nawet wymusić wymianę sprzętową. Na szczęście istnieje proste polecenie, które może pomóc nam wykryć najbardziej znane korzeniowe, polecenie Chkrootkit (sprawdź rootkits).

Aby zainstalować ChkrootKit w dystrybucjach Debian i Linux, uruchom:

# apt Zainstaluj chkrootkit


Po zainstalowaniu po prostu uruchom:

# sudo chkrootkit


Jak widzisz, w systemie nie znaleziono żadnych rootkitów.

Mam nadzieję, że znalazłeś ten samouczek, jak wykryć, czy twój system Linux został zhakowany ”.