[ Взлом паролей Windows ]
В этой статье мы по говорим о брутфорсе паролей для ОС Windows. Для начала
двай разберемся что же представляет собой система хранения паролей в твоей
любимой ОСи. Речь пойдет в первую очередь о серверных операционках, таких
как Windows 2000 Server и Windows 2003 Server. Так же предпологается что
ты не имеешь физического доступа к серверу, и никаких прав кроме nobody, а
соответственно о том чтобы перезагрузить сервак, а тем паче загрузится с
дискеты и речи быть не может.
Информация о учетных записях и хэши паролей (если не знаешь что такое хэш -
гугль тебе в помощь) храниться в фале %SystemRoot%\System32\Config\sam.
Кроме всего прочего нам еще понадобиться файл system из тойже директории.
Начиная с 2000-й винды, в нее по дефолту включен алгоритм шифрования
системным ключем SYSKEY.
Теперь давай разберемся что все это такое:
SAM - (Security Account Manager) этот файл, есть ни что иное, как ключь
реестра HKEY_LOCAL_MACHINE\SAM. В нем находятся имена
локальных пользователей данного компьютера и их зашифрованные
пароли (хэши).
SYSKEY - ключ используемый для дополнительного шифрования. В ОС начиная
с 2000-й он используется. Ключ храниться в файле system.
В файле SAM, как уже упоминалось выше, хранятся хэши паролей пользователей.
Причем хэш там не один, а целых два. Так называемые LM-хэш и NT-хэш.
ОС может использовать для аутентификации оба хэша одновременно. Но т.к.
LM-хэш давно уже устарел, и не соответствует требованиям безопасности, система
может обходиться и без него. На большинстве встреченых мной машин, для учетной
записи "Administrator" использовался ТОЛЬКО NT-хэш. А все именно из-за
ненадежности метода шифрования пременяемого для его получения. Чтобы
разобраться что к чему, давай рассмотрим этот самый алгоритм:
1. Пароль усекается\дополняется до 14-ти символов.
2. Прееобразуется в верхний регистр.
3. Разбивается на две части по 7 символов.
4. Каждая часть ОТДЕЛЬНО шифруется алгоритмом DES.
5. Итоговая 16-ти байтная строка и есть LM-хэш.
А теперь смотри недостатки такого метода:
Во-первых: мы можем сразу определить, содержит ли пароль более 7-ми символов
или нет. Это согласись сдорово сужает круг поиска.
Во-вторых: весь пароль преобразован в верхний регистр, что автоматически
исключает символы нижнего регистра из нашего словаря =).
В итоге на подбор LM-хэша у нас уйдет не более 5-ти часов. А если заюзаешь
машинку помощнее, то может и за час управишся.
С NT-хэшем, несколько сложнее. Он позволяет задать пароль до 128-ми символов,
что делает брут практически не реальным. Только вот покажи мне такого админа
у которого пароль 128 символов! Этож каким объемом черепной коробки надо
обладать, чтоб такой запомнить!
Алгоритм формирования NT-хэша следующий:
1. Пароль преобразуется в UNICODE.
2. На его основе генерится MD4-хэш.
3. Он шифруется алгоритмом DES.
4. Полученая строка и есть NT-хэш.
Тут конечно пространства для маневра значительно меньше, но можно сбрутить
и NT-хэш, правда времени на это уйдет чутьли не в тысячу раз больше. Но для
тебя я думаю это не помеха ;)
Теперь поговорим о практической стороне дела. Утащить фал
%SystemRoot%\System32\Config\sam система тебе ни когда не даст.
Если конечно ты не оглушишь ее предварительно ударом ресета по голове =).
Но есть способ проще. Существует резервная копия этого файла
%SystemRoot%\repair\sam (там же возми и файл system).
Утянуть его от туда не впример легче.
И так, оба файла у тебя на харде, и ты в нетерпении потираешь руки: "Как же
это дело сбрутить?" Быстро дуй на www.lcpsoft.com
и качай програмку LCP, на момент написания статьи последней версией была 5.04,
но тебе может повезет, и ты скачаешь что-то новое.
Пользоваться програмой до смешного просто:
1. Запускаем (куда же без этого!?).
2. Жмем в меню Импорт -> Файл SAM.
3. Выбираем скаченый файлик sam и
файл системного ключа system.
4. Щелкаем "ОК" и видим в основном
окне список юзеров системы с
хэшами их паролей.
5. Подключаем при желании словари.
6. Выбираем тип брута (по LM-хэшу
или NT-хэшу).
7. Жмем кнопочку пуск.
Теперь осталось набраться терпения и ждать, ждать, ждать.... (короткие гудки)
=)
(c) Cobalt. www.gfs-team.ru