Обновление PHP на Bitrix с PostgreSQL требует точный патч
Апдейт модулей Битрикс не лечит дыру в PHP на PostgreSQL: нужны конкретные номера сборок после патчей от 30 июля.

Сайт «уже на 8.2», обновления продукта ставятся — и всё равно остаётся вопрос: закрыта ли дыра CVE-2026-17543. После патчей PHP от 30 июля 2026 года для парка коробочных Bitrix и Битрикс24 на PostgreSQL минимум продукта и патч-уровень безопасности — разные планки.
Уязвимость сидит в runtime PHP, в расширении pgsql, а не в «магическом» обновлении ядра. Пока на хосте нет точной сборки с фиксом, апдейт модулей сам по себе CVE не закрывает.
Что именно закрыли в PHP

PHP Group опубликовал advisory GHSA-7qpv-r5mr-78m4 / CVE-2026-17543: SQL injection в ext-pgsql через breakout из литерала E'...'. Severity в advisory — High. Дата публикации — 30 июля 2026.
Затронуты convenience-функции, которые идут через php_pgsql_convert(): pg_insert(), pg_update(), pg_select(), pg_delete(). Строка экранируется через PQescapeStringConn(), затем оборачивается в escape-string constant E'...' (php_pgsql_add_quotes()).
При standard_conforming_strings = on (default PostgreSQL с 9.1) PQescapeStringConn() не экранирует обратный слэш в контексте E'...'. Payload вида zzz\' OR 1=1 -- (в PHP-строке \\ даёт один \) позволяет выйти из литерала. Фикс простой по смыслу: php_pgsql_convert() переведён на обычные литералы '...' без E'...'.
Патч-версии: 8.2.33, 8.3.33, 8.4.24, 8.5.9. Всё ниже этих номеров на ветках 8.2 / 8.3 / 8.4 / 8.5 — affected. Changelog PHP 8.4.24 датирован 30 июля 2026; строка PGSQL фиксирует GHSA-7qpv-r5mr-78m4. В том же батче были соседние CVE (bcmath, Phar) — фокус этой заметки только на CVE-2026-17543.
По SecurityOnline на дату доступа подтверждённой эксплуатации нет, патчи доступны. Писать про «уже массовую эксплуатацию» нельзя. CVSS v4 в обзорах SecurityOnline/IONIX — 8.1. Платформы уже выкатывают фикс: Pantheon 3 августа 2026 поднял 8.2.33 / 8.3.33 / 8.4.24 / 8.5.9 именно из‑за этого CVE.
Почему это бьёт по парку Bitrix на PostgreSQL

С 1 февраля 2026 системные требования 1С-Битрикс: PHP ≥ 8.2.0; рекомендуемая ветка — 8.4 и выше. Для БД PostgreSQL нужно расширение PostgreSQL для PHP. PostgreSQL в продуктах — только лицензия Энтерпрайз; установщик допускает PG от 11.
Helpdesk Битрикс24 (обновлено 23.07.2026): с 01.02.2026 ограничена поддержка PHP ниже 8.2; рекомендуют 8.3+. Без PHP ≥ 8.2 не ставятся обновления коробочных продуктов. Типичная ловушка после февральского порога: парк остался на 8.2.0–8.2.32 и формально «на минимуме», но без патча от 30.07.
Прямой удар по сайтам на MySQL этим CVE в ext-pgsql не идёт. В зоне внимания — PostgreSQL (Enterprise и миграции на PG). Путь эксплуатации — PHP runtime плюс вызовы convenience API с недоверенным вводом: кастомный код и модули с pg_select / pg_insert / pg_update / pg_delete. Утверждать, что ядро Битрикс гарантированно зовёт уязвимые pg_*, нельзя: официально подтверждены требование расширения и поддержка PG на Enterprise.
До и помимо патча класс бага обходят prepared statements / pg_query_params / PDO bind — по mitigation из IONIX/SecurityOnline. Для парка критерий «закрыто» всё равно один: точная версия runtime.
Как проверить парк

