Как защитить корпоративную сеть от password spraying: ограничение попыток и мониторинг

Вы просыпаетесь утром и видите в логах — 300 попыток входа в систему за последние 10 минут. Все с одного IP. Все — с одинаковыми паролями: Password123, Winter2024, Company2024. Имена пользователей — реальные, из вашего AD. Это не ошибка. Это password spraying.

Это не брутфорс. Это не взлом по слабому паролю одного человека. Это систематический, тихий, почти невидимый удар по вашей инфраструктуре. И если вы не ограничиваете попытки входа и не мониторите аномалии — вы уже проиграли.

Что такое password spraying и почему он опасен

Password spraying — это атака, когда злоумышленник перебирает один-два популярных пароля на множестве учётных записей. Вместо того чтобы пытаться взломать одного пользователя 1000 раз, он пробует 100 пользователей по 10 раз. Это работает, потому что:

  • Многие сотрудники используют простые пароли: 123456, qwerty, имя+год.
  • Системы по умолчанию не блокируют учётки после нескольких неудачных попыток — чтобы не заблокировать случайно забывшего пароль сотрудника.
  • Атакующий знает: если 5% сотрудников используют Company2024 — он получит доступ к 50 учёткам в компании из 1000 человек.

Опасность в том, что такие атаки почти не вызывают тревоги. Нет 500 попыток подряд на одну учётку — значит, нет блокировки. Нет резкого скачка нагрузки — значит, нет алерта. Атака идёт медленно, как капля воды. И в итоге — у злоумышленника есть доступ к почте, VPN, облачным сервисам, CRM. И он уже внутри.

Как остановить password spraying: два столпа защиты

Защита от password spraying строится на двух китах:

  1. Ограничение попыток входа — чтобы атака не могла продолжаться.
  2. Мониторинг аномалий — чтобы вы заметили её, пока она ещё не нанесла ущерб.

Один без другого — как замок без камеры. Вы можете закрыть дверь, но если никто не смотрит, кто её пытается вскрыть — это бесполезно.

Ограничение попыток входа: как настроить правильно

Многие компании настраивают блокировку учётной записи после 5–10 неудачных попыток. Это неправильно для password spraying.

Почему? Потому что атакующий делает 2–3 попытки на каждую учётку. Если вы блокируете после 5 попыток — вы блокируете своих сотрудников, которые забыли пароль. А атакующий просто переходит к следующей учётке. И так до тех пор, пока не найдёт слабое звено.

Правильный подход — блокировка по IP-адресу, а не по учётке.

Настройте так:

  • После 3–5 неудачных попыток входа с одного IP — блокируйте этот IP на 15–30 минут.
  • После 3 таких блокировок IP за сутки — добавляйте его в чёрный список на 24 часа.
  • Не блокируйте учётки. Блокируйте источник.

Почему так? Потому что злоумышленник использует один IP (или небольшой пул) для атаки. А ваш сотрудник — нет. Он не будет пытаться войти с 10 разных IP подряд. Он захочет просто ввести пароль ещё раз — с того же устройства.

Пример из практики: в одной компании после включения блокировки по IP атака, которая длилась 3 дня, закончилась за 17 минут. Атакующий просто ушёл — ему не хватило ресурсов на сотни IP.

Мониторинг: что смотреть и как

Ограничения — это щит. Мониторинг — это глаза. Без них вы не узнаете, что атака идёт, пока не начнётся утечка данных.

Вот что нужно отслеживать в реальном времени:

  • Количество неудачных попыток входа с одного IP за 5 минут — если больше 10, это подозрительно.
  • Количество уникальных учёток, с которыми произошла неудачная попытка за 10 минут — если больше 15, это password spraying.
  • Совпадение типов паролей: если 5 разных пользователей пытаются войти с Password123 — это не совпадение, это атака.
  • Попытки входа в неактивные учётки (например, бывшие сотрудники, которые уже не работают, но не были удалены).
  • Входы с географически необычных мест: если сотрудник из Москвы в 3 часа ночи пытается войти из Кении — это тревога.

Эти сигналы нужно собирать в одном месте — SIEM (Security Information and Event Management). Если у вас его нет — начните с простого: настройте логи в Azure AD, Microsoft Defender for Identity или в вашем Active Directory и отправляйте их в Grafana или ELK. Даже базовый мониторинг с алертами по этим параметрам — уже огромный шаг вперёд.

Важно: не настраивайте алерты на каждую попытку. Иначе вы будете получать 200 уведомлений в день, и перестанете их читать. Настройте алерты только на аномалии — те, которые не могут быть случайными.

Сравнение подходов: что работает, а что — нет

Вот как выглядят разные подходы к защите от password spraying на практике:

Подход Эффективность против password spraying Риск ложных срабатываний Сложность внедрения Подходит для малого бизнеса?
Блокировка учётки после 5 попыток Низкая Высокий Низкая Да, но не рекомендуется
Блокировка IP после 3–5 попыток Высокая Низкий Средняя Да
Мониторинг аномалий (15+ учёток + 1 IP) Очень высокая Низкий Средняя-высокая Только с SIEM
Многофакторная аутентификация (MFA) Очень высокая Нулевой Низкая Да, обязательно
Только сложные пароли без ограничений Низкая Низкий Низкая Нет — не решает проблему

