Bitrix включен вывод ошибок пользователям

Если на экране появилась ошибка:

При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php

Открываем файл .settings.php находим debug и заменяем false на true:

'exception_handling' =>
array (
'value' =>
array (
'debug' => false, // изменяем значение на true
'handled_errors_types' => 20853,
'exception_errors_types' => 20853,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' =>
array (
'settings' =>
array (
'file' => NULL,
'log_size' => NULL,
),
),
),
'readonly' => false,
),

В результате чего на экране будет подробное описание ошибки:

[Error]
Class 'Assets' not found (0)
D:worklocalhost11wwwlocaltemplatesvoguis_indexheader.php:17
#0: include_once
D:worklocalhost11wwwbitrixmodulesmainincludeprolog_after.php:96
#1: require(string)
D:worklocalhost11wwwbitrixmodulesmainincludeprolog.php:11
#2: require_once(string)
D:worklocalhost11wwwbitrixheader.php:1
#3: require(string)
D:worklocalhost11wwwindex.php:2

На чтение 4 мин. Просмотров 1.2k. Опубликовано 15.12.2019

Уведомление об ошибке в админке битрикс, или непосредственно в визуальной его части. При выполнении скрипта возникла ошибка.

Это уведомление, я назову это именно так — уведомление, т.к. мы еще не знаем в чем же дело, битрикс нас просто информирует о том, что при выполнении скрипта возникла ошибка, не более того.

Итак рассмотрим по порядку:

Содержание

  1. Почему может появиться это уведомление?
  2. Что делать, если появляется сообщение «при выполнении скрипта возникла ошибка»?
  3. Как в битрикс включить вывод ошибок?
  4. Методы выявление ошибки
  5. Основные причины появления белого экрана

Почему может появиться это уведомление?

  • Если уведомление появляется при разработке в публичной части сайта, то это однозначно ошибка в скрипте, вызвана, к примеру, ошибкой в синтаксисе в файле шаблона или в init.php, использованием функции, которая отсутствует и т.п.
  • Если уведомление появляется в админке сайта, то это может быть вызвано ошибками, к примеру, в init.php или ошибками в ядре битрикса, которые обусловлены не той версией php. Это могло произойти, если битрикс у вас давно не обновлялся и при этом вы изменили версию php на, к примеру, php 7.1.

Теперь рассмотрим пути решения этой проблемы.

Что делать, если появляется сообщение «при выполнении скрипта возникла ошибка»?

Прежде всего необходимо включить вывод ошибок и предупреждений и посмотреть где у нас проблема.

Как в битрикс включить вывод ошибок?

Для старого ядра включить вывод ошибок можно в файле dbconn.php:

Чтобы в битрикс включить вывод ошибок для нового ядра D7 необходимо в файле .settings.php поставить значение debug => true:

Сейчас, наверное, уже сложно встретить сайты только на старом ядре, поэтому включать вывод ошибок в битрикс можно только в файле .settings.php

После устранения всех ошибок не забываем отключать вывод ошибок, пользователю не нужно их видеть, если вдруг что-нибудь еще всплывет. Всем удачи и успехов в работе!

Порой на сайте разработанном на 1с Битрикс вместо контента появляется белый экран. Были случаи появления чистого экрана после авторизации в админке.

Методы выявление ошибки

1. В файле .htaccess включаем вывод ошибок:

2. В файле /bitrix/php_interface/dbconn.php :

3. Смотреть лог ошибок (error log) веб-сервера (апач, файл error_log ).

4. В файле /bitrix/.settings.php установить

5. Проверить содержимое переменной $_SERVER[«DOCUMENT_ROOT»] . Там должен быть установлен корректный путь, иначе не подключаются файлы системы.

6. Запустить скрипт проверки системы на соответствия требованиям для стабильной работы 1с Битрикс bitrix_server_test.php

Основные причины появления белого экрана

  1. Кривое редактирование /bitrix/php_interface/init.php : ошибки, лишний пробел после ?>
  2. Такая же проблема с белым экраном возникла после переноса на другой сервер.
  3. Проверить настройку PHP — short_open_tag , которая должна быть в On.
  4. Не хватает оперативной памяти( memory_limit по умолчанию 128). Проблема решается следующим образом. Заходим в /bitrix/php_interface/dbconn.php . Редактируем ini_set(«memory_limit», «512M»);

Если вы сталкивались с этой проблемой пишите в комментариях, как её решили.

