Антибрут: защита админки и форм
Многоуровневая система противодействия brute-force атакам на административную панель и спам-рассылкам через формы сайта. Автоматическая блокировка агрессивных IP-адресов, прогрессивные задержки и мгновенные уведомления в Telegram, Max и по электронной почте.
Brute-force атака остаётся самым распространённым методом несанкционированного доступа к административным панелям сайтов. Злоумышленник запускает автоматизированный скрипт, который за считанные минуты перебирает тысячи комбинаций логин-пароль, пытаясь подобрать действующие учётные данные. Если стандартная защита ограничивается лишь визуальной капчей, современные инструменты обходят её за доли секунды с помощью нейросетевых распознавателей.
Параллельно с атаками на вход злоумышленники массово атакуют формы обратной связи, заказов и комментариев, используя их как канал для спама, фишинговых ссылок и тестирования уязвимостей. Скрипт Антибрут закрывает обе угрозы: контролирует частоту запросов к любым защищённым точкам сайта, автоматически блокирует агрессивные IP-адреса и мгновенно оповещает администратора о каждом инциденте через Telegram или электронную почту.
Принцип работы Антибрута
Запрос
Попытка входа или отправка формы поступает на сервер
Идентификация
Определение IP, подсчёт попыток, проверка чёрного списка
Анализ
Сравнение с порогами лимитов, оценка уровня угрозы
Решение
Пропуск, задержка, временная или перманентная блокировка
Уведомление
Telegram, e-mail, запись в лог с полной детализацией
Защита авторизации
Полный контроль над попытками входа в административную панель и публичную часть сайта.
- Настраиваемый лимит неудачных попыток входа с одного IP
- Прогрессивная блокировка: 5 мин, 30 мин, 2 часа, сутки, навсегда
- Раздельные пороги для /bitrix/admin/ и публичной авторизации
- Белый список IP — доверенные адреса не блокируются никогда
- Фиксация логина, по которому производился перебор
Защита форм сайта
Контроль частоты отправки любых форм: обратная связь, заказы, комментарии, отзывы.
- Лимит отправок с одного IP за настраиваемый интервал
- Отдельные правила для каждой формы по её идентификатору
- Поддержка стандартных веб-форм Битрикс и произвольных форм
- Скрытое поле-ловушка (honeypot) для детектирования ботов
- Анализ скорости заполнения полей формы
Чёрный список IP
Автоматическое и ручное управление списком заблокированных адресов с гибкими правилами.
- Автоматическое добавление при превышении порога попыток
- Блокировка отдельных IP, диапазонов и целых подсетей (CIDR)
- Временная и перманентная блокировка с указанием причины
- Автоматическая разблокировка по истечении указанного периода
- Импорт и экспорт списков через CSV-файлы
Уведомления в реальном времени
Мгновенное оповещение администратора о подозрительной активности через несколько каналов.
- Telegram-бот с настраиваемым форматом сообщений
- E-mail уведомления с детализацией инцидента
- Группировка событий — одно сообщение вместо серии однотипных
- Настройка уровней критичности: информация, предупреждение, критическое
- Расписание тихого режима для отключения ночных уведомлений
Журнал событий и аналитика
Детальная фиксация каждого инцидента с визуальной аналитикой и возможностью выгрузки.
- Полный лог: дата, IP, страна, тип атаки, целевая форма/URL
- Сводная панель с графиками активности по дням и часам
- Топ атакующих IP и целевых форм за выбранный период
- Экспорт журнала в CSV для внешнего анализа
- Автоматическая ротация записей старше заданного периода
Панель управления
Полное управление всеми параметрами защиты через интерфейс администратора 1С-Битрикс.
- Вкладки: авторизация, формы, IP-списки, уведомления, логи
- Предустановленные профили: мягкий, стандартный, параноидный
- Тестовый режим — фиксация событий без реальной блокировки
- Мастер быстрой настройки Telegram-бота прямо из панели
- Кнопка экстренной блокировки всех подозрительных IP одним действием
Зоны защиты
Административная панель
Страницы /bitrix/admin/, /bitrix/tools/, авторизация администратора
Формы обратной связи
Стандартные веб-формы Битрикс, формы заказа обратного звонка, подписки
Публичная авторизация
Вход пользователей в личный кабинет, восстановление пароля, регистрация
Сравнение уровней реагирования
| Попытка | Действие системы | Длительность блокировки | Уведомление |
|---|---|---|---|
| 1 - 3 | Пропуск | Нет | Нет |
| 4 - 5 | Прогрессивная задержка | 5 секунд между попытками | Нет |
| 6 - 10 | Временная блокировка | 5 минут | |
| 11 - 20 | Блокировка | 30 минут | Telegram, Max + E-mail |
| 21 - 50 | Длительная блокировка | 2 часа | Telegram, Max + E-mail |
| 51+ | Перманентная блокировка | Добавление в чёрный список | Критическое уведомление |
Структура файлов проекта
Скрипт размещается в директории /local/ и подключается через init.php. Не затрагивается при обновлении ядра 1С-Битрикс. Ниже представлена полная файловая архитектура.
-
local/
- php_interface/init.php -- точка входа, подключение скрипта к системе событий
-
scripts/
-
antibrute/
-- корневая директория скрипта
- install.php -- установщик: создание таблиц БД, первоначальные настройки
- config.php -- конфигурация: пороги, интервалы, каналы уведомлений
-
classes/
-- классы бизнес-логики
- LoginGuard.php -- защита авторизации: подсчёт попыток, прогрессивная блокировка
- FormGuard.php -- защита форм: лимиты отправок, honeypot, тайминг
- IpManager.php -- чёрный/белый списки IP, CIDR-диапазоны, импорт/экспорт
- TelegramNotifier.php -- отправка уведомлений через Telegram Bot API
- EmailNotifier.php -- e-mail уведомления, шаблоны, группировка событий
- Logger.php -- запись логов в БД, ротация, экспорт CSV
- RateLimiter.php -- универсальный счётчик частоты, прогрессивные задержки
-
handlers/
-- обработчики событий Битрикс
- OnBeforeUserLogin.php -- перехват попытки авторизации
- OnAfterUserLoginFail.php -- фиксация неудачного входа, увеличение счётчика
- OnBeforeFormSubmit.php -- перехват отправки формы, проверка лимитов
-
admin/
-- административные страницы
- settings.php -- общие настройки, пороги, профили безопасности
- ip_lists.php -- управление чёрными и белыми списками IP
- logs.php -- журнал инцидентов с фильтрацией и экспортом
- dashboard.php -- сводная панель, графики, топ атакующих IP
- telegram_setup.php -- мастер настройки Telegram-бота
-
sql/
-- SQL-скрипты
- install.sql -- создание таблиц логов, попыток, чёрных списков
- uninstall.sql -- удаление таблиц при деинсталляции
-
antibrute/
-- корневая директория скрипта
Если необходима индивидуальная разработка
Ниже представлена оценка трудозатрат на разработку скрипта специалистом среднего уровня. Расчёт выполнен без учёта внедрения на сайт клиента.
| Этап / файл проекта | Описание работ | Часы |
|---|---|---|
| install.php, config.php, sql/ | Установщик скрипта, создание таблиц БД для логов и чёрных списков, файл конфигурации с валидацией параметров | 3 |
| init.php (подключение) | Регистрация обработчиков событий Битрикс, автозагрузка классов, проверка активности скрипта | 2 |
| classes/LoginGuard.php | Подсчёт неудачных попыток входа, прогрессивная блокировка по уровням, разделение порогов для админки и публичной части, белый список IP | 6 |
| classes/FormGuard.php | Лимиты отправок по формам, honeypot-поле, анализ тайминга заполнения, привязка правил к идентификаторам форм | 6 |
| classes/IpManager.php | Управление чёрным и белым списками IP, поддержка CIDR-диапазонов, автоматическая разблокировка по таймеру, импорт/экспорт CSV | 5 |
| classes/RateLimiter.php | Универсальный счётчик частоты запросов, прогрессивные задержки, сброс счётчиков, кэширование в памяти | 4 |
| classes/TelegramNotifier.php | Интеграция с Telegram Bot API, форматирование сообщений, группировка событий, тихий режим по расписанию | 5 |
| classes/EmailNotifier.php | HTML-шаблоны e-mail уведомлений, уровни критичности, группировка однотипных событий, очередь отправки | 4 |
| classes/Logger.php | ORM-запись инцидентов в БД, фильтрация по типу/дате/IP, экспорт CSV, автоматическая ротация устаревших записей | 4 |
| handlers/ | Обработчики OnBeforeUserLogin, OnAfterUserLoginFail, OnBeforeFormSubmit — передача данных в классы защиты | 3 |
| admin/settings.php | Интерфейс настроек с вкладками, переключение профилей безопасности, управление порогами и интервалами | 5 |
| admin/ip_lists.php | Управление списками IP с пагинацией, поиском, пакетным добавлением и удалением, импортом CSV | 4 |
| admin/logs.php | Журнал инцидентов с фильтрами по типу, дате, IP, форме, кнопка экспорта, пагинация | 4 |
| admin/dashboard.php | Сводная панель со статистикой, графики по дням и часам, топ атакующих IP и целевых форм | 6 |
| admin/telegram_setup.php | Мастер настройки Telegram-бота: ввод токена, выбор чата, тестовая отправка сообщения | 3 |
| Тестирование | Функциональные тесты всех типов блокировки, проверка уведомлений, нагрузочное тестирование, совместимость с редакциями Битрикс | 6 |
Стоимость внедрения на сайт клиента оговаривается отдельно. В определённых случаях внедрение может быть выполнено бесплатно — например, если у клиента имеется тестовая копия сайта для предварительной проверки работы скрипта.
Лицензия и условия
Один веб-проект
Указанная стоимость включает лицензию для размещения скрипта на одном веб-проекте. Для нескольких сайтов приобретается дополнительная лицензия.
Описанный функционал
Скрипт предоставляется исключительно с функциями, описанными в данной документации. Дополнительные доработки по желанию клиента оговариваются отдельно.
Возможность доработки
Каждый скрипт можно расширить и адаптировать под индивидуальные требования проекта. Условия и объём доработки обсуждаются с менеджером.
Гарантии качества
Бесплатное исправление ошибок
Каждый сайт индивидуален. Если при работе скрипта на вашем проекте возникнут ошибки, компания ВеоМедиа устранит их бесплатно в кратчайшие сроки.
Совместимость с 1С-Битрикс
Скрипт полностью совместим с актуальными редакциями 1С-Битрикс 2025 и 2026 года. Размещение в директории /local/ гарантирует сохранность при обновлениях CMS.
Оперативная поддержка
Техническая консультация и помощь при настройке скрипта после приобретения. Ответы на вопросы в рабочее время в течение одного рабочего дня.
Telegram-интеграция
Помощь в настройке Telegram-бота для получения уведомлений включена в стоимость. Подробная инструкция прилагается к скрипту.
Остановите brute-force атаки прямо сейчас
Скрипт Антибрут блокирует перебор паролей и спам-атаки на формы сайта, мгновенно оповещая вас в Telegram или Max о каждом инциденте. Свяжитесь с нами для приобретения, получения консультации или заказа индивидуальной разработки.

