Rainbowcrack
Содержание:
- Введение
- Введение
- Введение
- Введение
- Применение
- Как изменить MAC адрес сетевой платы в Windows 10
- Отчёт: география и посещаемость сайта
- Описание алгоритма[править | править код]
- Анализ поисковых запросов сайта
- Bios и разгон
- HTML верстка и анализ содержания сайта
- Характеристики
- Причины ошибок в файле Rtgen.dll
- Сканеры сетей
- Установка Kali Linux
- Основная проблема
- История
- RainbowCrack Package Description
Введение
В то время как большинство проектов, связанных с компьютерной безопасностью, тратит много времени для взлома одного пароля шифровальных систем (простой перебор), RainbowCrack за время, сравнимое с временем взлома одного хэша простым перебором, получает таблицы хэшей, по которым с очень высокой вероятностью можно в тысячи раз быстрее взломать любой хэш из проверенного диапазона.
Обычно хэши и алгоритм хэширования известны всем, но обратное преобразование слишком сложно. На этом основывается безопасность многих систем.
Обладая отсортированной таблицей хэшей и соответствующей таблицей паролей, можно получить систему, позволяющую с помощью быстрого бинарного поиска по всем таблицам выполнить обратное преобразование хэша в пароль.
Стандартный клиент поддерживает следующие алгоритмы: LM, NTLM, MD5, SHA1, MYSQLSHA1, HALFLMCHALL, NTLMCHALL, ORACLE-SYSTEM и MD5-HALF, другие алгоритмы могут быть подключены в виде плагинов.
Введение
В то время как большинство проектов, связанных с компьютерной безопасностью, тратит много времени для взлома одного пароля шифровальных систем (простой перебор), RainbowCrack за время, сравнимое с временем взлома одного хэша простым перебором, получает таблицы хэшей, по которым с очень высокой вероятностью можно в тысячи раз быстрее взломать любой хэш из проверенного диапазона.
Обычно хэши и алгоритм хэширования известны всем, но обратное преобразование слишком сложно. На этом основывается безопасность многих систем.
Обладая отсортированной таблицей хэшей и соответствующей таблицей паролей, можно получить систему, позволяющую с помощью быстрого бинарного поиска по всем таблицам выполнить обратное преобразование хэша в пароль.
Стандартный клиент поддерживает следующие алгоритмы: LM, NTLM, MD5, SHA1, MYSQLSHA1, HALFLMCHALL, NTLMCHALL, ORACLE-SYSTEM и MD5-HALF, другие алгоритмы могут быть подключены в виде плагинов.
Введение
В то время как большинство проектов, связанных с компьютерной безопасностью, тратит много времени для взлома одного пароля шифровальных систем (простой перебор), RainbowCrack за время, сравнимое с временем взлома одного хэша простым перебором, получает таблицы хэшей, по которым с очень высокой вероятностью можно в тысячи раз быстрее взломать любой хэш из проверенного диапазона.
Обычно хэши и алгоритм хэширования известны всем, но обратное преобразование слишком сложно. На этом основывается безопасность многих систем.
Обладая отсортированной таблицей хэшей и соответствующей таблицей паролей, можно получить систему, позволяющую с помощью быстрого бинарного поиска по всем таблицам выполнить обратное преобразование хэша в пароль.
Стандартный клиент поддерживает следующие алгоритмы: LM, NTLM, MD5, SHA1, MYSQLSHA1, HALFLMCHALL, NTLMCHALL, ORACLE-SYSTEM и MD5-HALF, другие алгоритмы могут быть подключены в виде плагинов.
Введение
В то время как большинство проектов, связанных с компьютерной безопасностью, тратит много времени для взлома одного пароля шифровальных систем (простой перебор), RainbowCrack за время, сравнимое с временем взлома одного хэша простым перебором, получает таблицы хэшей, по которым с очень высокой вероятностью можно в тысячи раз быстрее взломать любой хэш из проверенного диапазона.
Обычно хэши и алгоритм хэширования известны всем, но обратное преобразование слишком сложно. На этом основывается безопасность многих систем.
Обладая отсортированной таблицей хэшей и соответствующей таблицей паролей, можно получить систему, позволяющую с помощью быстрого бинарного поиска по всем таблицам выполнить обратное преобразование хэша в пароль.
Стандартный клиент поддерживает следующие алгоритмы: LM, NTLM, MD5, SHA1, MYSQLSHA1, HALFLMCHALL, NTLMCHALL, ORACLE-SYSTEM и MD5-HALF, другие алгоритмы могут быть подключены в виде плагинов.
Применение
При генерации таблиц важно найти наилучшее соотношения взаимосвязанных параметров:
- вероятность нахождения пароля по полученным таблицам;
- времени генерации таблиц;
- время подбора пароля по таблицам;
- занимаемое место.
Вышеназванные параметры зависят от настроек заданных при генерации таблиц:
- допустимый набор символов;
- длина пароля;
- длина цепочки;
- количество таблиц.
При этом время генерации зависит почти исключительно от желаемой вероятности подбора, используемого набора символов и длины пароля. Занимаемое таблицами место зависит от желаемой скорости подбора 1 пароля по готовым таблицам.
Хотя применение радужных таблиц облегчает использование полного перебора (то есть метода грубой силы — bruteforce) для подбора паролей, в некоторых случаях необходимые для их генерации/использования вычислительные мощности не позволяют одиночному пользователю достичь желаемых результатов за приемлемое время. К примеру, для паролей длиной не более 8 символов, состоящих из букв, цифр и специальных символов , захешированных алгоритмом MD5, могут быть сгенерированы таблицы со следующими параметрами:
- длина цепочки — 1400
- количество цепочек — 50 000 000
- количество таблиц — 800
При этом вероятность нахождения пароля с помощью данных таблиц составит 0,7542 (75,42 %), сами таблицы займут 596 ГиБ, генерация их на компьютере уровня Пентиум-3 1 ГГц займёт 3 года, а поиск 1 пароля по готовым таблицам — не более 22 минут.
Однако процесс генерации таблиц возможно распараллелить, например, расчёт одной таблицы с вышеприведёнными параметрами занимает примерно 33 часа. В таком случае, если в нашем распоряжении есть 100 компьютеров, все таблицы можно сгенерировать через 11 суток.
Как изменить MAC адрес сетевой платы в Windows 10
Изменить MAC сетевой платы можно с помощью сторонних утилит, но мы выполним эту операцию вручную (нечего запускать сторонние тулзы!).
Чтобы получить текущий MAC адрес и имя сетевой карты, воспользуемся следующей командой:
Нас интересуют два параметра
- Description (название вашей LAN карты) Intel(R) 82547L Gigabit Network Connection
- Physical Address (MAC адрес карты) 00 50 65 E9 FC CB
Затем откроем редактор реестра и перейдем в раздел HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}.
Каждый сетевой компонент в этом разделе описывается четырьмя цифрами, начиная с 0000, 0001 и т.д. Чтобы найти нужный раздел, нужно последовательно просмотреть их все и найти раздел, в котором в качестве значения параметра DriverDesc указано определенное нами ранее имя сетевой карты. В нашем случае это Intel(R) 82547L Gigabit Network Connection.
После того, как правильная LAN карта найдена, создайте (отредактируйте) ключ типа REG_SZ с именем NetworkAddress. В этом ключе и определяется аппаратный (MAC) адрес вашей сетевой карты. Достаточно будет изменить одну любую цифру текущего адреса, например 00 50 56 E9 FC CB
Отчёт: география и посещаемость сайта
Отчёт в графической форме показывает объём посещений сайта project-rainbowcrack.com, в динамике, с привязкой к географическому размещению активных пользователей данного сайта.
Отчёт доступен для сайтов, входящих в TOP-100000 рейтинга Alexa. Для всех остальных сайтов отчёт доступен с некоторыми ограничениями.
Alexa Rank – рейтинговая система оценки сайтов, основанная на подсчете общего количества просмотра страниц и частоты посещений конкретного ресурса. Alexa Rank вычисляется исходя из показателей за три месяца. Число Alexa Rank – это соотношение посещаемости одного ресурса и посещаемости прочих Интернет-порталов, поэтому, чем ниже число Alexa Rank, тем популярнее ресурс.
Описание алгоритма[править | править код]
Программное обеспечение RainbowCrack состоит из следующих частей:
- rtgen — программа для генерации радужных таблиц.
- rtsort- программа для сортировки радужных таблиц, порождённых rtgen.
- rcrack — программа для поиска радужных таблиц, упорядоченных по rtsort.
Процесс поиска таблиц эквивалентен взлому хешей. Подробности использования этих программ будут описаны ниже.
Шаг 1. Использование rtgen для генерации радужных таблицправить | править код
Для начала генерации таблиц необходимо определить следующие параметры:
rtgen hash_algorithm charset plaintext_len_min plaintext_len_max table_index chain_len chain_num part_index
Объяснение этих параметровправить | править код
Параметр | Смысл |
---|---|
hash_algorithm | Хеш-алгоритм (LM, NTLM, md5 и т.д.). |
charset | Кодирование всех открытых текстов в радужной таблице. Все возможные кодировки определены в Charset.txt файле. |
plaintext_len_minplaintext_len_max | Эти два параметра определяют возможную длину всех открытых текстов в радужной таблице. Если кодировка является числовой, то plaintext_len_min равно 1 и plaintext_len_max равно 5. Тогда текст «12345», скорее всего, будет включён в таблицу, а «123456» — не будет. |
table_index | Table_index связан с «reduce function», которая используется в радужной таблице. |
chain_len | Chain_len — длина каждой «Радужной цепи» в таблице. «Радужная цепь» размером 16 байт является наименьшей единицей в радужной таблице. Радужная таблица содержит много радужных цепей. |
chain_num | Chain_num — число радужных цепочек в таблице. |
part_index | Part_index — параметр, определяющийся, как «startpoint» при генерации каждой радужной цепи. Он должен быть числом (или начинаться с цифры) в RainbowCrack 1,3 и 1,4. |
Примерправить | править код
hash_algorithm | Lm, NTLM или md5 |
charset | alpha-numeric = или loweralpha-numeric = |
plaintext_len_min | 1 |
plaintext_len_max | 7 |
chain_len | 3800 |
chain_num | 33554432 |
key space |
36+362+363+364+365+366+367=80603140212{\displaystyle 36+36^{2}+36^{3}+36^{4}+36^{5}+36^{6}+36^{7}=80603140212}
Ключевое пространство — количество возможных открытых текстов для кодировки, plaintext_len_min и plaintext_len_max выбраны. |
table size | 3 GB |
chain_num | 33554432 |
success rate | 0,999 Шанс успеха 99,9 %. |
table generation commands | Команды, использующиеся при создании радужных таблиц такие:
rtgen md5 loweralpha-numeric 1 7 3800 33554432 rtgen md5 loweralpha-numeric 1 7 1 3800 33554432 rtgen md5 loweralpha-numeric 1 7 2 3800 33554432 rtgen md5 loweralpha-numeric 1 7 3 3800 33554432 rtgen md5 loweralpha-numeric 1 7 4 3800 33554432 rtgen md5 loweralpha-numeric 1 7 5 3800 33554432 Для создания NTLM или LM-таблиц, необходимо заменить «md5» на «NTLM» или «LM». Для создания alpha-numeric charset необходимо заменить «loweralpha-numeric» на «alpha-numeric». |
В итоге будут созданы следующие файлы:
md5_loweralpha-numeric#1-7_0_3800x33554432_0.rt 512 MB md5_loweralpha-numeric#1-7_1_3800x33554432_0.rt 512 MB md5_loweralpha-numeric#1-7_2_3800x33554432_0.rt 512 MB md5_loweralpha-numeric#1-7_3_3800x33554432_0.rt 512 MB md5_loweralpha-numeric#1-7_4_3800x33554432_0.rt 512 MB md5_loweralpha-numeric#1-7_5_3800x33554432_0.rt 512 MB
Шаг 2. Использование rtsort для сортировки радужных таблицправить | править код
Радужные таблицы, порождённые программой rtgen, необходимо обработать для того, чтобы поиск по ним стал легче. Программа rtsort используется для сортировки «end point» всех радужных цепочек в радужных таблицах.
Используются следующие команды :
rtsort md5_loweralpha-numeric#1-7_0_3800x33554432_0.rt rtsort md5_loweralpha-numeric#1-7_1_3800x33554432_0.rt rtsort md5_loweralpha-numeric#1-7_2_3800x33554432_0.rt rtsort md5_loweralpha-numeric#1-7_3_3800x33554432_0.rt rtsort md5_loweralpha-numeric#1-7_4_3800x33554432_0.rt rtsort md5_loweralpha-numeric#1-7_5_3800x33554432_0.rt
Каждая команда выполняется несколько минут. Программа rtsort записывает отсортированные радужные таблицы в исходном файле. Если свободный объем оперативной памяти системы меньше размера отсортированных радужных таблиц, то для хранения оставшихся данных будет выделено место на жёстком диске.
Анализ поисковых запросов сайта
Приведённый выше отчёт по частотности использования поисковых запросов, может быть использован оптимизаторами сайта при составлении его семантического ядра и подготовке контента т.н. «посадочных страниц». Статистика поисковых запросов — обобщённая сгруппированная информация по «обращениям» пользователей к поисковой системе по ключевым запросам (фразам).
В большинстве случаев, наш сервис показывает уже сгруппированную информацию, содержащую не только подборку самых популярных слов (фраз), но и словосочетания + синонимы. Собранная в данном разделе статистика показывает по каким «ключевым словам» (поисковым запросам) пользователи переходят на сайт project-rainbowcrack.com.
Поисковый запрос – это слово или словосочетание, которое пользователь вводит в форму поиска на сайте поисковой системы, с учётом автоподбора и автоматического исправления в поиске ошибочного набора.
Bios и разгон
Традиционный биос от American Megatrends в этот раз имеет несколько особенностей:
- Присутствует двойной старт, не зависящий от конфигурации устройств
- Зачем-то полностью скрыто меню с настройками разгона процессора
- Зато разгон памяти до 1866 Мгц работает «из коробки»
- Появилась возможность настройки режима мигания полосы подсветки
Также, как и на большинстве китайцев, сон работает не корректно и приходится прибегать к одному из вариантов решения. Управление таймингами отсутствует.
Модифицированный родной биос
Модифицированная версия родного биоса с форума . Добавляет возможность разгона процессоров с разблокированным множителем (правда пока максимальный множитель не может быть выше 39).
Ссылка на файл чуть ниже.
Портированный мод-биос
Также прошивается через fpt и несколько расширяет возможности разгона:
- Поднятие множителя выше 39 (для процессоров с разблокированным множителем)
- Разгон ram до 2133 Мгц
- Управление таймингами
Но, так как биос для данной платы не родной, есть и минусы:
- Перестает работать подсветка
- Полностью перестает работать сон (лучше сразу заменить на гибернацию)
- Самый главный недостаток — зашить обратно родной биос можно будет только программатором
Стоит ли менять родной bios на портированный — решать вам.
Файлы:
- X79P Модификация родного биоса для прошивки через fptРазмер файла: 4 MB Кол-во скачиваний: 165
- X79P_port Портированная версия, также для прошивки через fptРазмер файла: 2 MB Кол-во скачиваний: 115
- X79PBCKP Родной биос от платы под брендом JingshaРазмер файла: 2 MB Кол-во скачиваний: 29
Вольтмод
Информация о вольтмоде появилась благодаря пользователю с форума overclockers. Вольтмод в данном случае использовался для разгона E5 1680 v2, требующего большего напряжения, чем популярные E5 1620 и , для которых вольтмод не обязателен, но позволит взять более высокую частоту, чем стандартные 4.0 — 4.2 ГГц.
Как обычно, все действия выполняются исключительно на ваш страх и риск.
HTML верстка и анализ содержания сайта
Размещённая в данном блоке информация используется оптимизаторами для контроля наполнения контентом главной страницы сайта, количества ссылок, фреймов, графических элементов, объёма теста, определения «тошноты» страницы.
Отчёт содержит анализ использования Flash-элементов, позволяет контролировать использование на сайте разметки (микроформатов и Doctype).
IFrame – это плавающие фреймы, которые находится внутри обычного документа, они позволяет загружать в область заданных размеров любые другие независимые документы.
Flash — это мультимедийная платформа компании для создания веб-приложений или мультимедийных презентаций. Широко используется для создания рекламных баннеров, анимации, игр, а также воспроизведения на веб-страницах видео- и аудиозаписей.
Микроформат — это способ семантической разметки сведений о разнообразных сущностях (событиях, организациях, людях, товарах и так далее) на веб-страницах с использованием стандартных элементов языка HTML (или XHTML).
Характеристики
МОДЕЛЬ | JINGSHA X79 P3 |
---|---|
Сокет | LGA 2011 |
Чипсет | X79 |
Поддерживаемые процессоры | Intel Core I7, Xeon 1600, 2600 (v1, v2) |
Поддерживаемая оперативная память | 4 х DDR3 DIMM, четырехканальная, поддержка ECC и non-ECC памяти |
Управление таймингами | В родном биосе нет |
Слоты расширения | 3 x PCI-e x16 1 x PCI-e X11 x PCI-e X4 |
Дисковая подсистема | 2 x SATA 3.0 4 x SATA 2.01 x Nvme (pci-e x4 @ 3.0) |
Разъемы для вентиляторов | 1 x для процессорного кулера (4 pin)1 x для корпусных вентиляторов (4 pin) |
Порты | 2 x PS/24 x USB 3.0 (+ выносные на корпус)4 x USB 2.0 (+ выносные на корпус)1 x LAN 7.1 audio |
Форм-фактор и Размеры, мм | ATX , 305 x 220 mm. |
Особенности | Рабочий сонЧипсет X79 |
Примерная цена |
При ближайшем рассмотрении сходство с хуананом оказывается не полным, многие элементы на текстолите поменяли свои места. Изменению подверглась и «начинка» изделия. Вместо серверного C602, теперь используется достаточно редкий в китайских платах десктопный чипсет X79.
Расположение портов
Количество портов, как и подсистема питания (стандартные 7 фаз), не изменились. Охлаждение чипсета достаточно массивное, а вот радиатор над vrm могли бы и доработать.
Радиатор крепится на 2 винтах
Nvme порт теперь расположен над верхним pci-e x16, что не очень удобно и может помешать установке видеокарты, особенно, если nvme накопитель снабжен радиатором. К плюсам можно отнести стабильную работу порта на pci-e x4 @ 3.0, не требующую никаких дополнительных настроек.
Помимо оранжевой, встречается и версия в зеленом цвете
Из небольших визуальных изменений можно также выделить появившуюся полоску красной led-подстветки. Не обошлось и без минусов: на плате только два 4-пиновых разъема для кулеров, 1 для охлаждения cpu и 1 для корпусного кулера. Для более серьезного охлаждения лучше сразу приобрести реобас.
Причины ошибок в файле Rtgen.dll
Большинство ошибок rtgen.dll связано с отсутствием или повреждениями файлов rtgen.dll. Тот факт, что rtgen.dll – внешний файл, открывает возможность для всяческих нежелательных последствий.
Непредвиденные завершения работы вашего компьютера или заражение вирусом может повредить rtgen.dll, что приведет к ошибкам dll. Когда файл rtgen.dll повреждается, он не может быть нормально загружен и выведет сообщение об ошибке.
В других случаях ошибки файла rtgen.dll могут быть связаны с проблемами в реестре Windows. Нерабочие ссылки DLL файлов могут помешать зарегистрировать файл dll должным образом и вызвать ошибку rtgen.dll. Эти нерабочие ключи реестра могут появиться в результате отсутствия файла DLL, перемещения файла DLL или ввиду наличия остаточной ссылки DLL файла в реестре Windows после неудачной установки или удаления программы.
Более конкретно, данные ошибки rtgen.dll могут быть вызваны следующими причинами:
- Ошибочные или поврежденные записи реестра для rtgen.dll
- Вирус или вредоносное ПО, повредившее файл rtgen.dll.
- Отказ оборудования Rational Software Corp., например, некачественный жесткий диск, вызвавший повреждение файла rtgen.dll.
- Другая программа изменила требуемую версию rtgen.dll.
- Другая программа злонамеренно или по ошибке удалила файл rtgen.dll.
- Другая программа удалила файл rtgen.dll.
Сканеры сетей
Такие программы предназначены для сканирования локальных и внешних сетей с целью составления их карт и поиска возможных уязвимостей.
Nmap
Свободная утилита для сканирования и аудита безопасности сетей. Инструмент широко используется для сканирования узлов, получения списка открытых портов, сканирования запущенных сервисов и идентификации хостов в сети. Network Mapper поддерживает различные способы сокрытия процесса сканирования, параллельное сканирование, обход систем IDS и межсетевых экранов.
У продукта есть кроссплатформенный GUI Zenmap.
ZMap
ZMap отличается высокой скоростью работы. Этот инструмент изначально создавался как более быстрая альтернатива Nmap для сканирования всей сети, а не отдельных фрагментов. Чтобы добиться скорости в 1,4 млн пакетов в секунду, достаточно обычного компьютера с гигабитным соединением.
Возникает вопрос: а зачем в таком случае нужен Nmap? Дело в том, что у ZMap есть существенный недостаток: очень высокая нагрузка, которая способна вывести из строя сетевое оборудование. Поэтому для точечного сканирования и небольших сетей предпочтительнее использовать Nmap.
Masscan
Ещё один массовый асинхронный сканер, который работает со скоростью до 25 млн пакетов в секунду. Полезен для сканирования огромных сетей, таких как Интернет. Синтаксис Masscan схож с Nmap, а скорость работы превышает скорость ZMap. Но главный недостаток такой же, как и у последнего: огромная нагрузка на сеть.
Установка Kali Linux
Скачать образ Kali Linux можно с официального сайта https://www.kali.org/. Хотя правильнее сказать, что только оттуда его и можно скачивать, во избежание бонусного скачивания, так сказать, дополнений не предусмотренных разработчиком. На сайте доступны разные виды образов, в том числе можно скачать уже установленную систему для виртуальных машин. Есть образы с приставкой Light, это обрезанный вариант и использовать его, без необходимости не стоит, также можно выбрать образ с уже предустановленным окружение рабочего стола: Mate, Xfce, Kde. Хотя, при желании, их можно будет установить потом.
Мы возьмём образ Kali Linux 64 Bit. Актуальная версия по состоянию на момент написания статьи 2019.1. После скачивания, образ нужно записать на флешку каким-нибудь Rufus, после чего можно переходить непосредственно к установке.
Для начала запускаемся с флешки и видим варианты загрузки:
Выбираем Graphical install, после чего нужно выбрать язык:
Выбрать местоположение:
Раскладку клавиатуры:
Потом вводим имя компьютера, пароль суперпользователя, выбираем часовой пояс, после чего система предложит нам настроить разметку дисков:
Оптимальный вариант выбрать “Авто – использовать весь диск с шифрованным LVM” – в таком случае будет создан полностью зашифрованный раздел и систему нельзя будет запустить или получить доступ к файлам без ввода кодовой фразы. Как я и говорил, в большинстве случаев стоит использовать именно этот вариант, ведь это серьёзно повышает уровень безопасности системы и защищённость информации. Если ты выберешь этот вариант, то после установки дополнительно можешь задать пароль для самоуничтожения данных, делается это командой: cryptsetup luksAddNuke /dev/sda1.
Но для полноты обзора, мы также рассмотрим вариант “Вручную”, при котором мы создадим три раздела с такими параметрами:
- Точка монтирования – /; использовать как – журналируемая файловая система ext4; тип раздела – первичный; местоположение – начало этого пространства; размер – оптимально 20 Гб;
- Использовать как – Раздел подкачки; тип раздела – логический; местоположение – начало этого пространства; размер 2-4 Гб;
- Точка монтирования – /home; Использовать как – журналируемая файловая система ext4; тип раздела – логический; местоположение – начало этого пространства; размер – всё оставшееся место;
После создания разделов начнётся установка системы и через некоторое время появится вопрос:
Если Linux единственная ОС на этом компьютере то смело жми “да”, если устанавливаешь рядом с Windows то “нет”.
Через некоторое время установка будет завершена, после чего компьютер перезагрузится и ты увидишь экран приветствия, где нужно будет ввести имя пользователя (root) и пароль.
На этом установка завершена. Перейдём к настройке свежеустановленной системы.
Основная проблема
Размер радужных таблиц слишком большой. Для решения этой проблемы используется следующий способ: хэши располагаются в цепочки по несколько тысяч комбинаций. Зная одну цепочку, мы можем получить следующую комбинацию из предыдущей с помощью функции хэширования. В таблицы записываются только начало и конец цепочки. Для нахождения пароля по такой таблице нужно применить к заданному хэшу функцию хэширования много раз (зависит от длины цепочек) и на очередном цикле получится хэш, который является концом одной из цепочек в радужной таблице. После этого мы прогоняем эту цепочку и заново применяем функцию хэширования от начального до нужного нам хэша. После нескольких цепочек мы находим комбинацию, соответствующую заданному хэшу — это и есть искомый пароль.
Такие таблицы называют радужными. Их преимущество состоит в том, что, во-первых, они имеют меньший размер (в тысячи раз меньше обычных таблиц, содержащих те же пароли), во-вторых, они позволяют за несколько минут найти обратное преобразование любого алгоритма хэширования, если искомый пароль уже был в этих таблицах.
История
В 1982 году была создана основная часть проекта RainbowCrack, но у неё было несколько недостатков, связанных с пересечениями цепочек. Поэтому проекты, созданные в то время, до сих пор являются не столь эффективными. Для исправления этих недостатков в начале 90-х годов создатели UNIX-систем внесли изменения в данный проект, тем самым оказав большое влияние на развитие метода. Они ввели динамическую составляющую в хэш-функцию, создающую уникальную функцию для каждой отдельной UNIX-системы. В то же время Internet-проекты, системы Windows, базы данных до сих пор продолжают использовать статические хэш-функции, для которых за один полный проход ключевого пространства можно расшифровать все пароли сервисов и целого класса программ.
В 2003 году частично решена проблема пересечений цепочек, в связи с чем проект стал работать эффективнее.
Сейчас проект RainbowCrack расширяет количество задействованных серверов.
RainbowCrack Package Description
RainbowCrack is a general propose implementation of Philippe Oechslin’s faster time-memory trade-off technique. It crack hashes with rainbow tables.
RainbowCrack uses time-memory tradeoff algorithm to crack hashes. It differs from brute force hash crackers.
A brute force hash cracker generate all possible plaintexts and compute the corresponding hashes on the fly, then compare the hashes with the hash to be cracked. Once a match is found, the plaintext is found. If all possible plaintexts are tested and no match is found, the plaintext is not found. With this type of hash cracking, all intermediate computation results are discarded.
A time-memory tradeoff hash cracker need a pre-computation stage, at the time all plaintext/hash pairs within the selected hash algorithm, charset, plaintext length are computed and results are stored in files called rainbow table. It is time consuming to do this kind of computation. But once the one time pre-computation is finished, hashes stored in the table can be cracked with much better performance than a brute force cracker.
- Author: RainbowCrack Project
- License: Free
tools included in the rainbowcrack package
rcrack – Rainbow table password cracker
root@kali:~# rcrack
RainbowCrack 1.7
Copyright 2017 RainbowCrack Project. All rights reserved.
http://project-rainbowcrack.com/
usage: ./rcrack path -h hash
./rcrack path -l hash_list_file
./rcrack path -lm pwdump_file
./rcrack path -ntlm pwdump_file
path: directory where rainbow tables (*.rt, *.rtc) are stored
-h hash: load single hash
-l hash_list_file: load hashes from a file, each hash in a line
-lm pwdump_file: load lm hashes from pwdump file
-ntlm pwdump_file: load ntlm hashes from pwdump file
implemented hash algorithms:
lm HashLen=8 PlaintextLen=0-7
ntlm HashLen=16 PlaintextLen=0-15
md5 HashLen=16 PlaintextLen=0-15
sha1 HashLen=20 PlaintextLen=0-20
sha256 HashLen=32 PlaintextLen=0-20
examples:
./rcrack . -h 5d41402abc4b2a76b9719d911017c592
./rcrack . -l hash.txt
rt2rtc – Convert rainbow tables from .rt to .rtc
root@kali:~# rt2rtc
RainbowCrack 1.7
Copyright 2017 RainbowCrack Project. All rights reserved.
http://project-rainbowcrack.com/
usage: rt2rtc path
1 <= start_point_bits <= 64
1 <= end_point_bits <= 64
1 <= chunk_size_in_mb
rtc2rt – Convert rainbow tables from .rtc to .rt
root@kali:~# rtc2rt
RainbowCrack 1.7
Copyright 2017 RainbowCrack Project. All rights reserved.
http://project-rainbowcrack.com/
usage: ./rtc2rt path
rtgen – Generate rainbow tables
root@kali:~# rtgen
RainbowCrack 1.7
Copyright 2017 RainbowCrack Project. All rights reserved.
http://project-rainbowcrack.com/
usage: rtgen hash_algorithm charset plaintext_len_min plaintext_len_max table_index chain_len chain_num part_index
rtgen hash_algorithm charset plaintext_len_min plaintext_len_max table_index -bench
hash algorithms implemented:
lm HashLen=8 PlaintextLen=0-7
ntlm HashLen=16 PlaintextLen=0-15
md5 HashLen=16 PlaintextLen=0-15
sha1 HashLen=20 PlaintextLen=0-20
sha256 HashLen=32 PlaintextLen=0-20
examples:
rtgen md5 loweralpha 1 7 0 1000 1000 0
rtgen md5 loweralpha 1 7 0 -bench
rtsort – Sort rainbow tables
root@kali:~# rtsort
RainbowCrack 1.7
Copyright 2017 RainbowCrack Project. All rights reserved.
http://project-rainbowcrack.com/
usage: ./rtsort path