Х-конкурс

Игнатов Олег aka BLooDeX

Хакер, номер #076, стр. 076-077-1

(bloodex@real.xakep.ru)

Если ты долго ломал голову, но так и не сумел пройти наш прошлый конкурс, расскажу, как это нужно было делать.

Этап первый. Заходишь в сутенер-интерфейс по адресу view.php?file=admin. Тут нужно было догадаться, что view.php инклудит файл admin.inc. Так как inc – не php, то он не прогоняется через интерпретатор, и можно без проблем прочесть его исходники. Если ты неплохо разбираешься в php, при наличии исходников ты сообразишь, что, введя логин guest и пасс guest, попадешь в сервис для сутенеров-гостей по адресу view.php?file=adm. Так как adm ничем не хуже admin, то исходники adm.inc тоже читаются без проблем. В полученных исходниках сидит злостная бага, при помощи которой, обратившись по адресу view.php?file=adm&login=&sid=, ты попадаешь в полноценный сутенер-интерфейс, в котором можно получить инфу о любой девочке.

Этап второй. Здесь нужно сделать простую sql-инъекцию: поле с паролем оставляешь незаполненным, а в качестве логина вводишь blablabla’ or login=’_логин_чела_аккаунт_которого_нужно_спереть’/*. И таким образом заходишь под этим самым логином. Меняешь e-mail на свой. Теперь, если ты накупишь таблеток на сумму большую, чем у тебя есть на счету, то тебе на мыло вышлется письмо, начинающееся со слов «Уважаемый _логин_». Если поменять в куках переменную sid на blablabla’ UNION SELECT pass, ‘0’, ‘0’ FROM users WHERE login = ‘_логин_’/* , то тебе на мыло придет письмо, начинающееся со слов «Уважаемый _пароль_».

Этап третий. В прошивке робошлюхи присутствует integer-переполнение, через которое ты можешь сделать свой долг перед ней равным нулю. Также можно переполнить строку, затерев переменную внутреннего денежного баланса, и сделать его больше $1000. В этом случае она пойдет домой к мафии на смазку.

Четвертый этап заключается в следующем. Заводишь два аккаунта и логинишься под одним из них. Будем называть sid’ом название каталога, в котором находятся скрипты для управления личным счетом. Sid определяет аккаунт. Если ввести в инфе о пользователях внешнюю переменную razdel, равную clients/_sid_, то пхп выдаст ошибку, в которой говорится о том, что info.txt не является файлом. Так ты узнаешь о существовании файла info.txt, в котором записано следующее: «_sid_;_имя_;_фамилия_;_номер_счета_». Обрати внимание на то, что все эти данные разделены символами «;». Чтобы получить на счету $10000, делаешь покупки на эту сумму и таким образом получаешь задолженность в -$10000. Далее меняешь номер счета для аккаунта на счет второго заведенного тобой аккаунта, изменив свою фамилию, допустим, на Пупкин;_номер_счета_второго_аккаунта_. Теперь удаляешь все покупки из корзины и видишь, что в балансе счета сверкает циферка 10000.

Ну а теперь о новом конкурсе.

Если ты регулярно участвуешь в наших хакерских соревнованиях, то наверняка заметил, что все ломаемые скрипты были написаны на PHP. Но ты же понимаешь, что одним PHP настоящему хакеру не обойтись, ему еще нужно знать такой полезный скриптовый язык, как Perl. Бороздя бескрайние просторы Сети, ты можешь увидеть, что Perl используется в современном мире не так уж редко. Но прежде чем ломать такие крупные проекты, работающие на перловке, как mail.ru, стоит проверить, сможешь ли ты похаксорить действительно бажный perl-сайт, такой как www.padonak.ru. Дерзай! Будешь первым – возьмешь приз.

Содержание
ttfb: 4.1711330413818 ms