Размер шрифта
Цвет фона и шрифта
Изображения
Озвучивание текста
Обычная версия сайта
Название сайта
Готовое решение для создания
корпоративного сайта
+7 915 097-35-53
+7 915 097-35-53Генеральный Директор
Заказать звонок
E-mail
kolosov@cerbiz.ru
welcome@cerbiz.ru
Адрес
Москва, улица Большая Якиманка, 24
Режим работы
Пн. – Пт.: с 9:00 до 18:00
Подать заявку
Компания
  • О компании
  • Партнеры
  • Сотрудники
  • Отзывы
  • Вакансии
  • Реквизиты
  • Блог
  • Новости
Услуги
  • Разработка сайта
    • Разработка сайта на готовом решении
    • Разработка корпоративного сайта
    • Интернет-магазин на готовом решении
    • Разработка интернет-магазина
    • Перенести сайт на Bitrix
  • Продвижение сайта
    • СЕО продвижение интернет-магазина
    • СЕО продвижение корпоративного сайта
  • Дополнительные услуги
    • VPN сервер для компании
Акции
Проекты
  • Бизнес и финансы
  • Общественное питание
  • Производство
  • Строительство
  • Сфера услуг
  • Торговля
  • Электроосвещение
Тарифы
  • Техническая поддержка
    • Абонементные тарифы
    • Депозитные тарифы
  • Битрикс24
    • Старт+
    • CRM+
    • Задачи+
    • Компания
Контакты
Москва
0
Москва
Москва, улица Большая Якиманка, 24
+7 915 097-35-53
+7 915 097-35-53Генеральный Директор
Заказать звонок
E-mail
kolosov@cerbiz.ru
welcome@cerbiz.ru
Адрес
Москва, улица Большая Якиманка, 24
Режим работы
Пн. – Пт.: с 9:00 до 18:00
Войти
0 Корзина
Название сайта
Компания
  • О компании
  • Партнеры
  • Сотрудники
  • Отзывы
  • Вакансии
  • Реквизиты
  • Блог
  • Новости
Услуги
  • Разработка сайта
    • Разработка сайта на готовом решении
    • Разработка корпоративного сайта
    • Интернет-магазин на готовом решении
    • Разработка интернет-магазина
    • Перенести сайт на Bitrix
  • Продвижение сайта
    • СЕО продвижение интернет-магазина
    • СЕО продвижение корпоративного сайта
  • Дополнительные услуги
    • VPN сервер для компании
Акции
Проекты
  • Бизнес и финансы
  • Общественное питание
  • Производство
  • Строительство
  • Сфера услуг
  • Торговля
  • Электроосвещение
Тарифы
  • Техническая поддержка
    • Абонементные тарифы
      • Необходимая десятка
      • Уверенная двадцатка
      • Солидные сорок
    • Депозитные тарифы
      • Пакет "Двадцать"
      • Пакет "Тридцать"
  • Битрикс24
    • Старт+
    • CRM+
    • Задачи+
    • Компания