Для каждого сайта и хоста зафиксируйте три вещи — без этого «мы на 8.2» остаётся лозунгом:
- полную версию PHP — php -v, phpversion(), вывод bitrix_server_test.php или панель хостинга;
- тип БД — PostgreSQL или MySQL;
- наличие расширения pgsql.
Критерий закрытого патча — не «ветка 8.2 / 8.3 / 8.4», а на соответствующей ветке не ниже: 8.2.33 / 8.3.33 / 8.4.24 / 8.5.9.
Как обновить PHP на VMBitrix — и чего не ждать
Критично: PHP, MySQL и PostgreSQL не обновляются автоматически при обновлении виртуальной машины. Обновление BitrixEnv / «Update packages on host» само по себе не поднимает PHP до безопасной сборки.
Ручной путь BitrixVM 9:
- 1. Manage servers in the pool
- 6. Update PHP, MySQL, PostgreSQL (в старых текстах helpdesk иногда ещё «Update PHP and MySQL» — смотреть актуальный урок VM 9)
- hostname → Upgrade PHP → Update PHP to version x.x
BitrixVM 9.0.4: PHP по умолчанию 8.2; в меню доступны 8.3, 8.4, 8.5. Поддержка PostgreSQL в окружении — с BitrixVM 9.0.8 (апгрейд PG до 15/16 через то же меню). Перед сменой PHP — бэкап, обновление ядра/модулей и Marketplace-решений.
После апгрейда снова снимите полную версию и сверьте с патч-матрицей. «Мы на 8.2» без третьей цифры для CVE-2026-17543 ответа не даёт.
Что запомнить на следующий патч-цикл
- Инвентаризация парка PostgreSQL-сайтов важнее лозунга «уже на PHP 8».
- Апдейт модулей Битрикс ≠ патч runtime PHP.
- «Update packages» ≠ «Upgrade PHP» в меню VM.
- Сайты на MySQL этим CVE напрямую не бьются; фокус — PG + наличие pgsql.
- Кастом с convenience pg_* и пользовательским вводом — зона риска до патча; prepared statements снижают класс бага, но патч всё равно нужен.
Частые вопросы
Какие версии PHP закрывают CVE-2026-17543?
Патч-уровень: 8.2.33, 8.3.33, 8.4.24 и 8.5.9. Всё ниже этих номеров на ветках 8.2–8.5 считается affected; «просто 8.2» после февральского минимума продукта дыру не закрывает.
Закроет ли обновление ядра Битрикс эту уязвимость?
Нет. CVE в runtime PHP (ext-pgsql): фикс — в том, как сам PHP оборачивал уже экранированную строку в E'...' при default standard_conforming_strings=on. Обновление модуля Битрикс само по себе CVE в runtime не лечит.
Почему Update packages на VMBitrix не поднимает безопасный PHP?
По документации BitrixVM PHP, MySQL и PostgreSQL не обновляются автоматически вместе с виртуальной машиной. Нужен ручной путь: Manage servers → Update PHP, MySQL, PostgreSQL → Upgrade PHP до конкретной версии, затем проверка php -v / bitrix_server_test.php.
Сайты на MySQL тоже в зоне риска по этому CVE?
Напрямую CVE-2026-17543 бьёт по ext-pgsql, поэтому парк на MySQL этим advisором не закрывается как обязательный фокус. Внимание — к хостам с PostgreSQL (Enterprise / миграции) и установленным расширением pgsql.
Как BX Pulse помогает в такой ситуации
BX Pulse следит за доступностью и техническим состоянием проектов на 1С-Битрикс и помогает вовремя замечать отклонения по парку — в том числе когда после патч-цикла PHP важно не потерять хосты на PostgreSQL без нужной сборки. Добавьте первый сайт и настройте уведомления: https://bx-monitor.ru/.