Если у вас на сайте произошла ошибка, но она не отображается и выводиться надпись о том, что ошибки нужно включить в файле .settings.php, то значит они у вас отключены в этом файле.

Включить их просто, для этого надо собственно открыть этот файл по FTP или через функционал Битрикс по следующему пути в админке битрикс

Рабочий стол->Контент->Структура сайта->Файлы и папки->bitrix

Здесь представлен многомерный массив данных, ключ-значение. Это основные настройки вашего сайта на битриксе.

Что бы включить отображение ошибок находим строку ‘debug’ которая находится внутри ‘exception_handling’->’value’ и ставим ей значение true вместо false.

Что бы настроить какие именно ошибки мы хотим отображать в ключе ‘exception_errors_types’ указываем код ошибок, например 29687, но он мало понятен, поэтому лучше использовать в значение данного ключа константы через пробел:

E_DEPRECATED,

Здесь мы перечислили все ошибки, предупредения и тд. Если нужно вывести только ошибки, то остальные константы можно просто убрать, поскольку уведомление

Блог «Дивасофт»

23 января 2017, Михаил

В файле bitrix/.settings.php


<?php 
'exception_handling' => 
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => false,
      'assertion_throws_exception' => true,
      'assertion_error_type' => 256,
      'log' => 
      array (
        'settings' => 
        array (
          'file' => 'bitrix/err.log',
          'log_size' => 1000000,
        ),
      ),
    ),
    'readonly' => false,
  )
?>

Логи будут в файле bitrix/err.log

Стандартный уровень

Чтобы защита веб-проекта осуществлялась на стандартном уровне безопасности, необходимо настроить должным образом все параметры данного уровня:

* для быстрого перехода к описанию настройки нужного Вам параметра кликните по одной из ссылок ниже:

  • 1 , 2 Проактивный фильтр и исключения из него;
  • 3 Ведение журнала вторжений;
  • 4 Контроль активности;
  • 5 Уровень безопасности группы администраторов;
  • 6 Использовать CAPTCHA при регистрации;
  • 7 Режим вывода ошибок (error_reporting);
  • 8 Показ ошибочных запросов базы данных.

Внимание: если стандартный уровень не настроен полностью, то защита сайта будет осуществляться на начальном уровне, но с учетом настроенных параметров на стандартном, высоком и повышенном уровнях.

1 , 2 Проактивный фильтр и исключения из него

Включение или отключение

проактивного фильтра


Проактивный фильтр (Web Application Firewall) – это набор специализированных средств, которые выполняют фильтрацию трафика. Фильтр обеспечивает защиту от большинства известных атак на веб-приложения. В потоке внешних запросов пользователей проактивный фильтр распознает большинство опасных угроз и блокирует вторжения на сайт.



выполняется на странице Проактивный фильтр (Настройки > Проактивная защита > Проактивный фильтр) с помощью

кнопки






Включить проактивную защиту (или Выключить проактивную защиту).

На закладке Активная реакция настраиваются действия системы при попытке вторжения на сайт:

Выберите необходимый вам способ реакции на вторжение:

  • Сделать данные безопасными – опасные данные будут модифицированы, например, select будет заменен на sel ect.
  • Очистить опасные данные – введенные опасные данные будут удалены.
  • Оставить опасные данные как есть – с опасными данными никаких действий выполняться не будет.

Чтобы заблокировать пользователя на некоторое количество минут, отметьте опцию Добавить IP-адрес атакующего в стоп-лист. При этом период времени блокировки задается в поле На сколько минут добавлять в стоп-лист.

Примечание: при добавлении IP-адреса атакующего в стоп-лист становится возможной

атака,


Суть атаки:

Злоумышленник размещает у себя ссылку на сайт, содержащую данные, похожие на попытку взлома.

Пользователь кликает по этой ссылке и переходит на сайт.

Проактивная защита заносит этого пользователя в Стоп-лист. Сайтом этот пользователь больше пользоваться не сможет.




когда действия злоумышленника могут привести к блокировке посетителей сайта.

Для фиксирования попыток атаки отметьте опцию Занести попытку вторжения в журнал.

Обратите внимание, что некоторые действия пользователей, не представляющие угрозы, тоже могут выглядеть подозрительно и вызывать ложное срабатывание фильтра.

При необходимости могут быть заданы исключения из проактивного фильтра (закладка Исключения), т.е. проактивный фильтр не будет применяться на страницах, указанных на данной закладке.

