
PostgreSQL виправляє 52 вразливості, зокрема 22-річну помилку
Оновлення PostgreSQL виправляють 52 вразливості безпеки, зокрема CVE-2026-6460, помилку плутання типів, що може дозволити автентифікованому користувачеві із правами створення об'єктів виконувати код на сервері.
PostgreSQL випустив оновлення, що виправляють 52 вразливості безпеки, зокрема CVE-2026-6460, помилку плутання типів із оцінкою CVSS 8.8, яка може дозволити автентифікованому користувачеві бази даних із правами створення об'єктів виконувати код на сервері. PostgreSQL Global Development Group не повідомляла про атаки з використанням цієї вразливості, а CISA зазначає, що експлуатація відсутня.
Вразливість
CVE-2026-6460 впливає на всі версії PostgreSQL до 18.7, 17.12, 16.16, 15.20 і 14.25. Вона стосується складених типів, що будуються з іменованих полів, кожне з яких має власний тип даних. Тип поля можна змінити, поки старі значення цього типу ще зберігаються в інших місцях, тому сервер міг прочитати старе значення так, ніби воно мало новий тип. Виправлення додає перевірки версій для виявлення невідповідності. Код, виконаний через цю вразливість, має права користувача операційної системи, під яким працює PostgreSQL.
Дослідження експлуатації
Дослідник безпеки Mehmet Ince цього тижня опублікував технічний розбір, що описує робочий експлойт для PostgreSQL 18.6. Його метод готує запит, який зберігає значення, змінює тип одного поля, а потім виконує запит. У розборі є SQL, що аварійно завершує роботу непатченого сервера, і другий крок, який витікає адреси пам'яті, але немає SQL для останнього кроку, що змушує сервер виконати команду. Він написав, що міг спричинити аварію під найменш привілейованим обліковим записом для входу. Рекомендація описує нападника як того, хто може створювати об'єкти, не зазначаючи потрібних привілеїв. Red Hat каже, що нападнику потрібен вхід у базу даних, який може створювати або змінювати об'єкти. Жодне з цих джерел не каже, чи може обліковий запис лише з типовими привілеями піти далі за аварію і виконати код.
Інші виправлення
Проєкт зазначає понад дюжину репортерів для CVE-2026-6460 і зазначає Mehmet Ince як репортера п'яти інших вразливостей у цьому випуску. Він оцінює 32 з 52 вразливостей на 8.8, найвищий бал у випуску. За його індексом вразливостей лише одна серверна вразливість не потребує ані входу, ані дії користувача: CVE-2026-116322 дозволяє неавтентифікованому клієнту спричинити перезапуск серверів PostgreSQL 18. Виправлення клієнтських інструментів включають створений архів, який може змусити pg_restore виконати код як його користувач, і скомпрометований вихідний сервер, який може змусити psql виконати код через tar-вивід pg_dump.
Дії адміністраторів
Оновіть сервер до 18.7, 17.12, 16.16, 15.20 або 14.25, відповідно до основної версії. Одночасно перезберіть або оновіть усі розширення мовою C. Розширення, зібрані для старіших випусків, все ще завантажуються, але можуть не бути захищеними від вразливостей, виправлених у цьому випуску. Якщо PostgreSQL працює поза власним сервісним юнітом пакета, наприклад під Patroni, перезапустіть його одразу після оновлення. Оновіть клієнтські інструменти, такі як pg_dump, pg_restore, reindexdb і vacuumdb, на кожній машині, де вони працюють. Не використовуйте нове налаштування composite_type_mismatch, щоб вимкнути перевірки, оскільки проєкт каже, що це несе ризики безпеки. Рекомендація і примітки до випуску не пропонують обхідного шляху для серверів, які ще не можна оновити.
PostgreSQL 14 тепер завершив життєвий цикл, а 14.25 є його останнім випуском. Старіші основні версії також уражені і не отримали оновлення. Після оновлення виконайте кроки переіндексації з оголошення про випуск. Якщо ви використовуєте інкрементні резервні копії, зробіть нову повну резервну копію і будуйте на її основі пізніші інкрементні копії.
Джерела: The Hacker News
SiTech — веброзробка з підтримкою AI
Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.