Страница входа — самая зондируемая дверь вашей организации
Каждая публичная страница входа начинает сканироваться автоматизированными инструментами вскоре после запуска. Злоумышленники пробуют ранее утечённые имена пользователей и пароли, бомбардируют одну учётную запись угадыванием паролей или используют ботов для злоупотребления формой входа.
Эти атаки не выглядят одинаково. Иногда много попыток приходит с одного IP-адреса. Иногда одно и то же имя пользователя перепробуется с множества разных источников. Иногда утечённые пароли применяются к тысячам разных учётных записей на низкой скорости, в распределённом паттерне.
Именно поэтому статические средства защиты недостаточны. Блокировка только по IP упускает распределённые атаки и может неправомерно блокировать реальных пользователей, приходящих через общие сети. Блокировка только по учётной записи даёт злоумышленникам ещё одно преимущество — они могут блокировать много учётных записей и вызывать отказ в обслуживании. Принудительное применение CAPTCHA к каждому одиночному входу портит реальный пользовательский опыт.
Большая ошибка — полностью оставить оценку ботов и риска во время входа на сторонний облачный сервис. Эта модель создаёт внешнюю зависимость, стоимость на пользователя или оценку, проблемы видимости данных и дополнительную точку разрыва в пути аутентификации.
Защита от входа не должна быть однородной стеной. Она должна быть локальным уровнем безопасности, повышающим трение по мере роста риска, реагирующим исходя из источника и цели атаки, и не наказывающим реальных пользователей без необходимости.
Потому что защита страницы входа — это не только остановка злоумышленника, но и обеспечение возможности реальному пользователю безопасно продолжать свою работу.
Наш подход
Постепенное трение, многообластная политика и self-hosted challenge — всё на платформе, которую вы уже имеете.
Три уровня трения, а не одна жёсткая стена
Каждая политика использует три порога: предупреждение, появляющееся в аудит-логе, CAPTCHA challenge, фильтрующий автоматизацию без блокировки людей, и блокировку, полностью закрывающую дверь. Легитимные пользователи редко видят второй уровень и почти никогда — третий; злоумышленники эскалируют быстро.
Три области — сопоставьте защиту с атакой
Каждая политика применяется в одной из трёх областей: по исходному IP, по имени пользователя или по обоим вместе. Brute-force атака на одну учётную запись с одного IP перехватывается областью IP; credential stuffing по многим именам пользователей с ротирующихся IP перехватывается областью username; комбинированная область обрабатывает целевые атаки, смешивающие оба.
Self-hosted CAPTCHA — никакого внешнего облака обнаружения ботов
CAPTCHA challenge генерируется на стороне сервера как изображение, с пятью уровнями сложности, набором символов, пропускающим похожие символы (I, L, O, 0, 1), и настраиваемыми цветами, размерами и шумом. Нет Google reCAPTCHA, нет Cloudflare Turnstile, никакой платы за оценку — и самый чувствительный момент аутентификации никогда не покидает ваш периметр.
Координировано с MFA и остальным путём аутентификации
Счётчики блокировки координируются с тем же отслеживанием попыток, используемым каждым MFA-каналом. Пользователь не может brute-force один фактор, пока другой фактор ожидает на параллельной попытке, и CAPTCHA, сработавшая на шаге пароля, распространяется на остальной поток, защищающий ту же идентификацию.
Возможности
Многообластные политики — IP, имя пользователя или комбинированная
Каждая политика привязана к одной из трёх областей. Область IP перехватывает одиночного злоумышленника, бомбардирующего множество учётных записей из одной сети. Область username перехватывает credential stuffing, где каждая попытка ротирует исходный IP. Комбинированная область перехватывает целевой случай, когда известный злоумышленник фокусируется на конкретной учётной записи из конкретной сети.
Постепенные пороги — предупреждение, CAPTCHA, блокировка
Каждая политика использует три порога, эскалирующих по порядку. Порог предупреждения помечает подозрительную активность в аудит-логе без влияния на пользователя. Порог CAPTCHA ставит self-hosted image challenge перед следующей попыткой. Порог блокировки закрывает дверь на настраиваемый срок — и порядок, значения и окно затухания — всё на каждую политику.
Self-hosted image CAPTCHA с пятью уровнями сложности
CAPTCHA генерируются локально как изображения — пять уровней сложности от лёгких визуальных подсказок до сильного искажения, настраиваемые цвета и размеры для соответствия бренду, и набор символов, намеренно опускающий визуально похожие символы (I, L, O, 0, 1) для сохранения чистоты пользовательского опыта легитимного пользователя.
Никакого сторонного CAPTCHA или облака обнаружения ботов в пути аутентификации
Защита от входа генерируется, обслуживается, валидируется и аудируется полностью на платформе. Нет платы за оценку, нет внешней зависимости, нет конфиденциальных последствий отправки каждой попытки входа вендору, и нет непрозрачного сервиса scoring между вашими пользователями и вашей аутентификацией.
Координированное отслеживание попыток по всему потоку аутентификации
Неудачные попытки пароля, неудачные MFA-challenge и неудачные ответы CAPTCHA питают координированные счётчики на область политики. Злоумышленник не может brute-force один фактор, пока параллельная попытка ждёт на другом, и блокировка, инициированная на одном шаге, распространяется на каждый канал, защищающий ту же идентификацию.
Окно затухания на попытку — старые неудачи сами себя забывают
Каждая политика определяет окно затухания. Неудачные попытки старше окна перестают учитываться к текущим порогам, поэтому легитимный пользователь, трижды ошибившийся в пароле на прошлой неделе, не начинает сегодня уже на уровне CAPTCHA. Окно, форма затухания и пороговые значения — всё настраивается на каждую политику.
Аудит-след на попытку с маскированным контекстом получателя
Каждая попытка входа — успех, пересечение предупреждения, срабатывание CAPTCHA, срабатывание блокировки — записывает структурированную запись аудита с временной меткой, исходным IP, user agent, областью и результатом политики. Информация получателя (email, телефон) по умолчанию маскируется в потоке аудита, чтобы аудит-след не становился вторичным путём утечки.
Операционная глубина
Механика, делающая постепенную защиту невидимой для хороших пользователей и ясной для злоумышленников.
Внешний вид CAPTCHA настраивается на бренд
Цвет фона, цвет текста, ширина, высота, размер шрифта, межсимвольный интервал, шум-линии и шум-точки — всё настраивается. Challenge может соответствовать визуальной идентификации портала входа, который защищает, без утечки того, что задействован внешний сервис — потому что ничего внешнего не задействовано.
Набор символов намеренно исключает похожие символы
Набор символов по умолчанию пропускает I, L, O, 0 и 1 — символы, которые легко перепутать друг с другом в искажённой форме. Легитимные пользователи решают CAPTCHA быстрее и с меньшим количеством повторных попыток; защитная ценность против автоматизированных решателей сохраняется на каждом уровне сложности.
Пороги, затухание и длительность блокировки на каждую политику
Порог предупреждения, порог CAPTCHA, порог блокировки, окно затухания и длительность блокировки — всё настраивается на каждую политику. Интерфейс управления пользователями имеет другие допуски, чем публичный вход в службу поддержки или консоль администратора; один и тот же движок обслуживает их с разными числами.
Безгосударственная координация через Redis
Счётчики и состояние блокировки находятся в Redis, поэтому любой gateway pod может видеть текущее количество попыток для любой области. Горизонтально масштабированные развёртывания видят согласованное состояние без накладных расходов координации, и решение о блокировке, принятое на одном pod, немедленно видно каждому другому pod.
Поток восстановления — разблокировка администратором и освобождение по времени
Заблокированный пользователь либо ждёт истечения блокировки по собственным часам, либо разблокируется администратором через интерфейс администратора gateway. Действие восстановления само аудируется; экстренная разблокировка во время инцидента — это отслеживаемое событие, а не невидимый обходной путь.
Где команды это используют
Credential stuffing по многим учётным записям
Злоумышленник со списком утечённых имён пользователей и паролей ротирует IP и пробует каждую пару на странице входа. Политики с областью username перехватывают этот паттерн — счётчики растут на учётную запись, уровень CAPTCHA фильтрует автоматизацию, и блокировка закрывает дверь для повторяющихся целей.
Brute force против известной учётной записи
Один злоумышленник, один исходный IP, одна целевая учётная запись, много угадываний. Политики с областью IP перехватывают это за секунды — предупреждение появляется в аудите, уровень CAPTCHA фильтрует скриптовые попытки, и длительность блокировки умножается достаточно быстро, чтобы атака стала экономически невыгодной.
Bot-driven спам-входы
Автоматизированные агенты пытаются войти для скрапинга, спама или ожидания разблокированной учётной записи. Уровень CAPTCHA — именно там, где они перехватываются — генерируется локально, валидируется локально и полностью вне досягаемости сервисов автоматизированного решения CAPTCHA, нацеленных на внешние SaaS-challenge.
Доказательства соответствия при мониторинге входа
PCI DSS, HIPAA и ISO 27001 требуют доказательств наличия мониторинга неудачных входов, с порогами и аудит-следами. Поток аудита на каждую попытку даёт аудитору единую временную линию для проверки, с порогами, выраженными как конфигурация, а не написанная проза.
Часто задаваемые вопросы
Какие паттерны атак охвачены?
Использует ли уровень CAPTCHA Google reCAPTCHA или Cloudflare Turnstile?
Когда использовать область IP, область username или комбинированную?
Как пользователь восстанавливается после блокировки?
Когда сбрасывается счётчик неудачных попыток?
Защищайте страницу входа без блокировки реальных пользователей
Трёхуровневое постепенное трение, трёхобластное покрытие политики и self-hosted CAPTCHA — всё на платформе, которую вы уже имеете. Мы проведём через живое развёртывание на ваших приложениях.