Примечание: Чтобы защита сайта осуществлялась на стандартном уровне, проактивный фильтр должен быть включен и не должно быть задано ни одного исключения.

Однако при необходимости можно добавить определенные страницы или конкретных пользователей в правило исключения

Исключение для конкретных страниц

Исключение для конкретных пользователей

Примечание: Начиная с версии модуля 14.0.3, для страниц в публичной части сайта с сообщениями функционала «Защита редиректов от фишинга» и «Проактивный фильтр» добавлены теги noindex и nofollow.

3 Журнал вторжений

Журнал вторжений (Настройки > Проактивная защита > Журнал вторжений) предназначен для ведения логов событий, связанных с потенциальными угрозами безопасности сайта. Период времени, в течение которого хранятся записи, определяется настройками Главного модуля на закладке Журнал событий.

Информация о событии, которая фиксируется в журнале

В журнале фиксируются события следующих типов:

  • Со стороны модуля Веб-аналитика: превышение лимита активности.
  • Со стороны модуля Проактивная защита: попытки внедрения SQL и PHP, попытки атак через XSS, попытки заражения вирусами и фишинга через редирект.
  • Со стороны модуля Форум: операции над темами и сообщениями форумов.
  • Со стороны Главного модуля: успешный вход и выход из системы, запрос на смену и смена пароля пользователя, ошибки входа и входа при сохраненной авторизации, регистрация нового пользователя, ошибка регистрации и удаление пользователя.

Подробное описание всех полей списка смотрите на странице

пользовательской документации


Журнал вторжений (Настройки > Проактивная защита > Журнал вторжений) предназначен для ведения логов событий, связанных с потенциальными угрозами для безопасности сайта. Период времени, в течение которого хранятся записи, определяется настройками главного модуля.

Подробнее…




.

4 Контроль активности

Контроль активности пользователей ведется на основе средств модуля Веб-аналитика и, следовательно, доступен только в тех редакциях продукта, в которые входит этот модуль. Контроль активности позволяет установить защиту от чрезмерно активных пользователей, программных роботов, некоторых категорий DDoS-атак, а также отсекать попытки подбора паролей перебором.

Включение или отключение контроля активности выполняется на странице Контроль активности (Настройки > Проактивная защита > Контроль активности) с помощью

кнопки






Включить контроль активности (или Выключить контроль активности).

На закладке Параметры задаются параметры максимальной активности пользователей вашего сайта.

Таким образом, если пользователь превысит количество запросов за указанное количество секунд, то он будет заблокирован на заданное время. При этом ему будет отображена специальная страница, шаблон которой можно отредактировать по ссылке редактировать шаблон. Для фиксирования превышения лимита активности в журнале вторжений необходимо отметить опцию Сделать запись в журнале событий.

Примечание: Контроль активности связан с работой модуля Веб-аналитика. Поэтому его настройку можно также произвести на странице настроек модуля (Настройки > Настройки продукта > Настройки модулей > Веб-аналитика, закладка Настройки, секция Ограничение активности).

5 Уровень безопасности группы администраторов

Чтобы защита веб-проекта осуществлялась на стандартном уровне, необходимо задать повышенный уровень безопасности для группы администраторов. По умолчанию данный параметр уже настроен. Если по каким-либо причинам уровень безопасности группы администраторов отличен от повышенного, то необходимо выполнить следующее:

6 Использовать CAPTCHA при регистрации

Необходимым условием для защиты сайта на стандартном уровне является использование CAPTCHA при регистрации новых пользователей. Данная опция включается в настройках главного модуля на закладке

Авторизация.





Настройка внешнего вида CAPTCHA выполняется на странице CAPTCHA (Настройки > Настройки продукта > CAPTCHA).

7 Режим вывода ошибок

Наряду с параметром Использовать CAPTCHA при регистрации, необходимо настроить еще один параметр главного модуля – Режим вывода ошибок (error_reporting), чтобы защита сайта осуществлялась на стандартном уровне безопасности.

  • Перейдите на страницу настроек Главного модуля (Настройки > Настройки продукта > Настройки модулей > Главный модуль).
  • В поле Режим вывода ошибок (error_reporting) укажите Только ошибки или Не выводить.
  • Примечание: если выбрать режим Ошибки и предупреждения, то будет установлен начальный уровень безопасности.

  • Сохраните внесенные изменения.

8 Показ ошибочных запросов базы данных

