Форумы коллекционируем нехешированные пароли

Discussion in 'Уязвимости CMS/форумов' started by Talisman, 5 Nov 2006.

  1. Talisman

    Talisman Elder - Старейшина

    Joined:
    22 Apr 2006
    Messages:
    400
    Likes Received:
    151
    Reputations:
    80
    В догонку к http://www.forum.antichat.ru/showthread.php?p=217820#post217820 - т.к. стало много челов в аську стучаться, расскажу поподробнее.
    Идея каржи нехешированных паролей заключается во встройке нашего кода в целевую систему. Движки, которые я тестил разбились на 2 категории: 1, в которую входит phpBB и еще всякие простенькие форумы и цмски, в ней пароли передаются в незашифрованном виде, а во вторую группу вошли DataLifeEngine и мощные форумы наподобии VBulletin - в ней при поддержки джаваскриптов браузером на сервер передаются уже зашифрованные пароли.
    В первом случае все проще пареной репы - находим нужный нам кусок кода, и допишим его своим - можно отсылать незашифрованные пароли вместе с учеткой и инфой о юзере (емаил, ася, аим...) на мыло, на веб-гейт, или же сохранять в базу данных. Итак, разберем инклудинг в первую группу приложений:

    Разбираем инклудинг в форуме phpBB:
    качаем последнюю версию (2.0.21), начинаем ковырять:
    в файле login.php находим функцию, в тело которой нужно дописать наш код:
    PHP:
    if( md5($password) == $row['user_password'] && $row['user_active'] )
    тут, как видно, никакого мд5 на стороне клиента не происходит, а жаль)

    Во второй группе возникают некоторые осложнения - нужно как то вырубить мд5 хеширование на стороне пользователя - либо править "отрубать" джаву у клиента, либо вырубать сами хеширующие скрипты. Мы пойдем первым путем, просто удалим хеширующие скрипты на примере воблы:
    Разбираем инклудинг в форуме VBulletin 3.6.2:
    в 38 строчке файла login.php происходит инклудинг нужного нам файла:
    PHP:
    require_once(DIR '/includes/functions_login.php');
    нужная оттуда функция проверки верности входа начинается с 133 строчки:
    PHP:
    function verify_authentication($username$password$md5password$md5password_utf$cookieuser$send_cookies)
    142-144 строчки говорят нам о том, чт оесть и мд5 от пароля:
    PHP:
                $vbulletin->userinfo['password'] != iif($password AND !$md5passwordmd5(md5($password) . $vbulletin->userinfo['salt']), '') AND
    $vbulletin->userinfo['password'] != iif($md5passwordmd5($md5password $vbulletin->userinfo['salt']), '') AND
    $vbulletin->userinfo['password'] != iif($md5password_utfmd5($md5password_utf $vbulletin->userinfo['salt']), '')
    да и названия переменных идущих к функции говорят тоже... нам нужны незахешированные пароли, поэтому посмотрим сорс страницы аутентификации в булке, видим инклудинг жава-мд5-кодера:
    HTML:
    <script type="text/javascript" src="clientscript/vbulletin_md5.js?v=362"></script>
    да... редактировать влом) поэтому просто "отрубим" жабу у юзера:
    HTML:
            <input type="hidden" name="vb_login_md5password" />
            <input type="hidden" name="vb_login_md5password_utf" />
    т.е. залезим в шаблон и удалим эти строки, или же просто удалим сами жабаскрипты )))
    ладно, вернемся к пшп коду логининга:
    нам нужно добавить еще 1 базу где будут храниться логины/пароли, или же просто добавить еще 1 поле к базе юзеров, что черевато последствиями - апдейт форума врятли пройдет успешно (
    короч, идею разабрали, переходим к следующему форуму.

    А что нам дают незашифрованные пароли, я надеюсь, вы сами понимаете, и не будете использовать это на практике, т.к. это не совсем законно)
     
    2 people like this.
  2. Elekt

    Elekt Banned

    Joined:
    5 Dec 2005
    Messages:
    944
    Likes Received:
    427
    Reputations:
    508
    полезная темка, но нихрена не раскрыта.

    есть потребность расковырять популярные двиги и составить обзорчик, в каком форуме чем что и как хешируется. + содержится ли пасс в куках. Вот.

    добровольцы есть? =)
    "...песчаный карьер - два человека!..."
     
    1 person likes this.
  3. Koller

    Koller Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    402
    Likes Received:
    246
    Reputations:
    302
    Присоединяюсь...