Массовая рассылка личных сообщений в Битрикс24
Модуль реализует функционал массовой рассылки сообщений в Bitrix24 с поддержкой:Вложений,Форматирования,Отправки от имени другого пользователя с запросом доступаПерсонификацией сообщений (переменные #NAME#, #LAST_NAME#, #SECOND_NAME#).Подробная инструкция для пользователей
Массовая рассылка личных сообщений в Битрикс24
Купить продление
Описание
Технические данные
- Опубликовано:
- 12.08.2025
- Обновлено:
- 14.09.2026
- Версия:
- 1.0.6
- Установлено:
- Менее 50 раз
- Подходящие редакции:
-
«Корпоративный портал»
- Адаптивность:
- Нет
- Поддержка Композита:
- Нет
- Совместимо с Сайты24
- Нет
Пользовательское соглашение
Описание
Модуль реализует функционал массовой рассылки сообщений в Bitrix24 с поддержкой:
Вложений,
Форматирования,
Отправки от имени другого пользователя с запросом доступа
Персонификацией сообщений (переменные #NAME#, #LAST_NAME#, #SECOND_NAME#).
Подробная инструкция
для пользователей
Обсуждения (0)
Обсуждения (0
)
Авторизуйтесь , чтобы оставить отзыв или задать вопрос разработчику.
Здесь пока никто ничего не написал. Будьте первым.
Что нового
| 1.0.6 (14.09.2026) |
Исправления безопасности.
- IDOR на вложениях, высокая критичность (components/masspersonalmessage.sender/class.php, handleSendAction): проверка MODULE_ID файла общая для всех пользователей модуля, поэтому пользователь с правом access_module мог перебором последовательных ID (attachments=[N]) прикрепить к своей рассылке файл, загруженный другим пользователем модуля, и получить его содержимое. Теперь при загрузке файла (handleFileUpload) его владелец фиксируется в сессии пользователя; при отправке (handleSendAction) принимаются только файлы, загруженные текущим пользователем в этой же сессии.
- Неверное поле в проверке владельца при отзыве доступа (handleRevokeAccess): отозвать выданное разрешение на отправку от своего имени мог только исходный запрашивающий (UF_KMPM_USER_ID), а не владелец идентичности (UF_KMPM_REQUESTED_USER_ID), от чьего имени разрешение выдано. В результате владелец идентичности не мог самостоятельно отозвать право, выданное им ранее. Теперь отзыв доступен обеим сторонам.
- Недостаточно строгая загрузка файлов, defense-in-depth (handleFileUpload): MFI-контроллеру передавался режим «любой файл» (allowUpload=A), а идентификатор модуля и forceMd5 брались из запроса. Заданы явный allowlist допустимых расширений, фиксированный moduleId и forceMd5=false.
|
| 1.0.5 (11.09.2026) |
Исправление безопасности.
- Обход аутентификации, defense-in-depth (components/masspersonalmessage.sender/class.php, executeComponent): AJAX-действия и загрузка файлов компонента проверяли только CSRF-токен (check_bitrix_sessid), но не авторизацию и право доступа к модулю — компонент полагался на то, что эту проверку уже сделала подключающая страница. Так как компонент переиспользуемый (может быть подключён на любой странице/шаблоне), проверка авторизации и права access_module перенесена внутрь самого компонента — теперь он защищён независимо от того, где подключён.
|
| 1.0.4 (09.09.2026) |
Исправление безопасности.
- IDOR на вложениях (components/masspersonalmessage.sender/class.php, handleSendAction): сервер проверял только существование файла по ID, но не его принадлежность модулю — пользователь с правом доступа мог прикрепить к рассылке произвольный файл из хранилища Bitrix, подобрав ID. Теперь дополнительно проверяется, что файл был загружен через виджет этого модуля (MODULE_ID = kuratovru.masspersonalmessage).
|
| 1.0.3 (09.09.2026) |
Исправление безопасности.
- Stored XSS (components/masspersonalmessage.sender/class.php, handleRequestAccess): имя запрашиваемого пользователя (user_name), формируемое из полей профиля NAME/LAST_NAME/SECOND_NAME, возвращалось в JSON-ответе без экранирования и вставлялось на клиенте через innerHTML. Значение user_name теперь экранируется через htmlspecialcharsbx() перед отправкой в ответе.
|
| 1.0.2 (09.09.2026) |
Исправления безопасности.
- Обход аутентификации (admin/access_module.php): AJAX-обработчик (add_user/delete_user) выполнялся до проверки прав администратора — любой авторизованный пользователь мог выдать или отозвать себе доступ к модулю. Проверка прав перенесена в самое начало файла и выполняется безусловно для всех действий.
- IDOR (components/masspersonalmessage.sender/class.php): обработчики одобрения/отклонения/отзыва запроса на отправку от имени не проверяли, что текущий пользователь — участник записи. Добавлена сверка текущего пользователя с полями записи перед выполнением действия.
- XSS (class.php, handleRequestAccess): requested_user_id из запроса подставлялся в JSON-ответ без приведения типа. Значение теперь приводится к (int) сразу после получения.
- XSS (templates/.default/template.php): имена пользователей (USER_NAME), формируемые из полей профиля, выводились в шаблон без экранирования. Весь пользовательский вывод теперь экранируется через htmlspecialcharsbx().
- Утечка информации (install/public/index.php): на публичной странице модуля был включён отладочный режим Bitrix (BX_DEBUG), раскрывающий детали ошибок и внутренние пути. Отладочный режим отключён.
|
| 1.0.1 (09.09.2026) |
Совместимость с PHP 8.2.
- Страница администрирования доступа admin/access_module.php содержала короткий тег <? endif; ?> вместо <?php endif; ?>. При отключённой директиве short_open_tag это приводило к фатальной ошибке синтаксиса, и страница не открывалась.
- Компонент рассылки class.php не объявлял свойство $arResult явно, что в PHP 8.2 помечено как устаревшее создание динамического свойства. Свойство объявлено явно.
|
Установка
- Выполните стандартную установку модуля
- Назначьте пользователей модуля через административную панель, раздел «Сервисы» → «Массовая рассылка» → «Управление доступом».
Подробная инструкция
для администраторов.
Другие решения разработчика