Видите? Самый эффективный подход — комбинация: MFA + блокировка по IP + мониторинг аномалий. Но если вы можете выбрать только одно — выбирайте MFA. Оно не останавливает атаку, но делает её бесполезной.

Что выбрать в зависимости от вашей ситуации

Не у всех одинаковые ресурсы. Вот как действовать, если:

Ситуация 1: У вас маленькая компания (до 50 сотрудников), нет IT-отдела

  • Включите MFA во всех облачных сервисах (Office 365, Google Workspace, Zoom, Dropbox).
  • Включите блокировку IP в Azure AD (если используете Microsoft) или в вашем облачном провайдере — это бесплатно.
  • Проверьте список учёток в AD: удалите всех бывших сотрудников. Не оставляйте “мёртвые” учётки — они любимая мишень.
  • Попросите всех сменить пароли на случайные, не менее 12 символов. Используйте встроенный в Microsoft 365 инструмент «Пароли с низким рейтингом» — он покажет, кто использует 123456.

Это займёт 2 часа. Защита будет 90%.

Ситуация 2: Средняя компания (50–500 сотрудников), есть IT-отдел

  • Включите MFA для всех.
  • Настройте блокировку IP после 3–5 неудачных попыток в течение 5 минут.
  • Настройте алерты в SIEM (например, Splunk, Microsoft Sentinel) на: 10+ неудачных попыток с одного IP, 15+ учёток за 10 минут.
  • Запустите скрипт, который раз в неделю проверяет: кто не менял пароль 90+ дней — и отправляет напоминание.
  • Проверьте логи раз в неделю: есть ли попытки входа с IP из стран, где у вас нет офисов.

Ситуация 3: Крупная компания (500+), есть SOC

  • Все вышеперечисленное + автоматическое реагирование (SOAR): если сработал алерт — автоматически блокируйте IP и отправляйте уведомление в Slack/Teams.
  • Используйте поведенческий анализ: если сотрудник впервые за год входит с IP в Китае — требуйте дополнительную верификацию.
  • Подключите к мониторингу не только AD, но и RDP, VPN, SSO-провайдеры.
  • Проводите раз в квартал “пенетрационное тестирование” с фокусом на password spraying — имитируйте атаку и смотрите, сработают ли ваши меры.

Частые ошибки, которые делают даже опытные команды

  1. Блокируют учётки, а не IP — это создаёт хаос в поддержке, но не останавливает атаку.
  2. Не удаляют учётки бывших сотрудников — в каждой компании есть 5–15 таких “призраков”. Они — лёгкий путь для злоумышленника.
  3. Считают, что MFA — это “дополнительно” — нет, это база. Без MFA password spraying почти всегда успешен.
  4. Игнорируют логи — если вы не смотрите на них 3 месяца, а потом вдруг видите 2000 попыток — вы уже поздно.
  5. Думают, что “у нас нет ценных данных” — даже почта сотрудника — это ключ к корпоративной сети. Через неё можно сбросить пароли, получить доступ к облачным хранилищам, отправить фишинговые письма от имени компании.

Как сделать правильно: пошаговый план

Вот что делать прямо сейчас, если вы хотите защитить сеть от password spraying:

  1. Проверьте список учёток в Active Directory. Удалите всех бывших сотрудников. Удалите учётки с названиями вроде “admin”, “test”, “user1”. Оставьте только активные, реальные.
  2. Включите MFA для всех пользователей. Даже для администраторов. Даже для тех, кто работает только внутри сети. Это не опционально — это обязательный стандарт.
  3. Настройте блокировку IP после 3–5 неудачных попыток входа за 5 минут. В Azure AD — это “Conditional Access” + “Sign-in risk policy”. В Windows Server — через Group Policy и PowerShell-скрипты с логами.
  4. Настройте алерты на: более 10 неудачных попыток с одного IP, более 15 уникальных учёток за 10 минут. Используйте встроенные инструменты (например, Microsoft Defender for Identity) или бесплатный ELK-стек.
  5. Проведите аудит паролей. Включите политику “не использовать пароли из списка слабых”. В Microsoft 365 — это “Password Protection” с базой “Blocked Passwords”.
  6. Проверяйте логи раз в неделю. Не ждите, пока сработает алерт. Смотрите сами: есть ли попытки входа с необычных IP, в необычное время, на неактивные учётки.

Этот план — не теория. Это то, что мы делаем в каждой компании, где приходим на аудит. За 2 недели — и вы уже в 10 раз безопаснее, чем 90% конкурентов.

Итог: что делать прямо сейчас

Если вы читаете это — значит, вы уже на шаг впереди. Потому что большинство не знает, что такое password spraying, пока не теряет данные.

Вот ваша задача на сегодня:

  • Если у вас меньше 50 сотрудников — включите MFA и удалите мёртвые учётки. Это займёт 30 минут.
  • Если у вас больше — настройте блокировку IP и алерты на аномалии. Используйте встроенные инструменты Microsoft или Google — не покупайте ничего.
  • Проверьте, есть ли у вас учётки, которые не меняли пароль больше 6 месяцев — сбросьте их.

Не ждите, пока кто-то взломает почту CEO. Не ждите, пока появится статья в СМИ: “Компания X потеряла данные из-за простого пароля”.

Вы уже знаете, как это работает. Теперь сделайте так, чтобы у вас этого не было.

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

Оцените статью
PEFile — Безопасность и технологии простым языком