Охота на хакера Александр Любимов aka Sashiks Хакер, номер #084, стр. 084-062-3 # rkhunter -c --createlogfile Китхантер, не моргнув и глазом, запустился, выдавая подробное описание о текущем предмете исследования. Сначала он проверил чексумму на бинарниках, изучил список модулей и перешел к проверке на признаки отдельных руткитов. Неожиданно прога вывела warning, мол, обнаружено присутствие SHV4 и SHV5 и для более детального изучения мне следует обратиться к лог-файлу: # less /var/log/rkhunter.log В лог-файле ключевым моментом была следующая запись: [05:00:52] *** Start scan SHV4 *** [05:00:52] - File /lib/lidps1.so... WARNING! Exists. [05:01:48] *** Start scan SHV5 *** [05:01:48] - File /etc/sh.conf... WARNING! Exists. [05:01:48] - File /dev/srd0... WARNING! Exists. [05:01:48] - Directory /usr/lib/libsh... WARNING! Exists. Именно она разоблачала комплект, которым хакер заразил систему: у меня теперь есть инфа о домашней папке хакера (/usr/lib/libsh) и листинг некоторых файлов, принадлежащих к rootkit. Теперь настал момент для решительных действий. События могли развиваться несколькими путями. Например можно было собрать на хакера компромат. Делается все очень просто, только для этого нам нужно знать порт, на котором весит руткит. Качаем с сайта RST (http://rst.void.ru/download/portcheck.txt) скрипт PortChecker на Perl и запускаем его в некотором диапазоне. Если отбросить все системные сервисы, то по идее на машине торчать будет только порт руткита, и поэтому портчекер с легкостью его обнаружит (конечно, можно тоже самое проделать с помощью локального сканирования портов, но это в несколько раз дольше). Каким образом portcheck может видеть даже то, что не показывает netstat? Все очень просто: когда ты при запуске этой утилиты указываешь диапазон, то выполняется цикл, в котором с помощью IO::Socket создается сокет на каждом из портов. Понятное дело, что если порт уже забит каким-то приложением (веб-сервер, фтп, бэкдор), то сокет создаться не может. Именно это и служит поводом считать, что порт уже открыт и используется. Чешем репу дальше - порт мы знаем, а значит, самое время поставить какой-нибудь крутой снифер. Тут выбор просто огромен, ознакомиться с ним можно по адресу http://packetstormsecurity.nl/sniffers. Наснифанный трафик будет довольно нехилым подспорьем в деле против хацкера :). [разоблачение хакера] Итак, машина была заражена руткитом SHV5. Домашний каталог хакера находился в /usr/lib/libsh. В принципе, ничего особенного, но в нем есть один замечательный файлик - .bashrс. Именно он мне и поможет. В школе на уроках истории тебе, наверное, рассказывали, что при запуске интерпретатора вся гадость, написанная в этом сценарии, обрабатывается и выполняется. Поскольку обладал рутовыми правами, то мог свободно записывать в этот файл все, что хотел. Для начала я решил узнать IP-адрес наглеца-взломщика и выслать себе его на мыло: |