Diagnozowanie i wyszukiwanie wirusów, tylnych furtek oraz złośliwych skryptów na serwerze to zadania, które mogą wydawać się złożone i onieśmielające, szczególnie dla osób nieposiadających specjalistycznych narzędzi i głębokiej wiedzy technicznej. Niniejszy artykuł został stworzony, aby pomóc Ci zrozumieć podstawowe kroki, które możesz podjąć w celu sprawdzenia swojego serwera. Pamiętaj, że poniższe informacje są przeznaczone dla doświadczonych użytkowników, a nieprawidłowe ich wykorzystanie może prowadzić do niezamierzonych konsekwencji. Nie ponoszę odpowiedzialności za ewentualne szkody wynikające z błędnego wykorzystania tego poradnika.
Wszystkie z poniższych komend wykonujemy za pomocą ssh. Są to komendy wyszukujące podejrzane pliki, natomiast ich weryfikacją i ewentualnym usunięciem powinien zająć się specjalista. Jeśli jednak postanowisz je usunąć, a nie masz pewności czy ten plik nie jest Ci potrzebny to pamiętaj o wykonaniu kopii zapasowej.
Wyszukiwanie proponuję rozpocząć w danym katalogu używając komendy:
cd sciezka_do_katalogu
1. Wyszukiwanie podejrzanych plików PHP
Zacznijmy od identyfikacji plików PHP, które mogą zawierać słowa kluczowe typowe dla złośliwego oprogramowania, takie jak base64_decode
, shell_exec
, exec
, system
, eval
. Te funkcje są często wykorzystywane przez atakujących do wykonania szkodliwego kodu na serwerze. Aby to zrobić, użyj poniższego polecenia:
grep -Rn --include=*.php 'base64_decode\|shell_exec\|exec\|system\|eval' .
2. Wyszukiwanie plików z podejrzanymi nazwami
Następnie, zwróć uwagę na pliki o dziwnych lub generowanych losowo nazwach, które mogą ukrywać złośliwe skrypty. Wykonaj polecenie:
find . -name '*.php' -print | grep -E "([a-z0-9]{32}|[a-z0-9]{64})\.php"
3. Wyszukiwanie plików zmodyfikowanych niedawno
Pliki zmodyfikowane w ostatnich dniach mogą wskazywać na niedawny atak. Aby je znaleźć, użyj:
find . -name '*.php' -mtime -5
4. Wyszukiwanie plików z wykonywalnym kodem w nieoczekiwanych miejscach
Obecność plików wykonywalnych w miejscach przeznaczonych do przechowywania danych może być podejrzana. Sprawdź to, korzystając z:
find . -name '*.php'
5. Sprawdzanie otwartych połączeń i nasłuchujących portów
Nieautoryzowane połączenia i otwarte porty mogą wskazywać na kompromitację serwera. Aby je zidentyfikować, użyj:
netstat -tuln
6. Sprawdzanie obecnych procesów
Analiza uruchomionych procesów pomoże Ci wykryć nieoczekiwane lub nieznane usługi, które mogą być częścią złośliwego oprogramowania:
ps aux
7. Monitorowanie logów
Wreszcie, regularne przeglądanie logów serwera może ujawnić nieoczekiwane błędy lub aktywność, sugerującą naruszenie bezpieczeństwa:
tail -f /var/log/syslog tail -f /var/log/apache2/error.log
Ważne uwagi:
- Zastąp
.
rzeczywistą ścieżką do folderu, jeśli chcesz przeskanować inny folder względem obecnego w którym obecnie się znajdujesz. - Pamiętaj, że to są tylko podstawowe narzędzia do diagnozy. Złośliwe oprogramowanie często maskuje swoją obecność i może wymagać bardziej zaawansowanej analizy.
- Regularnie aktualizuj oprogramowanie, system operacyjny i skrypty, aby zmniejszyć ryzyko ataków.
- Rozważ użycie profesjonalnych narzędzi bezpieczeństwa i regularnych audytów bezpieczeństwa.
- Jeśli nie jesteś pewien co do znalezionego pliku, skonsultuj się z profesjonalistą ds. bezpieczeństwa IT.
Jeśli mimo wszystko napotkasz trudności lub wolisz, aby doświadczony zespół zajął się diagnozowaniem i usuwaniem potencjalnych zagrożeń z Twojego serwera, nie wahaj się się z nami skontaktować. Nasza ekipa jest wyposażona w narzędzia i wiedzę niezbędną do szybkiego i skutecznego rozwiązania problemu z złośliwym oprogramowaniem, zapewniając, że Twój serwer pozostanie bezpieczny i niezagrożony.