PHP скрипты, MySQL, Java, документация Unix, Linux, FreeBSD, Apache, Оптимизация сайта
Библиотека компании MNWhost.RU

Web-development
Shell
PHP
Perl
Java
ASP
VB Script
HTML
XML
WML
Cookies

Документация
FreeBSD
Linux
Apache
Язык UML
Поисковые системы
Модель OSI
CGI
Технология VPN
ADSL
SSI
DNS
Протоколы
Шифрование дисков
Обжим витой пары
Маски сети/подсети

Хостинг MNW.RU
Услуги
Хостинг
Регистрация доменов
Размещение серверов
Аренда серверов


Hosted by MNW

Яндекс цитирования

Подбор пароля по словарю
Недавно я наткнулся в инете на задачку подбора паролей. Будем считать, что мы забыли свой пароль, который вытащили из файла .htpasswd и который зашифрован по алгоритму MD5. Опять же будем считать, что мы, как и большинство пользователей имели осмысленный пароль в виде какого-нибудь английского слова. Попробуем-ка его подобрать по словарю. Стандартный Linux словарь (linux.words) можно скачать здесь.

<?
function pass_dict ($hash)
{
 
//вычисляем начальное время, необходимое для расчета общего времени выполнения скрипта
 
$start_time microtime();
 
$start_array explode(" ",$start_time);
 
$start_time $start_array[1] + $start_array[0];

 
//открываем файл словаря из стандартного дистрибутива линукса
 
$f fopen("linux.words","r") or die("ошибка");
 while (!
feof($f))
 {
  
$str strtolower(fgets($f));
  
//удаляем лишние пробелы и символы конца строки
  
$str trim($str);
  
$strmd5 md5($str);
  if (
$strmd5 == $hash)
   
$pass $str;

  if (isset(
$pass))
   {
    echo 
"password = ".$pass;
    
$end_time microtime();
    
$end_array explode(" ",$end_time);
    
$end_time $end_array[1] + $end_array[0];
    
$time $end_time $start_time;
    echo 
"<br><center>Найдено за $time секунд!</center>";
    
fclose($f);
    return;
   }
  }

 
$end_time microtime();
 
$end_array explode(" ",$end_time);
 
$end_time $end_array[1] + $end_array[0];
 
$time $end_time $start_time;
 echo 
"<br><center>Не найдено за $time секунд!</center>";
 
fclose($f);
 return;
}
pass_dict("e206a54e97690cce50cc872dd70ee896");
?>


Автор: Юферев Денис.
размещение сервера