hostprofi.ru
Подобрать хостинг
Термин·буква B

Brute-force атака

краткое определение

Атака методом перебора паролей или ключей для взлома аутентификации на сервере или веб-форме.

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

Как работает

Базовый brute-force проверяет все комбинации символов. Для пароля из 8 символов (буквы + цифры) это 62^8 ≈ 218 триллионов вариантов. Современные GPU проверяют 10+ миллиардов хешей в секунду — такой пароль взламывается за несколько часов. Поэтому требование минимальной длины 12+ символов с спецсимволами обязательно.

Словарные атаки (dictionary attack) используют списки популярных паролей, утечек из баз данных (Have I Been Pwned содержит 10+ млрд скомпрометированных паролей) и модифицированных вариаций. Credential stuffing — автоматическая проверка логин-пароль пар из утечек на других сервисах.

Цели атак

  • SSH — перебор паролей к root и другим пользователям. Стандартный порт 22 сканируется ботами непрерывно.
  • Веб-формы — admin-панели WordPress (wp-login.php), phpMyAdmin, корпоративные порталы.
  • FTP, RDP, Telnet — сетевые сервисы с парольной аутентификацией.
  • API-endpoints — перебор токенов и сессионных ключей в заголовках запросов.

История

Термин «brute force» в криптографии использовался с 1970-х. Первые автоматизированные инструменты для взлома паролей появились в 1990-х. Hydra (1999) и Medusa (2006) стали стандартными инструментами пентестеров и злоумышленников. Выпуск Rockyou.txt — списка из 14 миллионов паролей из взлома RockYou в 2009 году — установил стандарт словаря для атак на следующие 15 лет.

Защита

Многоуровневая защита:

  1. Fail2ban — блокирует IP после N неудачных попыток. Читает /var/log/auth.log, добавляет iptables-правила. Стандарт для SSH-защиты.
  2. Rate limitingNginx ограничивает количество запросов к /wp-login.php, /admin/, /api/auth.
  3. MFA — многофакторная аутентификация делает перебор паролей бесполезным.
  4. Смена SSH-порта — не защита, но снижает шум в логах.
  5. UFW — разрешить SSH только с конкретных IP.
  6. SSH-ключи — отключить парольную аутентификацию в sshd_config: PasswordAuthentication no.

На что обращать внимание

Slow brute-force атаки делают по 1-2 попытки в час с разных IP — не попадают в Fail2ban с дефолтными настройками. Злоумышленники используют прокси и Tor для смены IP. IPS-системы с поведенческим анализом лучше справляются с распределёнными атаками. Credential stuffing не брутфорс в классическом смысле — пароль угадывать не нужно, достаточно утечки.

Мониторинг попыток взлома

Команды для анализа атак в реальном времени:

# Количество неудачных SSH-попыток по IP
grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -rn | head

# Активные соединения на SSH
ss -tn src :22

# Логи через journalctl
journalctl -u sshd --since "1 hour ago" | grep "Failed"

Grafana с node_exporter отображает rate неудачных аутентификаций в реальном времени. Алерт на превышение порога (> 10 неудач/мин) позволяет реагировать до исчерпания ресурсов.

Другие термины