Мутация паролей: правила атаки по словарю в Passcovery

Мутация паролей автоматически преобразует слова из словаря (текстовый файл с базовыми паролями) по заданным правилам. Программа меняет регистр, добавляет цифры, заменяет буквы на символы и проверяет каждый вариант. Это работает в разы быстрее чистого перебора.

Видео-демонстрация: как программа находит пароль B@seb@!!99, полученный из слова baseball:

Мутация в действии: от базового слова к сложному паролю

Часто встречается вредный совет: «Замени буквы на символы, добавь цифры и получишь надёжный пароль». Нет, это не работает. Программы восстановления паролей применяют те же трансформации к миллионам словарных слов автоматически.

Как это понять: Мутация работает как бариста с базовым эспрессо: из одной основы получаются десятки напитков. Эспрессо + молоко = латте. Эспрессо + пенка = капучино. Эспрессо + сливки + сироп = раф. Так и программа: берёт слово «password» и создаёт Password, password123, p@ssw0rd. Одна основа – сотни вариантов для проверки.

Метафора мутации паролей: одна чашка эспрессо слева превращается в латте, капучино и раф справа – одна основа, множество вариантов

Что такое мутация паролей и как она работает?

Программа берёт слово, применяет правило трансформации и получает кандидат для проверки. Например: слово password + правило .c99 (первая заглавная + «99» в конец) = Password99. Это называется rule-based attack – атака по словарю с правилами.

Принцип прост: мутация расширяет словарь без увеличения его размера. Вместо хранения 10 миллионов готовых паролей программа держит 10 тысяч базовых слов и набор правил. Правила генерируют варианты на лету – это и есть candidate generation.

Вот как выглядит процесс:

Исходное слово Правило Результат Что происходит
password .c Password Первая буква заглавная
password .u PASSWORD Все буквы заглавные
password .c.sa@.so0 P@ssw0rd Заглавная + замены a→@, o→0
password + protect + your + privacy $w$x$y$z passwordprotectyourprivacy Склейка четырёх слов
password + protect + your + privacy $w.c($x.c($y.c($z.c))) PasswordProtectYourPrivacy Склейка четырёх слов + Первая заглавная у всех
Примеры правил мутации: от простой смены регистра до комбинированных трансформаций

Каждое правило – инструкция для трансформации. Программы Passcovery, Hashcat и John the Ripper используют макроязык для описания правил. Модификатор .l переводит буквы в нижний регистр, .R переворачивает слово задом наперёд.

Окно Rules editor в Passcovery Suite: редактор правил мутаций паролей со словарём тестовых слов и примерами генерируемых вариантов
Редактор правил мутаций паролей (Rules editor) в программах Пасковери с примерами трансформаций словарных слов

Почему это работает? Мутация не изобретает слова – она имитирует поведение людей. А люди предсказуемы: по данным NIST, при требовании «сложного пароля» 82% пользователей создают комбинации вроде Password123!.

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

Какие правила мутации используются чаще всего?

Четыре паттерна покрывают 70-80% реальных паролей: "литспик" (leet-speak), смена регистра, добавление цифр и склейка слов. Программы проверяют их в первую очередь.

Паттерн Что делает Пример правила
Leet-speak (замена букв на цифры/символы) Замена букв на похожие символы: a→@, e→3, i→1, o→0, s→$ .sa@.se3
Case toggling (чередование регистра) Смена регистра: первая заглавная, все заглавные, инверсия .c, .u, .t
Цифры Добавление года, дат, последовательностей: 123, 2024, 1990 $1$2$3
Combinator Склейка двух-трёх слов из разных словарей $w$x
Четыре основных паттерна мутации паролей: leet-speak, смена регистра, добавление цифр и комбинирование слов

Эффективность мутации в цифрах

  • Словарь из 100 слов → 100 паролей
  • + правила регистра → 400 паролей
  • + leet-speak → 2000+ паролей
  • + цифры (00-99) → 200 000+ паролей

Итог: расширение пространства поиска в 2000 раз и более, без увеличения словаря.

Матрица роста вариантов: 1 слово → 4 с регистром → 20 с leet-speak → 200 с цифрами. Увеличение в 2000 раз
Каждый квадрат – вариант пароля. Мутация превращает 100 слов в 200 000 кандидатов

Синтаксис правил в Passcovery похож на Hashcat и John the Ripper, но имеет отличия. Например, $w.c$x.l означает: взять слово из первого словаря с заглавной буквой, добавить слово из второго в нижнем регистре. Полный список есть в справке к каждой из программ Пасковери; знатоки Hashcat заметят знакомые паттерны.

Когда мутация эффективна, а когда – нет?

Мутация работает, когда вы помните структуру пароля. Для случайных комбинаций вроде 7xKnmQ2 она бесполезна. Тут лучше перебор по маске.