Для осуществления защиты веб-проекта на стандартном уровне показ ошибочных данных должен быть выключен, т.е. переменная $DBDebug должна принимать значение code. Таким образом, в случае ошибки при создании соединения с базой или выполнения запроса полный текст ошибки будет отображаться только администраторам сайта. Если же переменная принимает значение true, то полный текст ошибки будет отображаться всем пользователям сайта.

Изменение значения переменной $DBDebug выполняется в файле /bitrix/php_interface/dbconn.php.

Документация по теме:

  • Проактивный фильтр
  • Контроль активности

1. Создаю в корне сайта файл error.php со следующим содержимым:

<?php
echo show_me_error;
?>

2. Открываю в браузере site.ru/error.php — белый экран

3. Смотрю bitrix/php_interface/dbconn.php:
$DBDebug = true;

4. Смотрю bitrix/php_interface/.settings.php:

...
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => true,
      'assertion_throws_exception' => false,
      'assertion_error_type' => 256,
      'log' => array (
        'settings' => array (
        'file' => 'bitrix/modules/error.log',
        'log_size' => 1000000,
        ),
      ),  
    ),
    'readonly' => false,
  ),
...

5. Смотрю bitrix/modules/error.log — кучу левых Warning, однако моей ошибки в моём error.php нет
6. Иду в .htaccess:

php_value display_errors 1
php_value error_reporting 7

7. Иду на сервере в /var/log/nginx/error.log — то же самое, ничего о моей ошибке

Как мне на экране при открытии error.php увидеть мою ошибку?

Если у вас на сайте произошла ошибка, но она не отображается и выводиться надпись  о том, что ошибки нужно включить в файле .settings.php, то значит они у вас отключены в этом файле.

Включить их просто, для этого надо собственно открыть этот файл по FTP или через функционал Битрикс по следующему пути в админке битрикс

Рабочий стол->Контент->Структура сайта->Файлы и папки->bitrix

Здесь представлен многомерный массив данных, ключ-значение. Это основные настройки вашего сайта на битриксе.

Что бы включить отображение ошибок находим строку ‘debug’  которая находится внутри ‘exception_handling’->’value’ и ставим ей значение true вместо false.

Что бы настроить какие именно ошибки мы хотим отображать в ключе ‘exception_errors_types’  указываем код ошибок, например 29687, но он мало понятен, поэтому лучше использовать в значение данного ключа константы через пробел:

‘handled_errors_types’ => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED, 

Здесь мы  перечислили все ошибки, предупредения и тд. Если нужно вывести только ошибки, то остальные константы можно просто убрать, поскольку уведомление 

Загрузка

Если на экране появилась ошибка:

При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php

Открываем файл .settings.php находим debug и заменяем false на true:

'exception_handling' =>
array (
'value' =>
array (
'debug' => false, // изменяем значение на true
'handled_errors_types' => 20853,
'exception_errors_types' => 20853,
'ignore_silence' => false,
'assertion_throws_exception' => true,
'assertion_error_type' => 256,
'log' =>
array (
'settings' =>
array (
'file' => NULL,
'log_size' => NULL,
),
),
),
'readonly' => false,
),

В результате чего на экране будет подробное описание ошибки:

[Error]
Class 'Assets' not found (0)
D:worklocalhost11wwwlocaltemplatesvoguis_indexheader.php:17
#0: include_once
D:worklocalhost11wwwbitrixmodulesmainincludeprolog_after.php:96
#1: require(string)
D:worklocalhost11wwwbitrixmodulesmainincludeprolog.php:11
#2: require_once(string)
D:worklocalhost11wwwbitrixheader.php:1
#3: require(string)
D:worklocalhost11wwwindex.php:2

Bitrix Framework имеет ряд специфичных настроек ядра, которые не имеют визуального интерфейса редактирования. Этот подход вызван тем, что изменение настроек или ошибка в них легко могут привести к неработоспособности системы (настройки подключения к базе данных, настройки кеширования и т.д.).

Настройки в новом ядре выполняются в файле /bitrix/.settings.php. В старом ядре аналогичные настройки выполнялись в файле /bitrix/php_interface/dbconn.php. Файл .settings.php структурно сильно отличается от прежнего dbconn.php.

В Битрикс параллельно используются 2 ядра — старое и новое, соответственно, оба файла настроек используются одновременно. Поэтому необходимо производить настройки обоих файлов.

