Страница: 1 |
|
Вопрос: Статья: Hybrid Rainbow Tables
|
Добавлено: 29.08.07 03:49
|
|
Автор вопроса: ZagZag | ICQ: 295002202
|
Предлагаю Вам ознакомиться, возможно, с новым для вас способом подбора паролей в хешам.
Возможно вы слышали о радужных таблицах. Так я объясню в чем разница между обычными Rainbow Tables (RT) и Hybrid Rainbow Tables (HRT).
Обычные радужные таблицы имеют огромное преимушество перед обычным брутом паролей.
Заключается оно в том, что поиск пароля по ним занимает гораздо меньше времени, чем брут.
Грубо говоря, производится не перебор значений пароля, а поиск хеша в оперативной памяти.
Этот процесс занимает несколько секунд или минут. (+ Время на загрузку RT в RAM)
На скорость оказывает влияние размер цепочки (см. ниже) и производительность ПК (Основная нагрузка на: RAM, HDD и CPU)
Но прежде радужные таблицы должны быть предвычеслены.
Этот процесс занимает довольно долгое время.
Все зависит от многих параметров:
- Минимальной и Максимальной длин возможных паролей.
- Используемого "алфавита" (Набор возможных символов в пароле)
- Размера "цепочки". (В файл таблицы сохраняются не все хеши, т.к. их количество очень велико)
Размер цепочки влияет на размер таблицы, скорость ее генерации и скорость подбора паролей.
- Количество таблиц.
Количество таблиц влияет на процент успешного подбора пароля.
Подробности предлагаю искать здесь: http://www.antsight.com/zsl/rainbowcrack/ (ENG)
А теперь о преимуществе HRT над RT
Если при генерации RT пароли перебираются по алгоритму обычного брута... Хотя не, не обычного, т.к. при генерации таблиц с одинаковыми параметрами на 2х ПК их содержимое будет сильно отличаться. И вообще это темная тема, в нее я вдаваться не буду =)
Так вот: RT генерится при помощи перебора всевозможных комбинаций символов (удовлетворяющих алфавиту и диапазону размеров), а HRT генерится из словаря (!) или нескольких словарей.
Сразу скажу что при указании нескольких словарей, следует учитывать порядок их перечисления. Например, если на входе имеется 2 словаря 1 = {1,2}; 2 = {3,4}, то таблица будет содержать комбинации паролей {1,13,14,2,23,24,3,4}, а если поменять словари местами: 2 = {3,4}; 1 = {1,2}, то в таблице будут {3,31,32,4,41,42,1,2}
То есть HRT является гибридом словаря и радужной таблицы! И от этого берет плюсы обоих методов: скорость перебора от RT и релевантность паролей от словарей.
Еще немного поясню зачем в HRT можно указать несколько словарей, и почему их элементы перемножаются:
Этот метод дает вам возможность генерировать таблицы с высокой релевантностью паролей.
Например можно создать 2 словарика, перывый будет содержать имена людей, а второй года с 1970 по 2030.
В итоге получится таблица, содержащая все имена, все года и все комбинации ИмяГод и ГодИмя.
У такой таблички будет релевантность гораздо больше чем у аналогичной по размерам обычной RT.
Еще немного о перспективности HRT:
Кроме высокого быстродействия и релевантности, HRT обладают еще одним плюсом - размером:
Пример #2. "Частые пароли".
Аналогично, можно предвычислять не только цифровые пароли, но и составленные из любых символов.
Здесь мы выбирали 14 000 самых частоиспользуемых комбинаций до четырех символов на исходной коллекции из 150 тысяч реальных паролей.
Этот словарик мы возводим в третью степень. 14000^3 = 2 744 000 000 000.
Для сохранения таблиц потребуется около 16Гб места на диске, процесс генерации (для MD5) требует чуть меньше месяца процессорного времени. А вот так выглядят параметеры генератора:
Table_0_0: длина цепочки = 5000, фактор выполнения = 10%, номер таблицы = 0
Table_0_1: длина цепочки = 5000, фактор выполнения = 10%, номер таблицы = 0
Table_1_0: длина цепочки = 5000, фактор выполнения = 10%, номер таблицы = 1
Table_1_1: длина цепочки = 5000, фактор выполнения = 10%, номер таблицы = 1
...
Table_9_0: длина цепочки = 5000, фактор выполнения = 10%, номер таблицы = 9
Table_9_1: длина цепочки = 5000, фактор выполнения = 10%, номер таблицы = 9
Криптоанализ по полученным 20 таблицам (каждая на 830мб) длится до 10 минут на одно хеш-значение (без учета времени загрузки таблиц с диска).
Однако, по проведенным исследованиям, выяснилось, что таких таблиц достаточно для восстановления примерно 85% паролей с любого реального форума (в среднем).
Максимальная длина восстанавливаемого пароля по таким таблицам составляет 12 символов (3 четырехсимвольные комбинации), что куда выше, чем 8 символов, на которых остановились классические rainbow таблицы.
16Гб на 85% для 12 символьных паролей?! А сколько места потребуется для обычных RT? Лень считать? А я скажу =)
Тип: md5
Charset: loweralpha
Min: 1
Max: 12
Chain len: 5000
Chain count: 40000000
Кол-во таблиц: 1000000
Disk space: больше 596046 ГИГАБАЙТ!
И генериться это будет... 4715.88 лет =)
Поиск одного пароля займет 107 дней =)
При этом процент нахождения пароля составит: 86.67%
Вобщем, HRT изначально расчитаны на подбор паролей, придуманных человеком. Таких большинство, кстати.
HYBRID RAINBOW: Введение в новый метод восстановления паролей
http://www.the-udc.com/rus/index.html
Подробное описание HRT, описание работы с программой UDC (Universal Distributed Cracker), статистика, сравнение с обычными RT и т.п.
"Копилка хешей"
http://the-udc.com/smf/index.php?board=13.0
Вы только посмотрите какие пароли ломают люди на этом форуме!
Девяти-, десятизнаки? Легко! Русские? Проще некуда!
Шестнадцатизнаки? =D
Да с обычными RT у вас на такие пароли никакого жестяка не хватит, да еще и взлом будет проходить не один день.
Вобщем, я надеюсь что заинтересовал вас =D
Применять ли данную технологию в мирных (восстановление) или не очень мирных целях - решать вам
Поскольку UDC - платная, сравним ее с не менее платной PasswordsPro.
Лицензия на PasswordsPro немногим ниже, но посмотрите тему "MD5: UDC vs PasswordsPro" (http://the-udc.com/smf/index.php?topic=43.0) и увидете что UDC рулит даже на брутовой атаке.
Темболее в UDC отсутствует ряд недостатков PasswordsPro, а именно:
- UDC умеет работать с многоядерными процессорами
- В UDC я наконец-то нашел реализацию настоящей распределенной сети. Т.е, можо по сети объединить несколько UDC для брута пароля распределенно (Скорость возрастает многократно)
А еще UDC - единственная кто поддерживает HRT.
PS
Смотрите, это моя первая статья вообще.
Написал под впечатлениями от этой программы, а это что-нибудь да значит =)
Сильно уж не критикуйте, я просто хотел сравнить RT и HRT.
По-моему HRT - рулят =)
(с) ZagZag, 2007
Ответить
|
Номер ответа: 2 Автор ответа: ZagZag
ICQ: 295002202
Вопросов: 87 Ответов: 1684
|
Профиль | | #2
|
Добавлено: 31.08.07 04:26
|
Сразу скажу что при указании нескольких словарей, следует учитывать порядок их перечисления. Например, если на входе имеется 2 словаря 1 = {1,2}; 2 = {3,4}, то таблица будет содержать комбинации паролей {1,13,14,2,23,24,3,4}, а если поменять словари местами: 2 = {3,4}; 1 = {1,2}, то в таблице будут {3,31,32,4,41,42,1,2}
Оказывается, результат будет иным:
{1,2} * {3,4} = {13,14,23,24}
{3,4} * {1,2} = {31,32,41,42}
Ответить
|
Страница: 1 |
Поиск по форуму