Анти][акер. Взлом попсового портала по хеку.

У всего есть начало так и в этом простейшем взломе было начало. После рабочего дня, отдохнув, я начал бродить по просторам Интернета. Обычно, перед тем как лечь спать я проверяю попсовые ресурсы на sql injection. Так случилось и с http://wiki.xakep.ru/Интро.

У всего есть начало так и в этом простейшем взломе было начало. После рабочего дня, отдохнув, я начал бродить по просторам Интернета. Обычно, перед тем как лечь спать я проверяю попсовые ресурсы на sql injection. Так случилось и с http://wiki.xakep.ru/

Первый баг.

Решил зарегистрироваться, но тут вылетела ошибка с содержанием того, что выбранный smtp-сервер не работает. Дело в том что меня это не разочаровало, наоборот была вероятность, что баги были ещё. Для проверки я взял акаунт John Frost-a и зашол под ним, после этого залез на форум, на проверку интеграции. Да, действительно, интеграция была, это не могло не радовать. хотя мне и не было никакого дела до пользователей, я лишь хотел найти уязвимый скрипт и выполнять запросы в базе данных. После небольшого серфинга по сайту я нашел уязвимый скрипт Pages.aspx
в него подставлялся параметр http://wiki.xakep.ru/Pages.aspx?Cat=[название категории] естественно я подставил кавычку:
http://wiki.xakep.ru/Pages.aspx?Cat=\’
скрипт ругался на то, что нет закрывающей кавычки:

Анти][акер. Взлом попсового портала по хеку.

Из всего этого я пришел к построению вот такого запроса:
select * from [table] where Cat=\'[подстовляемое значение из параметра]\’ [ \’ ]
Тем самым скрипт ругался что кавычка не закрыта. Но мой небольшой опыт работы с бд мне очень даже помог, и я изменил запрос так:
http://wiki.xakep.ru/Pages.aspx?Cat=\’;—

Я закрыл кавычку после точки запятой, закрыл текущий запрос и двумя чертами закоментировал все что было после, на случай того, что запрос мог иметь продолжение.. Потом начал перебирать поля, на что ушло около 2-3 часов, появилось раздражение, но это лишь было делом времени. Для проверки решил сделать апдейт таблицы category, естественно я проверил калонку name, но ошибся — после адпейта категория просто отказалась быть рабочей. Т.е категория «взлом», в которой, якобы, должно быть 56 страниц, при переходе на нее выдавала пустоту. В дальнейшем я понял, что там что то вроде id, хотя так до сих пор и не знаю. После чего проверил поиск, он просто вылетел с багой, я мог предположить что это как раз из за моего апдейта(да простят меня 0дмины сайта, курящие шалфей (ууу! Мы тоже с тобой курим шалфейчик… Прим. Ред)). Потом поигравшись с запросом я мог выполнить как insert,update, так и drop. Я мог уходить с сайта со спокойной душой, т.к. не задавался целью заливкой шелла, хотя мог. да единственная проблема — это лишь названия колонок. Сейчас вспомнил, что мог ведь я сделать апдейт таблицы user тем самым сменить пасс админа на свой, но да ладно, ведь косячить я там нехотел и так запорол немало (да простят меня ещё раз 0дмины сайта курящие шалфей). Для теста я поигрался с калонкой published у таблицы page — всё работало на ура.

Зе энд.

После этого я написал «одминам» сайта, которые в течении двух дней, наконец-то отреагировали на баги. Потом я вспомнил хак, который мы сделали с John Frost-ом, сайт был написан «программерами» Game Land и понял что руки у них растут не из того места откуда должны. Я уверен что касяков там полно, без них ничего не бывает. Мораль такова — какой бы небыл сайт и сколько бы в него бабла не вложили, всё зависит от честности кодеров которые не забивают на безопасность, а честно отрабатывают свой хлеб.

Благодарности : John Frost, dot.

Материалы к статье:
Видос : [attachment=10]
Файлик к видосу : [attachment=11]