Даже если используется код только старого ядра, то файл .settings.php должен быть создан. Возможна ситуация, когда при установке обновлений какой-то из встроенных механизмов системы будет переписан на новое ядро. Если этот файл корректно не настроен, то это может привести к неработоспособности системы.

Иногда бывают ситуации, что файл .settings.php отсутствует. Его можно создать в автоматическом режиме, если выполнить в командной строке:

BitrixMainConfigConfiguration::wnc();

Если на экране появилась ошибка

При выполнении скрипта возникла ошибка. Включить расширенный вывод ошибок можно в файле настроек .settings.php

то открываем файл .settings.php

'exception_handling' => 
  array (
    'value' => 
    array (
      'debug' => false, // изменяем значение на true
      'handled_errors_types' => 20853,
      'exception_errors_types' => 20853,
      'ignore_silence' => false,
      'assertion_throws_exception' => true,
      'assertion_error_type' => 256,
      'log' => 
      array (
        'settings' => 
        array (
          'file' => NULL,
          'log_size' => NULL,
        ),
      ),
    ),
    'readonly' => false,
  ),

находим debug и заменяем false на true. В результате чего на экране будет подробное описание ошибки:

[Error] 
Class 'Assets' not found (0)
D:worklocalhost11wwwlocaltemplatesvoguis_indexheader.php:17
#0: include_once
    D:worklocalhost11wwwbitrixmodulesmainincludeprolog_after.php:96
#1: require(string)
    D:worklocalhost11wwwbitrixmodulesmainincludeprolog.php:11
#2: require_once(string)
    D:worklocalhost11wwwbitrixheader.php:1
#3: require(string)
    D:worklocalhost11wwwindex.php:2

Поиск:
.settings.php • CMS • PHP • Web-разработка • Битрикс • Ошибка • .settings.php • dbconn.php • debug • Настройка • Ядро

Каталог оборудования

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Производители

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Функциональные группы

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Порой на сайте разработанном на 1с Битрикс вместо контента появляется белый экран. Были случаи появления чистого экрана после авторизации в админке.

Методы выявление ошибки

1. В файле .htaccess включаем вывод ошибок:

php_value display_errors 1
php_value error_reporting 7

2. В файле /bitrix/php_interface/dbconn.php:

$DBDebug = true;

3. Смотреть лог ошибок (error log) веб-сервера (апач, файл error_log ).

4. В файле /bitrix/.settings.php установить

'debug' => true

5. Проверить содержимое переменной $_SERVER["DOCUMENT_ROOT"]. Там должен быть установлен корректный путь, иначе  не подключаются файлы системы.

6. Запустить скрипт проверки системы на соответствия требованиям для стабильной работы 1с Битрикс bitrix_server_test.php

Основные причины появления белого экрана

  1. Кривое редактирование  /bitrix/php_interface/init.php: ошибки, лишний пробел после ?>
  2. Такая же проблема с белым экраном возникла после переноса на другой сервер.
  3.  Проверить настройку PHP — short_open_tag, которая должна быть в On.
  4.  Не хватает оперативной памяти( memory_limit по умолчанию 128). Проблема решается следующим образом. Заходим в /bitrix/php_interface/dbconn.php . Редактируем ini_set("memory_limit", "512M");

Если вы сталкивались с этой проблемой пишите в комментариях, как её решили.

Если у вас на сайте произошла ошибка, но она не отображается и выводиться надпись  о том, что ошибки нужно включить в файле .settings.php, то значит они у вас отключены в этом файле.

Включить их просто, для этого надо собственно открыть этот файл по FTP или через функционал Битрикс по следующему пути в админке битрикс

Рабочий стол->Контент->Структура сайта->Файлы и папки->bitrix

Здесь представлен многомерный массив данных, ключ-значение. Это основные настройки вашего сайта на битриксе.

Что бы включить отображение ошибок находим строку ‘debug’  которая находится внутри ‘exception_handling’->’value’ и ставим ей значение true вместо false.

Что бы настроить какие именно ошибки мы хотим отображать в ключе ‘exception_errors_types’  указываем код ошибок, например 29687, но он мало понятен, поэтому лучше использовать в значение данного ключа константы через пробел:

‘handled_errors_types’ => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_DEPRECATED, 

Здесь мы  перечислили все ошибки, предупредения и тд. Если нужно вывести только ошибки, то остальные константы можно просто убрать, поскольку уведомление 

Загрузка

Блог «Дивасофт»

