Открыть сервисСервис

Взлом паролей: методы и защита

Взлом пароля — это процесс получения несанкционированного доступа к защищённой учётной записи или системе путём подбора, перехвата или обхода механизма аутентификации. Методы взлома паролей изучаются в рамках информационной безопасности и криптографии; знание атакующих техник необходимо администраторам и разработчикам для построения устойчивых систем защиты.

Классификация атак на пароли

Атаки на пароли делятся на две большие категории: активные (offline), проводимые на копию хеша пароля, и пассивные (online), выполняемые непосредственно на сервисе аутентификации.

Словарная атака

Словарная атака (dictionary attack) основана на переборе заранее подготовленного списка наиболее распространённых паролей и вариаций слов из словаря. Атакующий применяет к каждому кандидату ту же функцию хеширования, что и сервер, и сравнивает результат с сохранённым хешем. Эффективность метода резко возрастает, если пользователь использует бытовые слова, имена, даты или простые замены символов (например, «пароль123» вместо «пароль»).

Перебор (брутфорк)

Брутфорк-атака заключается в последовательной проверке всех возможных комбинаций заданного алфавита и длины. Полный перебор растёт экспоненциально: для пароля длиной 8 символов из набора из 62 символов (латинские буквы в двух регистрах плюс цифры) пространство составляет около 2,18×10¹⁴ вариантов. На практике брутфорк по сети почти всегда неосуществим из-за ограничений скорости соединения и защитных механизмов сервера, однако на копии хеша при отсутствии адаптивных алгоритмов он может быть выполнен на графическом процессоре за считанные часы.

Атака по маскам

Атака по маскам (mask attack) — разновидность перебора, при которой атакующий задаёт шаблон пароля: длину, позиции цифр, спецсимволов и заглавных букв. Метод эффективен, если известны привычки пользователя или корпоративная политика требует определённого формата (например, «Буква + 6 цифр + знак !»).

Атака на основе радужных таблиц

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

Перехват и фишинг

Помимо перебора хешей, распространены атаки на канал передачи: перехват пароля в открытом виде при отсутствии TLS, подмена страницы аутентификации (фишинг), вредоносные клавиатурные шпионы (keylogger) и перехват одноразовых кодов. Эти методы не требуют взлома криптографии и часто оказываются успешнее криптоанализа.

Криптографическая стойкость хеширования

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

АлгоритмОсобенностиУязвимость
MD5Быстрый, 128-битный выходПрактически взломан, высокая скорость перебора
SHA-1168-битная стойкостьРекомендуется отказаться от использования для паролей
bcryptНамеренно медленный, настраиваемый cost-факторСтойкий к аппаратному перебору
PBKDF2Итеративный, с настраиваемым числом раундовСтойкий при корректных параметрах
Argon2Победитель конкурса Password Hashing Competition (2015)Устойчив к GPU- и ASIC-атакам

Использование быстрых хешей (MD5, SHA-1, SHA-256 без итераций) без соли делает хранение паролей критически уязвимым: при утечке базы данных злоумышленник может проверить миллиарды кандидатов в секунду на одном видеокарте.

Средства автоматизации

Для тестирования стойкости паролей используются специализированные инструменты: John the Ripper, Hashcat, Hydra, Ophcrack. Первые два работают с хешами в офлайн-режиме, остальные — с сетевыми сервисами. Инструменты поддерживают различные режимы: словарные атаки, перебор, комбинированные атаки, а также джентльменские атаки с учётом правил мутации (правила Хашиката). Использование подобных инструментов допустимо только на собственных системах или с явного разрешения владельца (пентест).

Методы защиты

Основные меры, затрудняющие взлом пароля:

  • Длина пароля. Длина 12 и более символов экспоненциально увеличивает пространство перебора.
  • Сложность и энтропия. Случайно сгенерированный пароль из 4 классов символов значительно устойчивее осмысленной фразы, хотя длинные парольные фразы (passphrases) из 5–7 случайных слов также обладают высокой энтропией.
  • Адаптивное хеширование. bcrypt, Argon2 и PBKDF2 с высоким числом итераций замедляют офлайн-перебор в тысячи раз.
  • Соль. Уникальная соль для каждого пользователя предотвращает использование радужных таблиц и массовое взламывание одинаковых хешей.
  • Ограничение попыток и блокировка. Серверное ограничение числа попыток входа, CAPTCHA и экспоненциальная задержка нейтрализуют онлайн-перебор.
  • Многофакторная аутентификация. Даже при утечке пароля второй фактор (SMS, аппаратный ключ, приложение-аутентификатор) блокирует доступ.
  • Менеджеры паролей. Генерация и хранение уникальных случайных паролей для каждого сервиса исключает переиспользование.

Правовые аспекты в России

Несанкционированный доступ к компьютерной информации, включая взлом паролей, квалифицируется по статье 272 Уголовного кодекса Российской Федерации и наказывается штрафом, обязательными работами или лишением свободы до семи лет (до десяти лет при совершении группой лиц). Инструменты взлома паролей не запрещены к распространению, но их применение вне рамок легального тестирования на безопасность образует состав преступления.

Применение в легитимной практике

Проверка стойкости паролей проводится в рамках аудита безопасности: специалисты получают хеш-дамп (обычно с разрешения заказчика) и оценивают, сколько паролей будут скомпрометированы при реальной утечке. Результаты используются для корректировки политики паролей, внедрения адаптивных алгоритмов и обучения пользователей.

Источники:

  • Нист-специализация SP 800-63B «Digital Identity Guidelines» (NIST)
  • Оуэнс Дж., Мате М., Меркель Д. «Password Storage Cheat Sheet», OWASP
  • Пёрсин Дж. «Serious Cryptography», No Starch Press, 2017
  • Проект Hashcat: документация и технические статьи
  • Уголовный кодекс Российской Федерации, статья 272
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru