Определить появление rootkit-пакета вручную поможет сканирование портов. Чтобы воспользоваться потайной дверью, нужно открыть в системе порт, на котором rootkit ожидает соединение со стороны хакера. Взломщик подключается к этому каналу и управляет системой.
Для быстрого сканирования лучше всего подходит пакет nmap ( www.insecure.org). Это один из самых быстрых сканеров под Linux с большими возможностями. Необходимо запустить программу проверки всех 65 535 портов. Для этого нужно выполнить команду:
nmap -р 1-65535 localhost
Параметр -р
позволяет задать диапазон портов. В данном случае установлен весь диапазон от 1 до 65 535.
Помимо этого, может пригодиться один из следующих параметров:
□ -sT
— стандартное сканирование с установкой TCP-соединения, является самым медленным. Любая программа антисканирования увидит его ( см. разд. 12.4 ). Если вы запускаете утилиту nmap под обычным пользователем, то по умолчанию будет применяться этот метод;
□ -ss
— TCP SYN-сканирование. Если вы работаете с правами root, то по умолчанию установлен этот тип, как более быстрый и к тому же неопределяемый некоторыми программами антисканирования;
□ -sF
— TCP FIN-сканирование. В соответствии с RFC 793, если на порт направить пакет с установленным флагом FIN
(используются для завершения соединения), и этот канал окажется закрытым, то сервер должен ответить пакетом, имеющим тип RST. ОС Linux действует то стандарту, и поэтому можно легко просканировать порты с помощью этого метода. Если пакет RST не получен, то порт закрыт. А вот работа Windows далека от стандарта, и здесь результат не предсказуем;
□ -sx
— TCP Xmas-сканирование. Метод похож на предыдущий, только помимо этого устанавливаются флаги URG
и PUSH
, указывающие на срочность данных;
□ -sN
— TCP NULL-сканирование. На сервер направляются пустые пакеты, на которые он должен ответить ошибками;
□ -I
— Ident-сканирование;
□ -sU
— UDP-сканирование.
Смысл сканирования в том, чтобы получить от сервера хоть какой-нибудь ответ. В зависимости от метода сканирования по положительному или отрицательному ответу определяется, закрыт порт или открыт.
Более быстрый способ получить открытые порты — это команды lsof
(с параметром -i
) или netstat
, но их выполнение должно происходить локально, непосредственно с компьютера. Вторая директива будет эффективной только в том случае, если хакер в данный момент подключен к системе.
Помимо rootkit вы должны проверить систему на наличие посторонний загружаемых модулей ядра. Для этого очень хорошо подходит утилита chkproc (входит в состав пакета chkrootkit). Но и это еще не все, chkrootkit включает в себя еще и утилиту ifpromisk, которая позволяет найти программу прослушивания трафика.
И напоследок, проверяем список работающих процессов с помощью команды ps -aux
на предмет наличия незнакомых процессов. При просмотре будьте также внимательны. Вспомните пример с программой login, когда первая буква "1" заменялась на цифру 1. Едва бросив взгляд, можно не заметить процесс login.
Если объединить работу всех этих утилит в одно целое, то можно будет получить новый пакет rootkit, о котором еще неизвестно фирме chkrootkit.
После того как вы определили наличие файлов rootkit, вы должны остановить их работу и удалить из системы. Самое простое, если программа хакера не модифицировала никаких системных файлов. Если это произошло, то нужно переустановить все программы, которые изменил злоумышленник. Легче всего это сделать в дистрибутивах на основе Red Hat, где поддерживается работа с RPM-пакетами. Тогда достаточно выполнить команду:
rpm -U -force пакет.rpm
В данном случае мы запрашиваем восстановление пакета с именем пакет.rpm
.
Если взломщик получил доступ к серверу, то, чтобы оставаться незаметным, он устанавливает в системе программы backdoor (потайные двери). Такие программы чаще всего действуют следующим образом:
□ на каком-либо порту открывается прослушивание, и программа ожидает подключения хакера;
□ когда соединение состоялось, то программа открывает для хакера командную оболочку на этом порту, чтобы можно было выполнять директивы.
Это вам ничего не напоминает? Да, троянские программы работают подобным образом, но троянов подбрасывают как вирусы и ожидают, что администратор сам их запустит, a backdoor взломщик закачивает на сервер и запускает сам.
Есть сходство и с программами rootkit. В настоящее время стирается грань между разными хакерскими утилитами. Одна программа может выполнять сразу несколько функций. Так rootkit и backdoor уже давно соединяют в одно целое, хотя остаются еще и классические утилиты.
Читать дальше
Конец ознакомительного отрывка
Купить книгу