Module Updated "For Security": What a 1C-Bitrix Site Owner Should Check
Several recent Marketplace updates have strengthened access rights, data escaping, and log protection. We examine how to assess these changes and safely update a live site.

In this article
В списке обновлений Маркетплейса 1С-Битрикс за 23–24 сентября сразу несколько разработчиков упомянули безопасность. В одном решении доступ к административной части бронирования ограничили администраторами и добавили экранирование данных от XSS. В другом диагностический журнал перенесли за пределы публичного каталога и усилили защиту вывода настроек. Ещё несколько модулей сообщили об исправлениях безопасности без подробного описания.
Такой список нельзя читать как подтверждение массовой атаки или наличия одинаковой уязвимости во всех решениях. Но он напоминает о важном: безопасность сайта на 1С-Битрикс зависит не только от версии ядра. Каждый установленный модуль добавляет собственный код, формы, административные страницы, журналы и обработчики запросов.
Что скрывается за короткой строкой «улучшена безопасность»
Разработчики не всегда публикуют технические детали сразу. Это разумно, если раскрытие упрощает эксплуатацию проблемы до того, как владельцы сайтов успеют обновиться. Поэтому отсутствие номера уязвимости или подробного сценария не означает, что обновление можно отложить.
При этом короткая запись не говорит и о том, что сайт уже взломан. Правильная реакция — выяснить, установлено ли решение, какая версия работает сейчас, доступно ли обновление по активной лицензии и затрагивает ли оно публичные компоненты. Решения, которые не используются, но остаются установленными, тоже входят в поверхность атаки.
Особого внимания требуют модули с загрузкой файлов, формами без авторизации, обменом с внешними сервисами, собственными административными страницами и журналами. Через них проходят данные, которые нельзя считать безопасными только потому, что они пришли из интерфейса сайта.
Почему экранирование важно даже в административной части
XSS часто представляют как опасность только для публичных комментариев. На практике вредоносная строка может попасть в заказ, бронь, имя файла, адрес доставки или другое поле, а выполниться позже — когда сотрудник откроет запись в панели управления.
Административная страница в таком случае становится особенно привлекательной целью: у вошедшего сотрудника больше прав, чем у обычного посетителя. Поэтому данные нужно безопасно выводить в каждом контексте — в HTML, атрибуте, сценарии или ссылке. Проверка при вводе полезна, но не заменяет корректное экранирование при выводе.
После обновления стоит просмотреть формы, куда пользователь может передать текст или файл, а затем открыть соответствующие записи под тестовой учётной записью менеджера. Проверка должна подтвердить, что введённые символы отображаются как данные, а не меняют структуру страницы.
Зачем убирать журналы из публичного каталога
Диагностический журнал помогает искать ошибки, но легко превращается в источник утечки. В нём могут оказаться пути на сервере, идентификаторы заказов, адреса запросов, ответы внешних API и технические сообщения. Если файл лежит внутри каталога, доступного веб-серверу, одного случайно угаданного адреса иногда достаточно для чтения.
Журнал лучше хранить вне публичного корня, ограничивать права на файл и настроить ротацию. Секреты, пароли, токены и полные платёжные данные записывать туда нельзя. После переноса нужно проверить не только новое расположение, но и старые файлы: обновление модуля не всегда удаляет накопленные журналы автоматически.
Обновление следует устанавливать как изменение системы
Первый шаг — инвентаризация. Владелец сайта должен знать, какие решения установлены, какие реально используются, кто их разработчик и когда они последний раз обновлялись. Если модуль заброшен, его нельзя считать безопасным только потому, что он продолжает работать.
Перед установкой требуется полная резервная копия файлов и базы данных, а также проверка восстановления. Затем обновление устанавливают на тестовую копию с близкими версиями PHP, базы данных и веб-сервера. На ней проверяют оформление заказа, обмены, формы, фоновые задания и административные сценарии, связанные с модулем.
После переноса на рабочий сайт полезно просмотреть журналы веб-сервера и события 1С-Битрикс, проверить права на файлы и выполнить штатное сканирование безопасности. Если обновление меняет административный доступ, нужно убедиться, что менеджеры сохранили необходимые функции, а пользователи с ограниченными ролями не получили лишних возможностей.
Что делать с модулями, которые нельзя обновить
Иногда обновление недоступно из-за старой версии PHP, законченной лицензии или несовместимых доработок. Это уже не техническая мелочь, а управляемый риск. Его следует зафиксировать: какой компонент устарел, какие страницы он обслуживает, какие данные обрабатывает и чем временно ограничен доступ.
Временной мерой может быть отключение неиспользуемого публичного компонента, дополнительное ограничение административного раздела или перенос функции на поддерживаемое решение. Но такие меры должны иметь срок. Бесконечно закрывать старый модуль внешними фильтрами опасно: они не исправляют ошибку внутри кода и могут не увидеть новый способ её использования.
Свежие записи Маркетплейса показывают полезную закономерность: уязвимые места часто находятся не в заметной функции, а в служебной детали — журнале, атрибуте HTML, проверке роли или обработке входного значения. Поэтому безопасность 1С-Битрикс начинается с учёта компонентов и регулярного, проверяемого процесса обновления.
In the list of 1C-Bitrix Marketplace updates for September 23–24, several developers highlighted security. One solution restricted access to the booking administrative section to administrators only and added data escaping against XSS. Another moved its diagnostic log outside the public directory and strengthened protection for settings output. Several other modules reported security fixes without detailed descriptions.
Such a list should not be read as confirmation of a mass attack or a single vulnerability affecting all solutions. However, it serves as an important reminder: the security of a 1C-Bitrix site depends not only on the core version. Every installed module adds its own code, forms, administrative pages, logs, and request handlers.
What Lies Behind the Short Phrase "Security Improved"
Developers do not always publish technical details immediately. This is reasonable if disclosure simplifies exploiting the vulnerability before site owners can update. Therefore, the absence of a vulnerability number or a detailed scenario does not mean an update can be delayed.
At the same time, a short notice does not indicate that the site has already been compromised. The correct response is to determine whether the fix is installed, which version is currently running, whether an update is available under an active license, and whether it affects public components. Solutions that are not in use but remain installed also expand the attack surface.
Modules handling file uploads, unauthenticated forms, integrations with external services, custom administrative pages, and logs require special attention. Data passing through them cannot be considered safe simply because it originated from the site interface.
Why escaping matters even in the administrative section
XSS is often portrayed as a risk only for public comments. In practice, a malicious string can enter an order, booking, file name, delivery address, or other field and execute later when an employee opens the record in the control panel.
In this case, the administrative page becomes an especially attractive target: a logged-in employee has more privileges than an ordinary visitor. Therefore, data must be safely rendered in every context—HTML, attributes, scripts, or links. Input validation is useful, but it does not replace correct output escaping.
After the update, review forms where users can submit text or files, then open the corresponding records under a test manager account. The check must confirm that entered characters are displayed as data and do not alter the page structure.
Why remove logs from the public catalog
Diagnostic logs help find errors, but they can easily become a source of data leakage. They may contain server paths, order IDs, request addresses, external API responses, and technical messages. If a file resides within a directory accessible by the web server, a single accidentally guessed address is sometimes enough to read it.
Logs should be stored outside the public root, file permissions should be restricted, and rotation should be configured. Secrets, passwords, tokens, and full payment data must never be written to logs. After moving them, verify not only the new location but also old files: updating the module does not always automatically delete accumulated logs.
The update should be installed as a system change
The first step is inventory. The site owner must know which solutions are installed, which are actually in use, who developed them, and when they were last updated. If a module is abandoned, it cannot be considered secure just because it continues to work.
Before installation, create a full backup of files and the database, then verify the restoration process. Next, install the update on a test copy with similar PHP, database, and web server versions. On that environment, test the checkout flow, exchanges, forms, background jobs, and administrative scenarios related to the module.
After deploying to the live site, review web server logs and 1C-Bitrix events, check file permissions, and run a standard security scan. If the update changes administrative access, ensure managers retain necessary functions and users with limited roles do not gain extra capabilities.
What to do with modules that cannot be updated
Sometimes an update is unavailable due to an old PHP version, an expired license, or incompatible customizations. This is no longer a minor technical issue but a managed risk. Document it: which component is outdated, which pages it serves, what data it processes, and what temporary access restrictions apply.
A temporary measure may involve disabling an unused public component, adding restrictions to the administrative section, or migrating the function to a supported solution. However, such measures must have a time limit. Indefinitely blocking an old module with external filters is dangerous: they do not fix the error within the code and may fail to detect new ways of exploiting it.
Recent Marketplace entries reveal a useful pattern: vulnerabilities are often found not in prominent features but in service details such as logs, HTML attributes, role checks, or input value processing. Therefore, 1C-Bitrix security begins with accounting for components and maintaining a regular, verifiable update process.

Discussion0
Share your experience and ask questions. Comments without links appear after editorial review.
No comments yet. Start the discussion.