23 января 2017, Михаил

В файле bitrix/.settings.php


<?php 
'exception_handling' => 
  array (
    'value' => 
    array (
      'debug' => true,
      'handled_errors_types' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE & ~E_DEPRECATED,
      'exception_errors_types' => E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_USER_WARNING & ~E_USER_NOTICE & ~E_COMPILE_WARNING,
      'ignore_silence' => false,
      'assertion_throws_exception' => true,
      'assertion_error_type' => 256,
      'log' => 
      array (
        'settings' => 
        array (
          'file' => 'bitrix/err.log',
          'log_size' => 1000000,
        ),
      ),
    ),
    'readonly' => false,
  )
?>

Логи будут в файле bitrix/err.log

Стандартный уровень

Чтобы защита веб-проекта осуществлялась на стандартном уровне безопасности, необходимо настроить должным образом все параметры данного уровня:

* для быстрого перехода к описанию настройки нужного Вам параметра кликните по одной из ссылок ниже:

  • 1 , 2 Проактивный фильтр и исключения из него;
  • 3 Ведение журнала вторжений;
  • 4 Контроль активности;
  • 5 Уровень безопасности группы администраторов;
  • 6 Использовать CAPTCHA при регистрации;
  • 7 Режим вывода ошибок (error_reporting);
  • 8 Показ ошибочных запросов базы данных.

Внимание: если стандартный уровень не настроен полностью, то защита сайта будет осуществляться на начальном уровне, но с учетом настроенных параметров на стандартном, высоком и повышенном уровнях.

1 , 2 Проактивный фильтр и исключения из него

Включение или отключение

проактивного фильтра


Проактивный фильтр (Web Application Firewall) – это набор специализированных средств, которые выполняют фильтрацию трафика. Фильтр обеспечивает защиту от большинства известных атак на веб-приложения. В потоке внешних запросов пользователей проактивный фильтр распознает большинство опасных угроз и блокирует вторжения на сайт.



выполняется на странице Проактивный фильтр (Настройки > Проактивная защита > Проактивный фильтр) с помощью

кнопки






Включить проактивную защиту (или Выключить проактивную защиту).

На закладке Активная реакция настраиваются действия системы при попытке вторжения на сайт:

Выберите необходимый вам способ реакции на вторжение:

  • Сделать данные безопасными – опасные данные будут модифицированы, например, select будет заменен на sel ect.
  • Очистить опасные данные – введенные опасные данные будут удалены.
  • Оставить опасные данные как есть – с опасными данными никаких действий выполняться не будет.

Чтобы заблокировать пользователя на некоторое количество минут, отметьте опцию Добавить IP-адрес атакующего в стоп-лист. При этом период времени блокировки задается в поле На сколько минут добавлять в стоп-лист.

Примечание: при добавлении IP-адреса атакующего в стоп-лист становится возможной

атака,


Суть атаки:

Злоумышленник размещает у себя ссылку на сайт, содержащую данные, похожие на попытку взлома.

Пользователь кликает по этой ссылке и переходит на сайт.

Проактивная защита заносит этого пользователя в Стоп-лист. Сайтом этот пользователь больше пользоваться не сможет.



когда действия злоумышленника могут привести к блокировке посетителей сайта.

Для фиксирования попыток атаки отметьте опцию Занести попытку вторжения в журнал.

Обратите внимание, что некоторые действия пользователей, не представляющие угрозы, тоже могут выглядеть подозрительно и вызывать ложное срабатывание фильтра.

При необходимости могут быть заданы исключения из проактивного фильтра (закладка Исключения), т.е. проактивный фильтр не будет применяться на страницах, указанных на данной закладке.

Примечание: Чтобы защита сайта осуществлялась на стандартном уровне, проактивный фильтр должен быть включен и не должно быть задано ни одного исключения.

Однако при необходимости можно добавить определенные страницы или конкретных пользователей в правило исключения

Исключение для конкретных страниц

Исключение для конкретных пользователей

Примечание: Начиная с версии модуля 14.0.3, для страниц в публичной части сайта с сообщениями функционала «Защита редиректов от фишинга» и «Проактивный фильтр» добавлены теги noindex и nofollow.

3 Журнал вторжений

Журнал вторжений (Настройки > Проактивная защита > Журнал вторжений) предназначен для ведения логов событий, связанных с потенциальными угрозами безопасности сайта. Период времени, в течение которого хранятся записи, определяется настройками Главного модуля на закладке Журнал событий.

