Государство в позе

l1s(l1s@list.ru)

Хакер, номер #086, стр. 086-080-1

Local root государственного сервера под FreeBSD

Пробегая по различным sec-форумам, в разделе я наткнулся на пост, в котором добрый человек предлагал поломать какой-то важный политический ресурс. За получение root-доступа он щедро выкладывал $300. Вообще, я не любитель взломов на заказ, но в тот холодный и тоскливый вечер, мне почему-то захотелось немного поразмяться и устроить серверу полную проверку.

[rippers? Fuck!]

Прежде чем браться за работу, я решил немного обезопасить тебя и пробить этого парня по базе рипперов. Я быстренько стукнул к довольно качественному боту, который и по сей день нормально функционирует на уине 4474744, и забил ему такую команду: !ripper [nick], на что бот мне приятно ответил: [nick] is not in our database. Связавшись с добрым человеком, я получил хост и мы быстро разбежались по своим делам.

[in attack]

Начать взлом я решил со сбора информации о сервере. Сначала, методом whois-пробива, я узнал ip-адрес сервера. После посетил web-интерфейс жертвы, на котором нашлось приличное количество скриптов, довольно скудный дизайн, два мыльника (один из которых, по моим подозрениям, был админским и имел такой вид: benny@serv.gov). Весь движок работал на php, но это меня как-то совсем не радовало. Далее по стандарту я врубил nmap на удаленном шелле и скомандовал ему сканить 21, 22, 23, 25, 110, 80, 3306 порты с флагом –O и –sV, что указывало на необходимость определения версий операционной системы и сетевых служб. Через некоторое время задыхающийся nmap рассказал мне кое-что о сервере. Например, что на 21 порту висел ProFTPD 1.2.1, Sendmail грелся на 25, но для его версии сплоита у меня не оказалось, а искать в паблике я не тал, так как это бесполезно. На 80 по дефолту висел Apache, на 3306 был mysql одной из последних веток. После анализа полученной мною информации было решено забить (пока) на атаку сервисов и подойти к серверу с другой стороны.

[another side]

На следующее утро мне ничего не оставалось, как вплотную заняться исследованием web и поискать удачу там. Я зашел на сайт и еще раз немного осмотрелся на нем. Побегав по ссылкам, я не нашел ни ipb, ни дырку-phpBB, и никакого паблик ПО там тоже не стояло, а это еще раз говорило о том, что сервер хорошо защищен. На серверах подобного типа обычно находится огромное количество различных директорий и файлов, в нахождении которых мне помог мой давно излюбленный сканер — Nikto. Теперь мне нужно было натравить сканер на свою жертву, что я и сделал. Через 5 минут я уже лицезрел результат на экране своего монитора. К сожалению, большого обилия папок я не нашел, но все же сканер показал мне кое-что:

http://serv.gov/a/admin.php [200ok]

http://serv.gov/users/pub/ [200ok]

Первый линк вел прямо в админку, о которой я давно уже подозревал, а второй меня никуда не привел по понятной причине правильно выставленных прав. Проверив, правильно ли ведет меня первая ссылка на админку, я начал ковырять сервер дальше. Мне встретилось еще много скриптов, но после их проверки ожидаемого результата я не получил. Я уже собирался сваливать оттуда, как вдруг на одной странице я наткнулся на небольшую формочку для каких-то политических дебатов в народе — БАЗАР. У формы имелось два поля: имя и текст сообщения. У меня сразу возникла мысль проверить эту форму и ее поля на разные фильтры. Я не ошибся. Для начала я попробовал вставить стандартную java-вставку такого вида — <script>alert(‘xss’);</script>, но мне дали забористого пинка. Тогда я решил пробить доступные тэги, которые используются для добавления сообщений. Под мой злобный взгляд попали два доступных тэга — [img] и [color], второй из которых мог помочь мне в дальнейшем :). Итак, давай чуть подробнее разберемся в дальнейших моих действиях. Мне было необходимо составить xss-эксплойт, после натравить его на кукисы админа, а уже потом попробовать цепануть их с помощью обычного снифера. После 10-минутного тестирования вражеский java-код был составлен. Расскажу тебе об этом в деталях. Сначала я попробовал оставить пост такого вида [color=”red”]Test[/color]. Мессага "Test" удачно отобразилась в красных цветах. Далее я переработал ее уже в такую конструкцию, которая выкидывала простой алерт "XSS":

Содержание  Вперед на стр. 086-080-2
ttfb: 6.7391395568848 ms