Взлом Российского банка Master-lame-master Xakep, номер #062, стр. 062-050-1 Нашумевшие истории крупных взломов В крупных банках, как правило, работают очень опытные системные администраторы. Пробиться в их систему практически невозможно. Но бывают и исключения, когда в организации служит немощный админ, на попечении которого находится дырявый сервер. Этот материал – яркий пример такого исключения. Осмотр жертвы Как-то раз один хакер, общаясь по аське, получил интересное сообщение от своего приятеля. Тот увлеченно рассказывал, что нашел некоторую подсеть, принадлежащую одному известному банку. Как ни странно, он редко когда видел, чтобы главный сервер светил все порты в инет. Но палиться и ломать банк самому ему как-то не хотелось, поэтому он предложил это сделать нашему герою. Взломщик согласился и начал изучать этот сервер. Для начала он натравил свой любимый nmap на жертву. Оказалось, что на сервере открыто с десяток портов, среди которых оказался странный порт с номером 1100. Хакер впервые видел этот порт, поэтому пришлось лезть в инет за инфой. Как оказалось, на банковском серваке был установлен Web Tuner, позволяющий управлять антивирусом Касперского через удобный web-интерфейс. Глючное удобство Других дырок не обнаружилось, поэтому хакер решил исследовать этот самый Web Tuner. На самом деле это довольно продвинутая среда администрирования, поддерживающая SSL и различные способы аутентификации. К тому же этот сервис можно запустить в chroot и знать, что никакой злоумышленник не взломает твою систему. И это надо делать обязательно, поскольку Web Tuner работает под рутом. Но, как я уже говорил, админы в нашей стране ленивые, поэтому ожидать можно чего угодно. Что же получил хакер от изучения работы Web Tuner’а? При заходе браузером на этот сервис не было запрошено никакого пароля. Более того, взломщик был уверен, что chroot также не настроен. Наплевательское отношение администратора к своему серверу очень удивило хакера, т.к. он знал, что в банках работают только профессионалы. Итак, наш злобщик потыкался в различные менюшки среды Web Tuner’a. В них он заприметил одну весьма интересную вкладку – обновление антивирусных баз из Сети. Дело в том, что администратор мог указывать параметры для выполнения команды. Вполне вероятно, что программисты могли просто забыть сделать проверку спецсимволов в строке, поэтому хакер решил проверить защищенность сервиса. Взломщик задал в качестве параметров кусок кода, открывающий шелл на 31337 порту, перенаправив сам код в файл /tmp/bindshell.c (hysteria.sk/sd/f/junk/bindshell/bindshell.c). Затем скомпилировал и запустил бинарник. Стал телнетиться. И соединившись с сервером, он получил РУТОВЫЙ шелл! Все логично - софтина работает под рутом, поэтому и доступ хакер получает соответствующий. Изучение системы Дальше начались сюрпризы. Сервер вертелся на старом дистрибутиве RedHat 6.0 (версия определилась при помощи команды cat /etc/redhat-release). Ядро, соответственно, было из ветки 2.2 – рутается обычным ptrace-эксплойтом. Но не понадобилось и этого – за все спасибо Web Tuner’у. Решив посмотреть файрвол, хакер выполнил команду iptables –nvL. Оболочка сообщила, что такая команда отсутствует. Тогда взломщик задумался и вспомнил, что в ветке 2.2 в качестве файрвола по умолчанию используется ipchains. Пришлось немного помучиться – шел процесс вспоминания синтаксиса файрвола. В итоге хакер просмотрел таблицу INPUT. В ней содержалось всего два правила: ACCEPT на все соединения и ACCEPT для службы DHCP. Совершенно непонятно, зачем были нужны эти два рулеса, ведь политика цепи была также ACCEPT. Словом, впечатление об админе банка окончательно испортилось. Более того, вторым правилом админ полностью выдал предназначение сервера. Как оказалось, сервак играл роль шлюза между локальной сетью и интернетом. Этот вывод также подтвердила команда ifconfig. |