Обсерваторные злодеяния

Master-lame-master

Xakep, номер #054, стр. 054-060-2


Время шло. Проверка демонов на неустойчивость особого успеха не принесла, но хакер уже располагал основными данными о них, а также об устройстве сервера в целом. Можно было подумать, что утро вечера мудренее, и закончить сбор данных. Но этот нарушитель сетевого порядка был не робкого десятка. Поэтому он и не думал сдаваться, а верил, что в любой каменной стене всегда найдется маленькая трещина.

Bruteforce - классика взлома

"Но что делать, когда такой трещинки не наблюдается?" - спросишь ты в надежде, что я выдам тебе секреты успехов великих хакеров. На самом деле, однозначно на этот вопрос ответить нельзя. Все зависит от ситуации. Наш же взломщик решил прибегнуть к самому опасному и неблагодарному методу - брутфорсу паролей. Вероятно, ты в курсе, что каждая попытка входа на сервер занимает довольно много времени (от секунды до пяти, в зависимости от пропускной способности канала). Но и это еще не все, ведь каждая попытка подбора пароля будет зафиксирована в логах.

Хакер определился, что подбирать пароль будет к системе web-управления сервером. Если ты посмотришь на список открытых портов, то, наверное, догадаешься, что на серваке присутствует Webmin. Для тех, кто в танке, расскажу, что это за система и с чем ее едят. Webmin - система, написанная на Perl и предназначенная для удаленного управления сервером через web. Она позволяет одним щелчком мыши ребутнуть сервер :) или посмотреть таблицу процессов, а также добавить нового пользователя, отредактировать конфиг и т.д. и т.п. Изначально Webmin придумывался для новичков-администраторов, которым легче управлять серваком через web, а не через SSH.

Наскоро написав простенький MIME-брутфорсер, наш герой натравил его на relay.sao.ru. Принцип работы этого брутфорсера очень прост: создается соединение с 10000 портом удаленного сервера. Затем осуществляется передача header'а с MIME-хешем ("login:password") и элементарный анализ возвращаемого результата (200 OK, либо 401 Error). Выбор сервиса Webmin был также неслучаен. Суди сам. Каждое соединение в Linux записывается в лог. В случае с хакером - /var/log/webmin.log. Если же выбрать сервис ftp, то попытки записывались бы в /var/log/messages - главный журнал системы. Риск обнаружения попытки взлома в этом случае оказался бы существенно выше. Во-вторых, был необходим действующий в системе логин. По опыту хакер знал, что большинство админов используют логин root для входа в Webmin, поэтому решил подбирать пароль именно к нему.

Через два часа интерактивный брутфорсер остановил перебор. "Закончился словарик", - подумал взломщик, но ошибся. Брутфорсер выполнил свою задачу, подобрав пароль для учетной записи root. Для справки: пароль был "digital", видимо тамошний админ был любителем цифровых технологий :). Далее шел стандартный алгоритм действий: создание пользователя с рутовыми правами (через Webmin), вход в систему через SSH и чистка логов за собой.

Назад на стр. 054-060-1  Содержание  Вперед на стр. 054-060-3