Информация о событии, которая фиксируется в журнале

В журнале фиксируются события следующих типов:

  • Со стороны модуля Веб-аналитика: превышение лимита активности.
  • Со стороны модуля Проактивная защита: попытки внедрения SQL и PHP, попытки атак через XSS, попытки заражения вирусами и фишинга через редирект.
  • Со стороны модуля Форум: операции над темами и сообщениями форумов.
  • Со стороны Главного модуля: успешный вход и выход из системы, запрос на смену и смена пароля пользователя, ошибки входа и входа при сохраненной авторизации, регистрация нового пользователя, ошибка регистрации и удаление пользователя.

Подробное описание всех полей списка смотрите на странице

пользовательской документации


Журнал вторжений (Настройки > Проактивная защита > Журнал вторжений) предназначен для ведения логов событий, связанных с потенциальными угрозами для безопасности сайта. Период времени, в течение которого хранятся записи, определяется настройками главного модуля.

Подробнее…



.

4 Контроль активности

Контроль активности пользователей ведется на основе средств модуля Веб-аналитика и, следовательно, доступен только в тех редакциях продукта, в которые входит этот модуль. Контроль активности позволяет установить защиту от чрезмерно активных пользователей, программных роботов, некоторых категорий DDoS-атак, а также отсекать попытки подбора паролей перебором.

Включение или отключение контроля активности выполняется на странице Контроль активности (Настройки > Проактивная защита > Контроль активности) с помощью

кнопки






Включить контроль активности (или Выключить контроль активности).

На закладке Параметры задаются параметры максимальной активности пользователей вашего сайта.

Таким образом, если пользователь превысит количество запросов за указанное количество секунд, то он будет заблокирован на заданное время. При этом ему будет отображена специальная страница, шаблон которой можно отредактировать по ссылке редактировать шаблон. Для фиксирования превышения лимита активности в журнале вторжений необходимо отметить опцию Сделать запись в журнале событий.

Примечание: Контроль активности связан с работой модуля Веб-аналитика. Поэтому его настройку можно также произвести на странице настроек модуля (Настройки > Настройки продукта > Настройки модулей > Веб-аналитика, закладка Настройки, секция Ограничение активности).

5 Уровень безопасности группы администраторов

Чтобы защита веб-проекта осуществлялась на стандартном уровне, необходимо задать повышенный уровень безопасности для группы администраторов. По умолчанию данный параметр уже настроен. Если по каким-либо причинам уровень безопасности группы администраторов отличен от повышенного, то необходимо выполнить следующее:

6 Использовать CAPTCHA при регистрации

Необходимым условием для защиты сайта на стандартном уровне является использование CAPTCHA при регистрации новых пользователей. Данная опция включается в настройках главного модуля на закладке

Авторизация.





Настройка внешнего вида CAPTCHA выполняется на странице CAPTCHA (Настройки > Настройки продукта > CAPTCHA).

7 Режим вывода ошибок

Наряду с параметром Использовать CAPTCHA при регистрации, необходимо настроить еще один параметр главного модуля – Режим вывода ошибок (error_reporting), чтобы защита сайта осуществлялась на стандартном уровне безопасности.

  • Перейдите на страницу настроек Главного модуля (Настройки > Настройки продукта > Настройки модулей > Главный модуль).
  • В поле Режим вывода ошибок (error_reporting) укажите Только ошибки или Не выводить.
  • Примечание: если выбрать режим Ошибки и предупреждения, то будет установлен начальный уровень безопасности.

  • Сохраните внесенные изменения.

8 Показ ошибочных запросов базы данных

Для осуществления защиты веб-проекта на стандартном уровне показ ошибочных данных должен быть выключен, т.е. переменная $DBDebug должна принимать значение code. Таким образом, в случае ошибки при создании соединения с базой или выполнения запроса полный текст ошибки будет отображаться только администраторам сайта. Если же переменная принимает значение true, то полный текст ошибки будет отображаться всем пользователям сайта.

Изменение значения переменной $DBDebug выполняется в файле /bitrix/php_interface/dbconn.php.

Документация по теме:

  • Проактивный фильтр
  • Контроль активности

Понравилась статья? Поделить с друзьями:
  • Bitrix news 404 ошибка
  • Bitrix log ошибок
  • Bitrix environment ошибка
  • Bitrix 503 ошибка
  • Bitrix 500 ошибка после переноса