Обеспечение безопасности сайтов на 1С-Битрикс

Share

Общие рекомендации по безопасности

Регулярное обновление

  1. Ядро 1С-Битрикс: Устанавливайте обновления сразу после их выхода. После установок обновлений обязательно проверяйте ваш сайт, чтобы весь функционал работал корректно.
  2. Модули и плагины: Удаляйте неиспользуемые модули и обновляйте актуальные.
  3. Сторонние компоненты: Проверяйте их на наличие уязвимостей специализированными средствами.

Настройка прав доступа

  1. Установите правильные права на файлы и папки:
  2. Папки: 755 (или 750, если доступ ограничен).
  3. Файлы: 644 (или 640).
  4. Владелец файлов: пользователь веб-сервера (например, www-data:www-data).

Пример:


sudo chown -R www-data:www-data /var/www/site/
sudo find /var/www/site/ -type d -exec chmod 755 {} \;
sudo find /var/www/site/ -type f -exec chmod 644 {} \;

Способы защиты сайта от вирусов и хакерских атак

Защита файловой системы

Использование атрибута Immutable

Атрибут Immutable (chattr +i) блокирует изменение файлов и папок. Однако для работы Битрикса некоторые директории должны оставаться доступными для записи.


# Установить атрибут Immutable для всех файлов и папок рекурсивно
sudo chattr -R +i /var/www/site/
# Снять атрибут Immutable для критических папок
sudo chattr -R -i /var/www/site/upload/
sudo chattr -R -i /var/www/site/bitrix/cache/
sudo chattr -R -i /var/www/site/bitrix/managed_cache/
sudo chattr -R -i /var/www/site/bitrix/stack_cache/
sudo chattr -R -i /var/www/site/bitrix/htmlpages/
sudo chattr -R -i /var/www/site/bitrix/tmp/
sudo chattr -R -i /var/www/site/resized_images/

Какие директории исключить из Immutable:

  1. /upload/ — хранение загруженных пользователем файлов.
  2. /bitrix/cache/ — кэш данных.
  3. /bitrix/managed_cache/ — управляемый кэш.
  4. /bitrix/stack_cache/ — стековый кэш.
  5. /bitrix/htmlpages/ (или /bitrix/html_pages/) — кэш HTML-страниц.
  6. /bitrix/tmp/ — временные файлы.
  7. /bitrix/backup/ — резервные копии (если используется встроенное резервное копирование).
  8. /bitrix/updates/ — обновления платформы и модулей.
  9. /bitrix/log/ — логи системы (если включено логирование).
  10. /resized_images/ — автоматически генерируемые изображения.
  11. /bitrix/components/ — если используются динамические компоненты (редко, но зависит от конфигурации).

Запрет выполнения PHP в пользовательских папках

Добавьте в .htaccess (для Apache) или конфиг Nginx правила, запрещающие выполнение PHP в папках с пользовательским контентом.

Настройка для веб-сервера Apache .htaccess:


<FilesMatch "\.(php|pl|py|jsp|asp|sh|cgi)$">
Deny from all
</FilesMatch>



Настройка для Nginx:


location ~* ^/upload/.*\.(php|pl|py|jsp|asp|sh|cgi)$ {
deny all;
}

Защита административной панели

Ограничение доступа по IP

Разрешите доступ к админке только с доверенных IP-адресов.

Настройки для Apache:


<Directory "/var/www/site/bitrix/admin/">
Order Deny,Allow
Deny from all
Allow from 192.168.1.1
</Directory>

Настройки для Nginx:


location /bitrix/admin/ {
allow 192.168.1.1;
deny all;
}

где 192.168.1.1 - это внешний ваш IP-адрес.

Двухфакторная аутентификация

Включите двухфакторную аутентификацию в настройках 1С-Битрикс.

Подробнее о подключении двухфакторной аутентификации читайте в статье на сайте производителя.

Включите HTTPS

Обязательно используйте SSL-сертификат для шифрования трафика на вашем сайте. Ваш сайт должен открываться по адресу https://site.ru/.

ModSecurity

Установите и настройте ModSecurity для защиты от SQL-инъекций, XSS и других атак.

Apache:

<IfModule security2_module>
SecRuleEngine On
SecRule ARGS "@rx <script>" "id:1,deny,status:403,msg:'XSS Attack'"
</IfModule>

Nginx:

modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/main.conf;



Мониторинг и резервоное копирование

Аудит изменений

Используйте инструменты, такие как inotify или Tripwire, для отслеживания изменений в файловой системе.

Резервное копирование

Настройте ежедневное резервное копирование файлов и базы данных. Храните копии вне сервера.

Это можно и даже нужно сделать как средствами платформы 1С-Битрикс, так и дополнительно на уровне операционной системы или хостинг-провайдера.


Дополнительные меры

Защита от брутфорса

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

Nginx:


location /bitrix/admin/ {
auth_basic "Admin Area";
auth_basic_user_file /etc/nginx/.htpasswd;
limit_req zone=one burst=5;
}


Использование CAPTCHA

Добавьте CAPTCHA на формы входа и регистрации.


Заключение

Защита сайта на 1С-Битрикс требует комплексного подхода. Регулярное обновление, настройка прав доступа, использование WAF и мониторинг — это лишь часть мер, которые помогут вам избежать взлома. Если ваш сайт уже заражен, не теряйте время — обратитесь к профессионалам из компании Medialine для оперативного восстановления и усиления защиты.