[ Взлом паролей Unix систем с помощью JTR. Инструкция по эксплуатации. ]
Date: 24.08.02
Эта статья написана для тех, кто столкнулся с паролями Unix систем, но еще стоит
на пороге выбора программы для расшифровки паролей для этой системы.
Я думаю, что ни для кого не будет секретом, что наиболее продвинутой программой
для расшифровки Unix паррлей является John the Ripper. О нем то и пойдет речь в этой
статье.
Многие люди задают вопрос, как им пользоваться. Как правило это происходит потому, что
знания их в английском оставляют желать лучшего, а именно на нем и написана ридми.
KodsWeb и здесь приходит вам на помощь. Итак приступим...
Чем взламывают пароли
=====================
JTR используется для восстановления паролей Unix, Windows95, NT, DOS.
Но так уж закрепилось со временем, что эту программу используют в основном для взлома
Unix-пассвордов.
Для восстановления NT/2000 паролей, как правило, используют L0phtCrack.
Для расшифровки .PWL в винде 95/98 используют PWL-Tool. Ну так уж заведено.
И ничего с этим не поделаешь...
Шифрация паролей в Unix like systems.
=====================================
В Линуксе пароли шифруются в алгоритме DES. Когда вы поставите несколько паролей в JTR на декодирование, то
увидите следующее:
W:\john-16\run>john passwd.txt
Loaded 6 passwords with 6 different salts (Standard DES [24/32 4K])
Здесь появляется такая фишка salt - это две любые буквы, которые являются ключем к паролю, то есть
salt и используется для шифрации паролей.
В FreeBSD используется более стойкий алгоритм шифрования MD5.
В Open BSD используется алгоритм Blowfish.
Где хранятся пароли
===================
Как правило, пароли хранятся вот в таких местах:
/etc/passwd
/etc/shadow
/etc/shadow.old
/etc/passwd.tmp
В Free BSD пароли хранятся в файле /etc/master.passwd
Для того, чтобы узнать, где именно они хранятся, делаем листинг директории, там сразу станет ясно.
Пароли также могут хранится в .passwd
Открываем этот файлик и получаем пароль.
root:Z83Pl1XBw/QcI:0:0:System Administrator:/root:/bin/csh
migel:4xCSQ5k1xGHdk:66:1:Migel Rodriges, 3-rd Avenue:/home/migel:/bin/sh
Однако пароль может находиться там и в shadow режиме.
Тогда видим следующее:
root:*:0:0:System Administrator:/root:/bin/csh
rfindd:*:66:1:Rfind Daemon and Fsdump:/var/rfindd:/bin/sh
Если получили что-то подобное, то смело бросайте это, потому как паролей здесь нет.
Разберем пароль по частям
=========================
migel:4xCSQ5k1xGHdk:66:1:Migel Rodriges, 3-rd Avenue:/home/migel:/bin/sh
~ migel - имя пользователя.
~ 4xCSQ5k1xGHdk - пароль, зашифрованный в DES.
~ 66:1 - номер пользователя в системе : номер рабочей группы (у root всегда 0:0).
~ Migel Rodriges, 3-rd Avenue - информация о пользователе
~ /home/migel - домашний каталог пользователя
~ /bin/sh - шелл
Триксы
======
На файл с паролями, зашифрованными в DES, будь то shadow или passwd, права установлены
как r-------- : права на чтеное есть только у root'а,
или r--r----- : права на чтеное есть у рута и зарегистрированных пользователей.
пользователей. Следовательно, через htmlscript их вряд ли
удастся просмотреть. Конечно иногда везет и получается просмотреть все их содержимое.
Использование John The Ripper
=============================
А теперь перейдем непосредственно к взлому паролей с использованием JTR.
Хочу сразу предупредить, что это еще не факт, что вы сможете расшифровать пароли.
Все будет зависеть от самого пароля, то есть из каких символов он составлен и от количества этих символов.
Приступим...
Засовываем пароли в текстовой файл и обзываем его как passwd.txt, затем кладем его
в папку john-16/run/ (я привожу пример для той версии Джона, которую можно
слить с нашего сайта).
Также необходимо соблюдать правильную конструкцию размещения паролей в файл.
Она должна выглядеть следующим образом:
root:Z83Pl1XBw/QcI:0:0:System Administrator:/root:/bin/csh
migel:4xCSQ5k1xGHdk:66:1:Migel Rodriges, 3-rd Avenue:/home/migel:/bin/sh
...
...
Затем, если вы работаете из под винды, то запускаем DOS Prompt и заходим в папку
john-16/run/, запускаем john.exe (у меня полный путь выглядел следуюшим образом
cd W:\john-16\run\john.exe).
Далее нам предлагают небольшой help, но сейчас он нам не нужен.
Все, мы в программе.
Наиболее эффективные режимы перебора паролей.
=============================================
1. Команда john passwd.txt
После введения данной команды Джон начнет перебирать пароли брутфорсом. Это значит,
что JTR будет сам генерировать пароли и подставлять их.
Метод не особо эффективный, потому как может занять много времени, если вообще
вы увидите в guesses выражение отличние от нуля.
Кроме того, многое будет зависеть от мощности вашего компьютера. Так, имея за плечами
навороченную машину, можно побаловаться и брутфорсом.
2. john -w:wordlist passwd.txt
john -w:wordlist -rules passwd.txt
(-rules обозначает включение правил синтаксиса для словаря).
После введения этой команды Джон начнет перебирать пароли по словарю.
Этот метод намного эффективнее первого. И пароли здесь будут подбираться намного быстрее.
Я бы даже сказал, что это наиболее эффективный метод из всех.
3. john -single passwd.txt
Одиночный режим перебора паролей. Работает намного быстрее, чем перебор по словарю, однако
расчитан на слабые пароли.
4. john -i passwd
Режим приращения (incremental mode).
Судя по тому, что написано в readme, это самый сильный способ переборки паролей.
Для подстановки использует 95 символов.
5. john -i:alpha passwd
Если пароль состоит только из букв, то поможет этот метод, так как JTR будет перебирать
26 символов от "a" до "z".
Дополнительные опции в режимах
==============================
Режимами являются, к примеру -w (словарь), -i(инкремент), -single(одиночка).
1. john -w:wordlist -rules -users:0 passwd.txt
Будет подбирать пароль для конкретного пользователя с использованием словаря и правил.
Мы указали :0 - значит будет вестись перебор для пользователя root :-)
Для выбора пользователя необходимо указать имя пользователя в системе -UID после ":".
2. john -w:wordlist -rules -shells:sh,csh,tcsh,bash passwd.txt
Будет осуществлять перебор паролей только тех пользователей, которые имеют шелл.
3. john -single passwd.txt passwd1.txt passwd2.txt
Ставим на расшифровку сразу несколько файлов, зашифрованных в DES.
Данный способ работает со всеми режимами и опциями. Для этого нужно
просто в конце каждый команды сделать перечисление файлов, которые необходимо расшифровать, как
это сделано в этом примере.
4. unshadow passwd shadow
Данная команды используется для восстановления файла с паролями в shadow.
Не трудно догадаться, что для использования данной команды нужен shadow-файл.
5. john -show passwd.txt
Наконец, самое приятное. Кульминация нашей работы с JTR - команда просмотра подобранных паролей.
На самом деле в readme вы можете прочитать еще кучу способов перебора паролей. Здесь
указаны основные, но именно те, которые наиболее часто всеми используются и действительно
эффективны.
Теперь вы умеете взламывать пароли от Unix.
А я пойду подумаю, о чем вам еще рассказать.
Желаю вам, чтобы ваш -show всегда был полон.
{dr}{NerVe}     [KODSWEB]
!!! Статья является собственностью команды KODSWEB !!!
!!! Любое распространение без нашего разрешения строго запрешено !!!