Контакты
    Подать заявку
    Название сайта
    Компания
    • О компании
    • Партнеры
    • Сотрудники
    • Отзывы
    • Вакансии
    • Реквизиты
    • Блог
    • Новости
    Услуги
    • Разработка сайта
      • Разработка сайта на готовом решении
      • Разработка корпоративного сайта
      • Интернет-магазин на готовом решении
      • Разработка интернет-магазина
      • Перенести сайт на Bitrix
    • Продвижение сайта
      • СЕО продвижение интернет-магазина
      • СЕО продвижение корпоративного сайта
    • Дополнительные услуги
      • VPN сервер для компании
    Акции
    Проекты
    • Бизнес и финансы
    • Общественное питание
    • Производство
    • Строительство
    • Сфера услуг
    • Торговля
    • Электроосвещение
    Тарифы
    • Техническая поддержка
      • Абонементные тарифы
        • Необходимая десятка
        • Уверенная двадцатка
        • Солидные сорок
      • Депозитные тарифы
        • Пакет "Двадцать"
        • Пакет "Тридцать"
    • Битрикс24
      • Старт+
      • CRM+
      • Задачи+
      • Компания
    Контакты
      Москва
      +7 915 097-35-53Генеральный Директор
      Заказать звонок
      E-mail
      kolosov@cerbiz.ru
      welcome@cerbiz.ru
      Адрес
      Москва, улица Большая Якиманка, 24
      Режим работы
      Пн. – Пт.: с 9:00 до 18:00
      0
      Подать заявку
      Название сайта
      Телефоны
      +7 915 097-35-53 Генеральный Директор
      Заказать звонок
      0
      Название сайта
      • Компания
        • Компания
        • О компании
        • Партнеры
        • Сотрудники
        • Отзывы
        • Вакансии
        • Реквизиты
        • Блог
        • Новости
      • Услуги
        • Услуги
        • Разработка сайта
          • Разработка сайта
          • Разработка сайта на готовом решении
          • Разработка корпоративного сайта
          • Интернет-магазин на готовом решении
          • Разработка интернет-магазина
          • Перенести сайт на Bitrix
        • Продвижение сайта
          • Продвижение сайта
          • СЕО продвижение интернет-магазина
          • СЕО продвижение корпоративного сайта
        • Дополнительные услуги
          • Дополнительные услуги
          • VPN сервер для компании
      • Акции
      • Проекты
        • Проекты
        • Бизнес и финансы
        • Общественное питание
        • Производство
        • Строительство
        • Сфера услуг
        • Торговля
        • Электроосвещение
      • Тарифы
        • Тарифы
        • Техническая поддержка
          • Техническая поддержка
          • Абонементные тарифы
            • Абонементные тарифы
            • Необходимая десятка
            • Уверенная двадцатка
            • Солидные сорок
          • Депозитные тарифы
            • Депозитные тарифы
            • Пакет "Двадцать"
            • Пакет "Тридцать"
        • Битрикс24
          • Битрикс24
          • Старт+
          • CRM+
          • Задачи+
          • Компания
      • Контакты
      Подать заявку
      • Москва
        • Города
        • Ивантеевка
        • Королёв
        • Москва
        • Пушкино
        • Свердловский
        • Щелково
      • Кабинет
      • 0 Корзина
      • +7 915 097-35-53 Генеральный Директор
        • Телефоны
        • +7 915 097-35-53 Генеральный Директор
        • Заказать звонок
      • Москва, улица Большая Якиманка, 24
      • kolosov@cerbiz.ru
        welcome@cerbiz.ru
      • Пн. – Пт.: с 9:00 до 18:00

      [Кейс] Битрикс спам в формы стандартного компонента

      Главная
      —
      Статьи
      —
      Блог разработчика
      —[Кейс] Битрикс спам в формы стандартного компонента
      Битрикс спам в формы стандартного компонента
      Блог разработчика
      28 октября 2022
      Рассказываем, как бороться со спамом используя стандартный компонент Битрикс "Веб-формы" даже в тех случаях, когда капча не помогает.

      На одном из проектов написанных на БУС реализованы формы обратной связи через стандартный компонент bitrix:web.form.

      Поверх этого мы использовали валидацию полей с помощью JS, маску телефона на основе jquery.maskedinput.js и Google Recaptcha 2.0, которая инициализировалась и включалась с помощью настроек компонента форм.

      Мы столкнулись с тем, что ежедневно в формы обратной связи приходил спам, который обходил все наши валидаторы и проходил капчу.

      Проанализировав ситуацию мы сошлись на том, что это - массовые рассылки спама, не смотря на наличие Recaptcha. Боты давно научились обходить капчу заполнением, это не секрет, но из интересных особенностей заметили, что в поле "Телефон" попадают буквенные значения, а значит, наш валидатор и маска не работают.
      Идея того, что боты загружают страницу без JS - показалась сомнительной т.к. без верификации капчи - форма не отправляется.

      Случай максимально странный, казалось бы, с JavaScript - бот встретит валидацию и маски, без JavaScript - не увидит капчу, а значит не сможет отправить данные.
      Решили не искать логику там, где её нет - начали перебирать разные варианты дополнительной защиты формы. Сначала внедрили валидацию и маски в тело страницы, не помогло.
      Повесили Recaptcha 3, не помогло.
      Писали валидатор внутри битрикса, использовали паттерны - не помогло.

      Спам уменьшился, когда мы добавили невидимое поле со значением required (обязательное) и disabled,  а скриптами убирали обязательность заполнения (атрибут required).
      То есть для обычного посетителя - форма отправится без проблем, это поле он не увидит, а для бота без JS - будет обязательное поле, которое выключено, а значит кнопка submit неактивна.

      Битрикс как остановить спам

      Окончательное решение - во все формы добавлять невидимые (НЕ display none, которые боты умеют определять, а невидимые благодаря стилизации) поля, при заполнении которых мы понимаем, что это спам и данные не уходят на почту.
      Код необходимо разместить в init.php, работать будет абсолютно на всех формах вызванных с помощью компонента bitrix:form

      Файл bitrix/php_interface/init.php или если вы молодцы и проект у вас собран правильно - local/php_interface/init.php

      \Bitrix\Main\EventManager::getInstance()->addEventHandler("main", "OnEndBufferContent", "OnEndBufferWebFormAntiSpam");
      function OnEndBufferWebFormAntiSpam(&$content)
      {
          $xStyle  = ''; 
          $content = str_ireplace('', $xStyle.'',  $content);
          $findField = 'addEventHandler('form', 'onBeforeResultAdd', 'onBeforeResultAddWebFormAntiSpam');
      function onBeforeResultAddWebFormAntiSpam($WEB_FORM_ID, &$arFields, &$arrVALUES){
          global $APPLICATION;
          if(!empty($arrVALUES['last_name'])){
              $APPLICATION->ThrowException('Отказать.');
          }
      }

      Сначала мы добавили стилей для нашего поля, далее нашли поле WEB_FORM_ID (есть в каждой форме, выполненной на стандартном компоненте) и добавили рядом input с названием last_name (фамилия), для ботов - это поле так же в приоритете, а значит шанс того, что оно будет заполнено - высок.

      Далее, после нажатия кнопки "отправить", но перед отправкой сервером, используя событие onBeforeResultAdd мы проверяем поле last_name на заполненное. Если заполнено - ThrowException, письмо не ушло.

      По результатам - за неделю ни одного спам-письма, несмотря на попытки.

      2022-10-28_03-12-52.jpg

      Решение в конечном итоге будет выглядеть так:

      
      <input class="xname name" tabindex="-1" autocomplete="off" type="text" name="last_name" value="">
      <input type="hidden" name="WEB_FORM_ID" value="2">
      <input type="hidden" name="sessid" id="sessid_1" value="12581jsdoisjdg">    <input type="hidden" name="web_form_submit" value="Y">
      
      Сотрудники
      Генеральный Директор
      Артем Колосов
      Написать сообщение
      Телефон
      +7 (915) 097-35-53
      E-mail
      kolosov@cerbiz.ru
      Я не бизнесмен, я специалист, собравший команду профессионалов. Люблю свое дело, де-юре руководитель компании, де-факто главный разработчик.
      Вопрос/ответ
      Комплексное ведение бизнеса в Онлайн - возможно?
      Да, мы готовы закрыть все ваши потребности в рамках Digital. Более того, предложение будет более выгодным, если по всем аспектам с вашим бизнесом мы работаем внутри нашей компании.
      Почему вы работаете с Битрикс?
      Битрикс - отечественный продукт, закрывающий потребности большинства клиентов. Но, помимо Битрикса, мы работаем и с другими CMS в т.ч. WordPress, OpenCart, Joomla, DLE и т.д.
      Сайт на Битрикс будет быстро работать?
      Технология "Композитный сайт" позволяет разгонять скорость до рекордно низких показателей. В среднем сайты разработанные в нашей студии загружаются быстрее 1 секунды.
      Назад к списку
      • Бизнес и финансы
      • Общественное питание
      • Производство
      • Строительство
      • Сфера услуг
      • Торговля
      • Электроосвещение
      • Блог разработчика 4
      • Кейсы 1
      • Маркетинг 2
      +7 915 097-35-53
      +7 915 097-35-53Генеральный Директор
      Заказать звонок
      E-mail
      kolosov@cerbiz.ru
      welcome@cerbiz.ru
      Адрес
      Москва, улица Большая Якиманка, 24
      Режим работы
      Пн. – Пт.: с 9:00 до 18:00
      Заказать звонок
      kolosov@cerbiz.ru
      welcome@cerbiz.ru
      Москва, улица Большая Якиманка, 24
      Услуги
      Разработка сайта
      Продвижение сайта
      Дополнительные услуги
      Компания
      О компании
      Партнеры
      Сотрудники
      Отзывы
      Вакансии
      Реквизиты
      Блог
      Новости
      Информация
      Вопрос-ответ
      Обзоры
      Возможности
      Возможности
      Оформление
      Кнопки
      Иконки
      Элементы
      Обзоры
      © 2025 Веб Студия Цербиз
      Политика конфиденциальности
      0 Корзина

      Ваша корзина пуста

      Исправить это просто: выберите в каталоге интересующий товар и нажмите кнопку «В корзину»
      Перейти в каталог
      Главная Услуги Акции Контакты Отзывы Проекты Кабинет