Атака грубой силы быстрей атаки по словарю. Когда и почему?

Пользователь написал: «Я взламываю ZIP пароль в вашей программе Passcovery Suite. Отличная скорость перебора при атаке грубой силы! Но она сильно проседает при атаке по словарю. В чём причина?»

Всегда ли атака по словарю быстрее атаки грубой силы?

Причина в скорости взлома ZIP архивов с классическим шифрованием.

Атака по словарю будет медленнее, чем атака грубой силы, для форматов с высокой скоростью восстановления паролей. Дело в том, что чтение и подготовка паролей из файла словаря требует гораздо больше времени, чем сама валидация паролей.

То есть, при атаке грубой силы, пароли к Zip архивам с классическим шифрованием могут перебираться со скоростью в несколько миллиардов паролей в секунду (на хорошей видеокарте). И в то же время атака по словарю покажет только миллионы паролей в секунду. А при использовании правил скорость упадёт ещё ниже…

Для форматов с низкой скоростью восстановления (а сейчас это почти все форматы) разница в скорости между атакой по словарю и атакой грубой силы не будет заметна, поскольку валидация паролей занимает больше времени, чем считывание/подготовка паролей из файла словаря.

Форматы, где атака по словарю будет медленнее, чем атака грубой силы:

  • Zip-архивы с классическим шифрованием
  • документы Microsoft Office 97-2003

Форматы, где скорость атаки по словарю будет такой же как у атаки грубой силы:

  • Zip-архивы с WinZip AES шифрованием
  • архивы RAR3/RAR5
  • документы OpenOffice/LibreOffice, Microsoft Office 2007-2021, Adobe PDF
  • тома TrueCrypt
  • бэкапы Apple iOS/BlackBerry OS
  • рукопожатия WPA/WPA2

О типах атак на пароль

Атака по словарю. Пароли считываются из файла словаря — обычного текстового файла, где построчно записаны слова-пароли. Программа для восстановления паролей последовательно считывает эти слова-пароли и проверяет их.

Атака грубой силы (прямой перебор). Пароли генерируются самой программой для восстановления паролей из массива заданных пользователем символов и тут же проверяются. Опционально атака грубой силы может использовать маску пароля — шаблон для создания паролей.

Passcovery Suite для восстановления паролей

Passcovery Suite восстанавливает пароли к файлам популярных форматов. Обеспечивает ускорение перебора паролей на видеокартах AMD/NVIDIA. Предлагает расширенные возможности для проведения атаки по словарю и атаки грубой силы: сценарии работы, мутацию словарей, расширенную маску. Ряд паролей программа восстанавливает/удаляет мгновенно.

Демо-версия для Windows x86/x64 доступна на сайте компании Пасковери:

Официальный логотип Passcovery Suite Passcovery Suite
для Microsoft Office, OpenOffice/LibreOffice, Adobe PDF, Zip, RAR, TrueCrypt, Apple iOS, BlackBerry OS, WPA
22.01 Скачать x86
(16420 Kb)
Скачать x64
(18996 Kb)
Passcovery Suite для Microsoft Office, OpenOffice/LibreOffice, Adobe PDF, Zip, RAR, TrueCrypt, Apple iOS, BlackBerry OS, WPA
Passcovery Suite для скоростного восстановления паролей на GPU

Для восстановления паролей к Zip архивам Пасковери предлагает отдельный продукт:

Официальный логотип AccentZPR Accent ZIP Password Recovery
для Zip архивов с классическим и WinZip AES шифрованием
22.01 Скачать x86
(7452 Kb)
Скачать x64
(8956 Kb)
AccentZPR для Zip/Zipx архивов
AccentZPR для восстановления паролей Zip/Zipx

Три вопроса об атаках на пароль

В диапазоне поиска пароля и времени его перебора: для атаки грубой силы диапазон заранее не определён и может быть бесконечен, для атаки по словарю он ограничен ёмкостью словаря.

В обоих случаях принцип атаки на пароль един: перебор вариантов в поисках верного. Разница в самом массиве вариантов.

В случае атаки грубой силы, диапазон проверки определяется перед стартом атаки и может не иметь границ. Это сила атаки, и её слабость: здорово, конечно, что диапазон можно настроить под представления о пароле, но чересчур обширный диапазон потребует огромного времени для проверки всех вариантов. Может и жизни [планеты] не хватить… 😁

Атака по словарю ограничена списком слов, хранящемся в файле словаря. Существуют различные словари: маленькие, большие и гигантские, тематические, языковые, с популярными паролями, с паролями из утечек и т.д. Можно (и нужно!) создавать собственные словари, мутировать их, но всё равно объём проверки будет конечным.

Выходит, что атака по словарям будет быстрее, если пароль – это какое-то "слово", попавшее в словарь. Зато атака грубой силы будет надёжнее: рано или поздно нужный пароль будет найден!

Типовое наполнение словаря и потока грубой силы
Типичный список паролей на проверку для атаки по словарю и атаки грубой силы

Это перебор вариантов с известными частями или отдельными символами пароля.

Атака грубой силы подразумевает перебор всех вариантов без разбора.

Но если известны части пароля, рекомендуется задать маску – шаблон, по которому будут генерироваться пароли. Тогда и проверяться будут только варианты, подходящие под условия маски. Атака по маске позволит игнорировать заведомо ложные комбинации и здорово сэкономит время поиска утраченного пароля.

Установка простой маски в AccentZPR
Установка простой маски в программах Пасковери

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

Позиционная маска расширит возможности атаки грубой силы, отсечёт проверки заведомо ложных вариантов и акцентирует ресурсы поиска на предполагаемых значениях пароля.

Позиционная маска поддерживается во всех программах Пасковери. Примеры её использования здесь.

Пример позиционной маски в Пасковери
Один из примеров создания позиционной маски в программах Пасковери