Подключились к серверу и начали собирать данные. Важно: для форензики используем статически скомпилированные утилиты с чистой машины, потому что системные бинарники на скомпрометированном сервере могут быть подменены руткитом.
Шаг 1 — активные соединения:
# Ищем подозрительные SSH-соединения
lsof -ni | grep ssh
# sshd 14523 root 3u IPv4 ... TCP 10.0.0.5:22->172.190.125.14:44832 (ESTABLISHED)
# Чужое соединение с IP 172.190.125.14
# Проверяем все установленные TCP-соединения
ss -tupan | grep ESTAB
# Обнаружен ещё один подозрительный коннект на порт 4443 (reverse shell)
Шаг 2 — подозрительные процессы:
# Процессы с нестандартными именами
ps auxf | grep -v '\[' | sort -k3 -rn | head -20
# Обнаружен процесс /usr/bin/.sshd (точка перед именем!)
# PID 14201, запущен от root, CPU 0.1%, работает 3 дня
# Проверяем, что за файл
file /usr/bin/.sshd
# ELF 64-bit LSB executable — это не настоящий sshd
ls -la /usr/bin/.sshd
# -rwxr-xr-x 1 root root 1847296 Mar 15 03:14 /usr/bin/.sshd
Шаг 3 — проверяем целостность системных бинарников:
# Сравниваем хеши SSH с пакетными
dpkg -V openssh-server
# ??5?????? /usr/sbin/sshd
# Хеш не совпадает — файл модифицирован!
# Проверяем атрибуты
lsattr /usr/sbin/sshd
# -u--ia-------e-- /usr/sbin/sshd
# Атрибуты 'i' (immutable) и 'a' (append-only) — защита от перезаписи
Модифицированный sshd с атрибутом immutable — классический приём: даже apt upgrade не сможет заменить файл.
Оставить комментарий