· kaynak Hacker News – Front Page (native)
PostgreSQL, desteklenen tüm sürümlerde 52 güvenlik açığını yamaladı; PostgreSQL 14 ömrünün sonuna ulaştı
PostgreSQL'in son mini güncelleme turu, desteklenen tüm dallardaki 52 güvenlik açığını ve 140'tan fazla hatayı kapatıyor, PostgreSQL 19'un ikinci release candidate sürümünü sunuyor ve PostgreSQL 14 desteğini sonlandırıyor.

Desteklenen her dal yamalandı
PostgreSQL Global Development Group, veritabanının desteklenen tüm sürümleri — 18.7, 17.12, 16.16, 15.20 ve 14.25 — için güncellemeler yayınladı; ayrıca PostgreSQL 19'un ikinci release candidate sürümü çıktı. 12 Kasım 2026 tarihli duyuruya göre bu tur, son aylarda bildirilen 52 güvenlik açığını ve 140'tan fazla hatayı kapatıyor. Proje ayrıca bazı düzeltmelerin yükseltme sonrasında manuel takip adımları gerektirdiği uyarısında bulunuyor; bu adımlar sürüm duyurusunun "Updating" bölümünde ayrıntılı şekilde açıklanıyor.
Güvenlik düzeltmeleri neleri kapsıyor
Listede ağırlığı, projenin keyfi kod yürütmeyle sonuçlanabileceğini belirttiği bellek güvenliği ve tip karışıklığı hataları oluşturuyor; CVE'lerin büyük bölümü 8.8lik CVSS v3.1 puanı taşıyor. Yüksek puanlılar arasında şunlar var: ALTER ... SET DATA TYPE ile tetiklenen tip karışıklığı (CVE-2026-6460), çıktı parametrelerinde tip karışıklığı (CVE-2026-18447), paralel RECORD typmod işleminde use-after-free (CVE-2026-116304), düz olmayan arşivleri doğrulamayan pg_restore (CVE-2026-116314), tsvector_delete() içinde heap buffer taşması (CVE-2026-116315) ve abone tarafında sistem kataloglarına yazabilen mantıksal replikasyon (CVE-2026-120145).
PL/Perl yorumlayıcısı en çok tekil düzeltmeyi alan bileşen: CVE-2026-116307, CVE-2026-116309, CVE-2026-116319, CVE-2026-116320 ve CVE-2026-116326 numaralı CVE'lerde use-after-free ve tip karışıklığı düzeltmeleri yayıldı; PL/Tcl ise kendisine ait bir use-after-free düzeltmesi aldı (CVE-2026-116323).
Diğer maddeler ise dokundukları günlük işlemler nedeniyle öne çıkıyor. dblink bağlantıları ve mantıksal abonelikler, bir sunucudaki keyfi dosyalara veri eklemek için kullanılabiliyordu (CVE-2026-14661, 8.1 puan); pg_dump'ın tar formatı çıktısındaki restore.sql betiği psql komut enjeksiyonunu engellemiyordu (CVE-2026-116330); NOT NULL kısıtlamalarının adları pg_dump içinde SQL enjeksiyonuna kapı aralıyordu (CVE-2026-116318); bir veritabanı sahibi, vacuumdb --missing-stats-only üzerinden vacuumdb kullanıcısının kimliğiyle kod çalıştırabiliyordu (CVE-2026-116313, 7.2 puan); ayrıca extension betik işleme kısmı enjeksyona yakın iki düzeltme aldı (CVE-2026-6467 ve CVE-2026-120153, ikisi de 7.2).
Daha sessiz mantık hataları listeyi tamamlıyor: INSERT ... ON CONFLICT, otomatik güncellenebilir bir görünümün WHERE koşulunun veya satır güvenliği ilkesinin gizlemesi gereken satırları okuyabiliyor ya da değiştirebiliyordu (CVE-2026-16237 ve CVE-2026-120154); DROP OWNED ise komutu çalıştıran rolün sahibi olmadığı tablolardan kısıtlayıcı satır güvenliği ilkelerini kaldırabiliyordu (CVE-2026-116311).
PostgreSQL 14 ömrünün sonuna ulaştı
14.25 sürümü, PostgreSQL 14'ün alacağı son sürüm. Grup, bu sürümün artık ömrünü tamamladığını ve bundan böyle güvenlik ya da hata düzeltmesi almayacağını belirtiyor; üretimde hâlâ 14 çalıştıran yöneticilere desteklenen bir sürüme geçiş planı yapmalarını öneriyor.
Yeniden başlatmadan fazlasını gerektiren düzeltmeler
Güvenlik dışı bazı düzeltmeler, yamayı kurmanın mevcut hasarı onarmadığı bozulma senaryolarına değiniyor:
- Bir yedek (standby) sunucuda alınıp sonra dışa veya içe aktarılan anlık görüntüler yanlış sonuçlar üretebiliyordu; yedek sunucuya karşı çalışan paralel bir pg_dump üzerinden tetiklendiğinde hem dumper çıktısını hem de yedeğin kendi verisini bozabiliyordu.
- GIN index'leri, sorguların satır kaçırmasına ya da ilgisiz satırlar döndürmesine yol açacak biçimde bozulabiliyordu; proje, etkilenmiş olduğundan şüphelendiğiniz her index'i yeniden oluşturmanızı öneriyor.
- pg_trgm GiST index'leri, aramaların eşleşen satırları kaçırmasına neden olacak şekilde bozulabiliyordu; güncelleme sonrası bunların yeniden oluşturulması gerekiyor.
- REINDEX CONCURRENTLY bir TOAST tablosundaki index'i yeniden oluşturduysa, o index'e sonradan yapılan güncellemeler kaybolabiliyor ve bu durum eksik chunk numarası hataları olarak ortaya çıkabiliyordu; etkilenen index'lerin yeniden oluşturulması gerekiyor.
- Bölümlenmiş tablolardaki NOT NULL NO INHERIT kısıtlamaları artık CREATE TABLE ... LIKE dahil her durumda reddediliyor. Önceden bir bölüm, olmaması gereken yerde NULL değerler taşıyabiliyordu; duyuru, etkilenen kısıtlamaların nasıl bulunup onarılacağını açıklıyor.
- Uzunluk belirtilmeden tanımlanan bpchar sütunlarında B-tree index tekilleştirmesi (deduplication) kapatıldı; bu durum index-only taramalarda yanlış sonuçlar üretebiliyordu.
Proje, listelenen hataların PostgreSQL 18'i etkilediğini ve birçoğunun diğer desteklenen dallara da uygulandığını belirtiyor.
Neden önemli
Desteklenen her dalı kapsayan 52 CVE — birçoğu 8.8 puanlı ve bazıları mantıksal replikasyon, pg_dump ve pg_restore gibi rutin işlemlerle tetiklenebilir durumda — bunu sıradan bir mini sürüm güncellemesinden çok daha önemli kılıyor. PostgreSQL 14'ün ömür sonu duyurusu da en az bunun kadar ağır sonuç doğurabilir: bu sürümden sonra 14'te kalan kurulumlar gelecekte hiçbir güvenlik yaması almayacak, yani bugünkü güncelleme bir ana sürüm yükseltmesi için kesin bir son tarih haline geliyor. Ayrıca düzeltmelerin bir kısmı güncelleme sonrası yeniden index oluşturma veya kısıtlama onarımı istediği için, yeni mini sürümlerle yeniden başlatmak bozuk index'leri yerinde bırakabilir. PostgreSQL 19'un ikinci release candidate sürümü de artık dolaşımda olduğundan, hem yama turuyla hem 14'ün emekliliğiyle karşı karşıya olan ekiplerin bu iki çabayı birlikte planlaması mantıklı olabilir.
- #postgresql
- #database
- #security
- #open-source
- #devops