RainbowCrack — генерация и использование rainbow tables (альтернатива Ophcrack)

RainbowCrack — генерация и использование rainbow tables (альтернатива Ophcrack)

Зачем нужны радужные таблицы, когда есть брутфорс?

Если обычный брутфорс — это как лупить по сейфу кувалдой, то радужные таблицы — это найти нужный ключ в ящике с сотней ключей, но заранее отсортированных по типу замка. RainbowCrack — один из старейших и самых эффективных инструментов, который использует этот метод для взлома хэшей, и делает это намного быстрее, чем лобовая атака. Да, нужно потратить время и ресурсы на подготовку, но когда таблицы готовы — всё работает молниеносно.

Принцип работы RainbowCrack

RainbowCrack использует радужные таблицы (rainbow tables), которые представляют собой предварительно рассчитанные цепочки хэшей. Вместо хранения каждого возможного значения (как в словарных атаках), радужные таблицы используют компромисс между временем и памятью. Это позволяет сократить объём хранения и ускорить процесс восстановления паролей.

  • Hash → Reduce → Hash → Reduce → … — так строятся цепочки
  • Сохраняются только первый и последний элементы цепочек
  • Во время атаки: из хэша делается редукция, полученное значение снова хэшируется, и так до тех пор, пока не найдётся совпадение с концом цепочки

Таким образом, вместо того чтобы проверять каждый возможный пароль, RainbowCrack «перебирает» сокращённые цепочки и работает в разы быстрее. Это особенно полезно при работе с хэшами, которые не используют соль.

В чём отличие от Ophcrack?

Ophcrack тоже работает с радужными таблицами, но строго ориентирован на LM и NTLM-хэши Windows, и поставляется с графическим интерфейсом. RainbowCrack — это более гибкий и мощный инструмент:

  • Поддерживает разные алгоритмы хэширования: MD5, SHA1, NTLM и другие
  • Позволяет самому генерировать радужные таблицы под свои задачи
  • Работает через консоль, что удобно для автоматизации
  • Открытый код, кроссплатформенность (Windows/Linux)

Как установить RainbowCrack

RainbowCrack можно установить вручную из исходников или использовать готовые сборки:

На Linux:

 sudo  apt  install git build-essential git clone https://github.com/abeluck/rainbowcrack.git cd rainbowcrack/src make 

На Windows:

Скачайте официальную сборку с сайта и распакуйте архив. Программа поставляется с утилитами rtgen, rtsort и rcrack.

Основные утилиты: rtgen, rtsort, rcrack

Работа с RainbowCrack делится на три этапа: генерация таблиц, их сортировка и использование для атаки.

1. Генерация таблиц: rtgen

 rtgen md5 loweralpha-numeric 1 7 0 2400 33554432 
  • md5 — алгоритм хэширования
  • loweralpha-numeric — используемые символы (буквы и цифры)
  • 1 7 — длина пароля от 1 до 7 символов
  • 0 2400 33554432 — параметры цепочек (индекс, количество, длина цепи)

2. Сортировка таблиц: rtsort

 rtsort . 

Обязательно сортировать таблицы перед использованием, иначе rcrack не сможет с ними работать.

3. Атака по хэшу: rcrack

 rcrack . -h e10adc3949ba59abbe56e057f20f883e 

В данном случае мы пытаемся найти пароль к хэшу от «123456». Если он есть в таблицах, RainbowCrack его найдёт моментально.

Плюсы и минусы RainbowCrack

Плюсы:

  • Высокая скорость атаки после генерации таблиц
  • Поддержка множества алгоритмов
  • Гибкая настройка параметров
  • Возможность создания кастомных таблиц под нужды проекта

Минусы:

  • Очень длительная генерация таблиц (часы, дни — в зависимости от параметров)
  • Большой объём хранения (от гигабайтов до терабайтов)
  • Неэффективно против хэшей с солью

Кому и когда стоит использовать RainbowCrack

RainbowCrack — отличный выбор, если у вас есть большой список хэшей, вы знаете, что они не защищены солью, и вы хотите «перебрать» их максимально быстро. Это может быть полезно при:

  • Аудите собственной базы данных
  • Восстановлении утерянных паролей пользователей
  • Исследовательской работе в сфере безопасности

Для задач CTF, реверса или быстрой проверки одного-двух хэшей, скорее всего, подойдёт что-то более простое — например, Hashcat или John the Ripper .

Альтернативы и сравнение

Кроме Ophcrack, есть и другие инструменты, которые можно сравнить с RainbowCrack:

Инструмент Метод Плюсы Минусы
Ophcrack Готовые rainbow tables Простой GUI, удобно для NTLM Ограниченная поддержка хэшей, мало гибкости
Hashcat GPU-брутфорс/словари Гибкость, поддержка солей, высокая производительность Не использует rainbow tables, медленнее без GPU
John the Ripper Гибридный брутфорс Поддержка разных форматов и атак Меньше оптимизаций, сложнее настраивать
RainbowCrack Rainbow tables Скорость, кастомизация Генерация таблиц требует времени и памяти

Вывод

RainbowCrack — это немного старомодная, но всё ещё мощная альтернатива современным средствам восстановления паролей. Его сила — в подготовке. Если вы не боитесь потратить несколько часов или дней на генерацию таблиц, взлом хэшей потом будет происходить за секунды. Он не заменяет Hashcat или John the Ripper, но прекрасно дополняет их в вашем арсенале исследователя безопасности.

В эпоху солёных хэшей и алгоритмов вроде bcrypt или Argon2 радужные таблицы становятся всё менее эффективными, но для незащищённых баз или устаревших систем — это до сих пор оружие массового поражения.

Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.

Реальные атаки. Эффективные решения. Практический опыт.

Standoff Defend* — это онлайн-полигон, где ты сможешь испытать себя. Попробуй себя в расследовании инцидентов и поборись за победу в конкурсе

*Защищать. Реклама. АО «Позитив Текнолоджиз», ИНН 7718668887

Юрий Кочетов

Здесь я делюсь своими не самыми полезными, но крайне забавными мыслями о том, как устроен этот мир. Если вы устали от скучных советов и правильных решений, то вам точно сюда.