
Согласно исследованиям «СОЛАР», в I квартале 2025 года выросло число хакерских атак на ИТ-системы российских организаций. 94% из них — это грубый перебор паролей, или брутфорс. Число таких атак увеличилось по сравнению с предыдущим кварталом в 2,7 раз, до 570 тысяч.
Брутфорс-атака может выглядеть примитивной и затратной для хакера. Казалось бы, более выгодны психологические методы, когда злоумышленник связывается с жертвой напрямую и различными уловками получает от нее пароль. Но, как мы видим, брутфорс по-прежнему популярен. Прежде всего, хакеры надеются, что жертва просто поставила несложный пароль и не позаботилась о дополнительной защите сети.
В этой статье мы подробно поговорим о брутфорсе. Разберем принцип его работы и виды, опасность и способы защиты.
Что такое брутфорс
Брутфорс — это тип хакерской атаки, подразумевающий простой подбор:
паролей;
ключей шифрования;
- логинов;
- хешей пароля.
Эти данные подбираются для доступа:
- к панелям администратора сайтов (Wordpress и др.);
- серверам;
- учетным записям в социальных сетях, банковских и иных сервисах;
- корпоративным и частным сетям;
- базам данных;
- сетям Wi-Fi;
- удаленным рабочим столам (RDP);
- почтовым сервисам.
Как работает брутфорс
Принцип брутфорса — в нахождении верных данных для входа в чужую учетную запись. Данные могут быть просто подобраны из тысяч возможных вариантов или отобраны по ряду параметров. Для брутфорса применяют специальное ПО, многие из этих программ легальны и используются специалистами по кибербезопасности.
Брутфорс — задача, затратная для сервера. Поэтому для атаки иногда выделяют управляемую сеть взломанных устройств — ботнеты.
Ботнет — это сеть компьютеров и/или устройств, зараженных вредоносными программами и контролируемых через эти программы хакером.
В такую сеть объединяют различные универсальные устройства, такие как компьютеры, смартфоны, планшеты, серверы, а также узкоспециализированные гаджеты интернета вещей (IoT). Ботнет распределяет нагрузку между разными устройствами и помогает избежать блокировки по IP.
Поскольку брутфорс требует много ресурсов, кроме использования ботнетов, для такой атаки часто используют видеокарты и графические процессоры (GPU), способные выполнять миллиарды операций в секунду.
Основной набор программ для брутфорса:
Aircrack-ng — инструмент для атаки Wi-Fi-сетей.
Hydra — ПО для атаки протоколов RDP, SSH, HTTP.
Hashcat — программа для работы со сложными хэш-функциями.
С помощью вычислительных машин и специальных программ хакер подбирает множество вариантов пароля к системе. Подбор автоматизированный, программы пробуют тысячи вариантов пароля в секунду. Большинство из них, конечно, не подойдут, но в какой-то момент система подберет верную комбинацию. С ней-то хакер и входит в систему.
Защитите свой сайт от брутфорса с BitNinja! Инструмент автоматически блокирует атаки и самообучается с каждой новой угрозой. Подробности об услуге здесь.
Виды брутфорс-атак
Приведем основные разновидности брутфорс-атак. Их знание поможет понять, как работает брутфорс, и проверить вашу систему на устойчивость к этой атаке.
Простой перебор
Самый старый и примитивный вид брутфорса. Хакер просто пробует все возможные комбинации определенной длины (3, 4, 5 символов и т. д.). Простой перебор помогает легко подобрать короткий пароль без спецсимволов и букв разного регистра.
Чтобы подобрать 4-циферную комбинацию, нужно перебрать всего лишь 10 тысяч вариантов. Делается это практически мгновенно — с помощью программ автоматического брутфорса. А вот у буквенно-цифрового пароля из 12 символов вариантов может быть 62 (число вариантов символов) ^ 12 (число символов) = более 3,22 секстиллиона. Инструменту для брутфорса PassGAN придется взламывать такой пароль 2000 лет.
Перебор по словарю
Здесь для подбора применяют слова или фразы из готового списка (словаря). В таких списках собирают самые частые вариации паролей, на основе предыдущих атак, утечек или исследований. Они включают распространенные фразы из литературы, поисковых запросов и т. д. В таких словарях могут быть миллионы позиций.
В Оксфордском словаре английского языка, например, 301 тысяча слов. С этим числом вариантов взломать аккаунт удастся гораздо быстрее, чем с миллионами вариантов при простом переборе.
Гибридная атака
Взломщик пробует не только комбинации из словаря, но и возможные их вариации. Например, разновидности с очень похожими символами — @dm1n вместо admin или Pa$$w0rd вместо password. Также хакер может добавить уже известные ему символы или те, которые с высокой вероятностью могут быть частью пароля. Например, дата рождения или окончания вуза/школы, номер дома или рабочего кабинета или т. д. Эти данные хакер может найти в открытом доступе или спросить у самой жертвы (то есть воспользоваться приемами социальной инженерии).
Обратная атака
Хакер пробует один пароль для нескольких учетных записей. Взломщик подразумевает, что администраторы сети задали один пароль для всех аккаунтов.
Подстановка учетных данных
Взломщик применяет определенную пару «логин-пароль». Эти комбинации хакеры готовят заранее, на основе исследований или наблюдений за предыдущими атаками. Например, хакеры во время атак обнаружили, что жертвы чаще всего используют пароль «12345», а в качестве логина — «admin». В ходе последующих хакерских атак они используют эту пару логин-пароль в первую очередь. Также они могут воспользоваться исследовательскими отчетами, например, от компаний, занимающихся информационной безопасностью, или данными утечек.
Брут-чек
После успешной атаки на пользовательский аккаунт хакер ищет в нем пароли и логины от других учетных записей. Онлайн-сервисы и другие службы при регистрации часто генерируют пары «логин-пароль» автоматически и высылают их на электронную почту, на что и рассчитывают злоумышленники.
Атака по хэшу
Сервисы хранят пароли в специальных базах данных, где они преобразованы в хэш — определенную строку букв и цифр. Когда при входе в сервис пользователь вводит пароль, сервис хэширует его. Затем система сопоставляет хэш из введенного пароля с хэшем в базе данных. Если хэши не совпадают, система вход не позволяет.
После получения доступа к хэшам из базы данных или их «утечки» хакер находит нужный из них и применяет его для входа в сервис. Значение хэша определяется по радужным таблицам, которые содержат соответствие хэшей и паролей.
Чем опасен брутфорс
После успешной атаки и авторизации хакер получает доступ к системе. Перечислим возможные последствия этого:
- Доступ к данным системы, аккаунта или сети. Например, к коммерческой тайне, кодам доступа к банковским счетам, сведениям об информационной безопасности и др.
- Кража денег. Если во взломанной сети есть банковские реквизиты и пароли от банков, хакер может зайти в банковские аккаунты и перевести себе средства.
- Управление взломанным аккаунтом и всем сервисом, если у взломанного аккаунта есть такие права.
Дальнейшие последствия взлома:
- Урон безопасности сети или сервису. Хакеры смогут воспользоваться сервисом или его данными во вред владельцам и пользователям.
- Репутационный ущерб для компании — владельца взломанного сервиса. После атаки пользователи и контрагенты не станут доверять компании. А на восстановление репутации могут уйти месяцы, если не годы.
- Претензии от регулирующих органов. Они могут обратить внимание на взлом и посчитать его следствием нарушения правил безопасности владельцем. Затем компания может лишиться лицензии безопасности или получить штраф.
- Прямые финансовые убытки. Отказ сервиса (или сайта) из-за атаки и взлома может замедлить или парализовать продажи. Как следствие, падение доходов компании, а кроме того, потенциальные затраты на восстановление работоспособности сервиса.
Методы защиты
Чтобы брутфорс не был угрозой для владельца онлайн-сервиса, нужны меры защиты. Ими пользуется практически каждый системный администратор.
Сильный пароль
Прежде всего, нужно подобрать надежный пароль, который брутфорс-скрипты будут очень долго подбирать. У него должно быть минимум 15 символов, среди которых — заглавные и строчные буквы, спецсимволы и цифры. Согласно аналитикам Hive Systems, такую комбинацию 12 видеокарт RTX 5090 будут подбирать квинтиллион лет. А вот 9 символов, где будут только цифры, те же видеокарты подберут всего за 2 часа. Дополнительное условие здесь — хэш bcrypt (10). Это стандартный хэш с 10 раундами, то есть пароль при хэшировании проходит 10 итераций преобразования.
Генерировать такой пароль нужно автоматически — с помощью онлайн-сервисов или офлайн-программ. Первые рекомендовать сложно, поскольку вряд ли кому известно точно, запоминают ли эти сервисы пароли и используют ли их в дальнейшем. Поэтому для генерации лучше применять офлайн-средства. В Debian, например, в этом помогут pwgen или OpenSSL.
Одну и ту же комбинацию можно задавать только для одного аккаунта или сервиса. Нельзя передавать пароль через мессенджер, социальную сеть или e-mail, хранить его в менеджере паролей браузера или в общедоступном виде. Работать с паролем можно только с устройства, просканированного свежей версией антивируса и через защищенное соединение.
Для хранения паролей подойдет защищенный менеджер паролей. Например, 1Password или Keeper. Требования к менеджеру:
- Нулевое доверие, то есть менеджер не запоминает устройство при обращении. Нулевое знание — у поставщика менеджера нет доступа к паролям.
- Регулярный мониторинг даркнета на утечки паролей.
- Сертификаты безопасности и прохождение независимого аудита.
Пароль нужно регулярно менять. Идеально, если вы делаете это дважды в месяц. Как минимум замену нужно делать раз в год. Так вы исключите возможную «утечку».
Логирование авторизаций
Включите ведение журналов входов пользователей. С этими журналами вы сможете отслеживать частые и неудачные попытки входа, характерные для брутфорса. После этого вы сможете оперативно принять меры безопасности.
Debian Linux ведет системные логи авторизации в директории /var/log/auth.log.
Ограничение активности, числа и частоты авторизации
Установите лимит частоты и числа авторизаций с одного устройства или IP-адреса. По его достижении сервис заблокирует вход, и набрать пароль какое-то время будет нельзя. Также можно настроить постепенное увеличение интервала запрета логина при каждой неудачной попытке. Включите функцию заморозки аккаунта. Если какая-то учетная запись проявит подозрительную активность или на нее будут жалобы от владельца, она будет заблокирована.
Блокировка по IP есть в нашем Личном кабинете. При трех попытках входа с неправильным паролем адрес блокируется на 20 секунд. Если попытки продолжатся, IP будет заблокирован полностью. Войти в ЛК не получится даже с правильными данными.
Разрешите доступ к базам данных только авторизованным пользователям. Они не должны быть открыты всем пользователям интернета. Сделать это можно в панели управления базой или командной строке. Именно открытые базы данных становятся лазейкой для брутфорса.
IPBan — один из популярных инструментов для блокировки трафика по IP. Он фиксирует ситуации, когда с одного IP-адреса исходит много попыток авторизации. После этого он запрещает посещение сервера с этого IP. Это предотвращает падение производительности сервера, которое вызывают многократные его посещения.
IPBan защищает соединение протоколов SMTP, SSL, RDP, а также базы данных SQL и MySQL.
Еще одна программа для блокировки IP — Fail2ban. Она читает логи веб-сервера, SSH-подключения, почтового сервиса и ищет признаки подозрительных визитов. Если Fail2ban находит таковые, она блокирует IP-адреса таких визитов. Эта программа больше подходит для серверов на Linux, чем Windows.
Двухфакторная аутентификация
Один пароль давно не считается гарантией полной защиты аккаунта. После его успешного ввода лучше подтвердить вход на другом устройстве, где вход уже выполнен. Этот способ идентификации называется двухфакторной аутентификацией (2FA). С помощью чего можно выполнить 2FA:
код в мобильном приложении;
SMS на номер, привязанный к аккаунту;
биометрические данные (отпечаток пальца, радужная оболочка глаза);
USB-носитель с токеном идентификации или электронной подписью.
Если хакеры подобрали пароль и получили сообщение о 2FA, они могут обратиться в техподдержку с просьбой подсказать код. Проведите инструктаж с техподдержкой о том, что код ни в коем случае нельзя сообщать.
IAM (система управления идентификацией и доступом)
Система управления идентификацией и доступом поможет комплексно управлять безопасностью вашей сети или сервера. Ее функции:
- Управление идентификационными данными (хранение логинов и паролей, их создание и удаление);
- Распределение прав доступа между группами пользователей (администраторы, сотрудники и др.);
- Проверка личности пользователей при их входе в систему. Для этого может применяться многофакторная аутентификация;
- Логирование активности и авторизаций учетных записей.
IAM — централизованная система, в отличие от отдельных инструментов логирования или бана подозрительных соединений. Она может быть локальной (на сервере) или облачной (Google Cloud IAM, AWS). Для большей безопасности рекомендуются локальные решения.
CAPTCHA
Эта форма давно применяется, чтоб определить, человек или бот открыл страницу или пытается зайти в учетную запись. «Капча» выводит измененный текст, некачественную аудиозапись или головоломку, которые должен разгадать посетитель. Роботы научились разгадывать несложные и устаревшие формы CAPTCHA. Поэтому загадки нужно регулярно обновлять, а также придумывать к ним достаточно сложные ответы. В любом случае наличие «капчи» существенно затормозит брутфорс.
Наш Личный кабинет защищен reCAPTCHA. Для входа нужно отметить чекбокс в специальной форме. Иногда система показывает ряд изображений и просит отметить некоторые из них. Еще у нас есть и двухфакторная аутентификация — с помощью QR-кода или специального ключа.
Соль и перец
В хэш пароля можно добавить соль (salt). Так называют дополнительную строку, которая добавляется перед хэшированием. Хакеры не смогут подобрать пароль по радужным таблицам хэшей, если к нему добавлена строка соли. Еще больше усложнит определение пароля перец (pepper). Это значение, которое добавляется ко всем паролям, при этом в базе данных она не хранится.
Соль в пароли может добавить система сайтов Wordpress. Также «посолить» пароль можно с помощью хеш-функции bcrypt.
Как защититься от брутфорса (пошаговый чек-лист)
- Установите сильный пароль. У него должно быть минимум 15 символов (цифры, буквы разного регистра, спецсимволы). Не передавайте его по email и соцсетям, храните его в безопасных менеджерах паролей.
- Мониторьте активность и авторизации на сервере, в том числе с помощью специальных инструментов. Если заметите подозрительные попытки входа, завершайте сессию и блокируйте IP-адрес, с которого они происходят. Если взломана учетная запись, заблокируйте ее.
- Включите двухфакторную аутентификацию. После успешного ввода пароля вам нужно будет подтвердить вход на другом устройстве, ввести код из приложения или SMS, использовать USB-носитель или биометрию.
- Включите капчу. Это форма с головоломкой, которую разгадывает человек. Она существенно затруднит попытки входа для взломщика.
- Добавьте в хэш пароля «соль» и «перец». Первый — это дополнительная строка в хэше, которая не позволит подобрать его по радужным таблицам. Второй — это дополнительное значение, которое не хранится в базе данных.