Windows Password Recovery - идентификационная атака
Идентификационная атака (fingerprint attack) - сравнительно свежий инструмент для восстановления сложных паролей, не поддающихся расшифровке в других атаках. Суть ее состоит в том, чтобы для поиска паролей брать не отдельные слова исходного словаря, как в атаке по словарю, и даже не комбинации слов, как в комбинированной атаке, а так называемые "отпечатки". При этом каждое исходное слово словаря используется для создания нескольких отпечатков. Если в процессе атаки был найден какой-либо пароль, он участвует в создании новых отпечатков и атака повторяется снова.
Перед запуском атаки необходимо задать исходный словарь, который будет использоваться для создания банка отпечатков. С программой поставляется словарь common.pcd, оптимизированный для данной атаки, но можно использовать свой или скачать из интернета (вкладка Online dictionaries). Особых требований к словарю нет, кроме одного: исходный словарь не должен быть слишком большим, иначе атака займет значительное время. Можно использовать словари с национальными паролями, если есть подозрения, что искомый пароль содержит символы в национальной кодировке. В качестве словаря можно (и даже желательно!) использовать уже готовые списки паролей.
Отпечатки генерируются так: каждое слово исходного словаря сначала разбивается на однобуквенные пароли, затем на 2-х буквенные и т.д. Например, исходное слово crazy разбиваем на односимвольные отпечатки. Получаем:
c
r
a
z
y
Затем на двух символьные:
cr
ra
az
zy
Потом трех:
cra
raz
azy
И, наконец, четырех символьные:
craz
razy
Получилось 5+4+3+2=14 отпечатков, не считая исходного слова.
И так для каждого слова исходного словаря. После этого, все отпечатки сливаются в общую базу, естественно, отбрасывая дубликаты. Получаем базу отпечатков, которые будут использоваться для проверки паролей путем склейки всех отпечатков друг с другом.
На самом деле, алгоритм генерации отпечатков немного сложнее. Более того, в настройках атаки имеется дополнительная опция Maximize effeciency when generating fingerprints, предназначенная для задействования более сложного алгоритма, который позволяет максимизировать эффективность (в ущерб скорости) путем создания дополнительных отпечатков.
Разберем оставшиеся опции.
- Use PPP engine to generate additional passwords - задействовать при создании отпечатков пароли, которые были найдены в других атаках
- Use keyboard and frequently use sequences - добавить в банк отпечатков клавиатурные комбинации и часто повторяющиеся последовательности
- Use dates - использовать даты
- Use numbers and common sequences - использовать цифры и простые комбинации букв.
Наиболее пристального внимания заслуживает опция Loop until no more passwords are found. Вот где идентификационная атака может себя проявить. Работает она таким образом: если во время атаки был найден хотя бы один пароль, по после окончания атаки этот пароль участвует в создании новых отпечатков и атака повторяется сначала. Эта опция хорошо работает на больших списках хэшей, а также на хэшах истории паролей.
Вторая вкладка с настройками позволяет создать и записать свой собственный словарь на основе выставленных опций Идентификационной атаки. Будьте аккуратны, этот словарь может занять много места на жестком диске вашего компьютера.
В третьей вкладке можно скачать из Интернет исходные словари для Идентификационной атаки.