✅ Мутация эффективна ❌ Мутация бесполезна
Помните основу: слово, имя, дату Пароль из генератора случайных символов
Пароль по логике «слово + модификация» Есть лишь "масочная" информация о возможной структуре
Известна структура: слово-цифры-символ Короткий пароль (4-6 символов), проще полный перебор
Есть данные о привычках: любимая команда, дата рождения Быстрый формат (ZIP, Office 97-2003) – чтение словаря может оказаться медленнее перебора
Сравнение сценариев применения мутации: когда атака по словарю с правилами эффективна, а когда лучше использовать brute force

Денис Гладыш, руководитель Passcovery:

«Помните, что пароль основан на словах? Составляйте словарь возможных слов и атака с мутациями подберёт пароль за минуты. Для генераторных паролей переключайтесь на маску или brute force. Это разные инструменты для разных задач.

Реальный пример: восстановление пароля бэкапа Apple iOS структуры «слово-цифры-слово». Пользователь помнил части (fre, frett, 2323, 2424), но не точную комбинацию. Мутация проверила 7000 вариантов и нашла пароль за 10 минут. Полный перебор для бэкапа Apple iOS занял бы столетия.»

Как создать правила мутации для своего случая

Откройте Редактор правил в подходящей программе Passcovery, опишите трансформации макросами и протестируйте на примерах. Это займёт время на настройку, но грамотно составленные правила сэкономят дни перебора.

Редактор правил – визуальный инструмент: вводите тестовые слова, описываете правила и сразу видите результат. Ошибки в синтаксисе заметны до запуска атаки.

Окно Rules editor с открытой легендой: быстрые примеры синтаксиса правил мутации и их результаты на тестовых словах
Легенда Rules editor с примерами синтаксиса правил мутации и детальным описанием операций

Базовый синтаксис:

Группа Макрос Действие
Словари $w Слово из первого словаря
$x Слово из второго словаря
$y Слово из третьего словаря
$z Слово из четвёртого словаря
Регистр .l Все буквы в нижний регистр
.u Все буквы в верхний регистр
.c Первая заглавная, остальные строчные
Трансформации .R Перевернуть слово (password → drowssap)
.sXY Заменить все X на Y
Справочник базовых макросов для создания правил мутации в программах Passcovery

Денис Гладыш, руководитель Passcovery:

«Начинайте с базовых правил: регистр, leet-speak, цифры. Не сработало? Усложняйте. Избыточная мутация может создать миллионы ненужных вариантов и замедлит поиск вместо ускорения.»

Готовые правила для некоторых типичных сценариев:

  • $w.c – слово с заглавной буквы
  • $w.u123 – слово прописью + «123» в конце
  • $w.sa@.se3.si1 – leet-speak замены

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

Где используется мутация паролей

Атака по словарю с правилами мутации доступна во всех продуктах Passcovery:

Все программы используют единый интерфейс и одинаковый синтаксис правил мутации.

Поддерживаемые форматы для мутации паролей: документы (Microsoft Office, OpenOffice, LibreOffice, PDF), архивы (RAR, ZIP), защищённые хранилища (iOS backup, TrueCrypt, WPA)
С Пасковери мутация паролей работает для всех популярных форматов: от офисных документов до зашифрованных архивов, бэкапов и дисков

FAQ: частые вопросы о мутации

Зависит от формата файла. ZIP классический – миллиарды/сек, RAR5 – тысячи/сек, Office 2016+ – сотни/сек. Скорость определяется алгоритмом защиты: современные форматы используют «медленные» KDF специально для защиты от перебора.

Да, до 4 словарей одновременно. Правило $w$x склеит слова из первого и второго словаря. Полезно для паролей «имя+фамилия», «слово+год», «две клички питомцев». Правило $w$x$y$z склеит слова уже из четырёх словарей.

В Редакторе правил программ Passcovery есть подсказки и моментальное отображение создаваемых правил. Правила из Hashcat (best64, dive) можно адаптировать, поскольку синтаксис похож. Но лучший набор – тот, который вы создали под свою задачу. Проанализируйте структуру забытого пароля, создайте нужный словарь, задайте нужные правила.

Если все варианты проверены, а пароль не найден. Тут два варианта: либо слова нет в словаре, либо правила не покрывают нужную трансформацию. Расширьте словарь и правила мутации или переходите к brute force и маске пароля.

По статистике Have I Been Pwned, большинство паролей следуют типовым паттернам и если ваш не нашёлся, вероятно вы просто не включили нужный шаблон. Но возможно, что потерянный пароль действительно уникален.

Автор статьи

Денис Гладыш

Денис Гладыш, совладелец и руководитель компании Пасковери – поставщика высокоскоростных программных решений с GPU ускорением для восстановления паролей к файлам популярных форматов; автор первых версий программы Accent OFFICE Password Recovery, созданных в 1999 году.

VK LinkedIn Twitter