PostgreSQL Global Development Group, tip karışması kusurundan kaynaklanan CVE-2026-6460 dahil 52 güvenlik zaafiyetini gideren güncellemeleri yayımladı. Tam koruma için sunucuyu güncellemek ve C dilinde yazılmış eklentileri yeniden derlemek gerekiyor.
Yazılım ve Uygulamalar
Admin13 okunma

PostgreSQL, 52 güvenlik açığını 18.7, 17.12, 16.16, 15.20 ve 14.25 sürümleriyle kapattı

PostgreSQL Global Development Group, tip karışması kusurundan kaynaklanan CVE-2026-6460 dahil 52 güvenlik zaafiyetini gideren güncellemeleri yayımladı. Tam koruma için sunucuyu güncellemek ve C dilinde yazılmış eklentileri yeniden derlemek gerekiyor.

PostgreSQL, 52 güvenlik açığını 18.7, 17.12, 16.16, 15.20 ve 14.25 sürümleriyle kapattı

Haber detayı

PostgreSQL, yayımladığı güncellemelerle toplam 52 güvenlik zaafiyetini giderdi. Bunların arasında, CVE-2026-6460 numarasıyla takibe alınan ve CVSS puanı 8.8 olarak belirlenen kritik bir tip karışması kusuru da yer alıyor. Bu açık, veritabanında nesne oluşturma yetkisine sahip bir kullanıcının sunucu üzerinde kod çalıştırmasına olanak tanıyor. Kaynaklar, 18.7, 17.12, 16.16, 15.20 ve 14.25 öncesindeki tüm sürümlerin etkilendiğini belirtiyor.

Tip karışması kusuru ve çalışma şekli​

Kusur, adlandırılmış alanlardan oluşan ve her alanın kendi veri türüne sahip olduğu bileşik (composite) türlerde görülüyor. PostgreSQL'de bir alanın türü değiştirilirken, sunucunun diğer kısımlarında hâlâ o alanın eski değerleri saklanabiliyor. Sunucu bu eski değerleri, artık sahip olduğu yeni tür gibi okuyarak tip karışmasına yol açabiliyor. Projenin sürüm notlarına göre açıklanan çözüm, sunucunun bir değerin türüyle artık eşleşmediğini fark etmesini sağlayan sürüm kontrolleri eklemesini içeriyor.

Mehmet Ince'nin teknik analizi ve etkilendiği hizmetler​

Güvenlik araştırmacısı Mehmet Ince, bu açık için çalışan bir istismarı PostgreSQL 18.6 üzerinde gösteren teknik bir yazı yayımladı. Ince'nin yöntemi, bir değeri tutan bir sorgu hazırlamayı, bu değerin alanlarından birinin türünü değiştirmeyi ve ardından sorguyu çalıştırmayı içeriyor. Yazıda, yamalanmamış bir sunucuyu bu yolla çökerten SQL kodu ve ikinci adımda hafıza adreslerini sızdıran bir teknik paylaşılıyor; ancak sunucuyu komut çalıştırmaya götüren son adımın SQL kodu paylaşılmıyor. Ince, bu çökme olayını "en düşük yetkili oturum açma rolü" olarak tetikleyebileceğini belirtiyor.
Projenin güvenlik danışmanlığı belgesi, saldırganı yalnızca nesne oluşturabilen biri olarak tanımlıyor; bu yetkinin hangi izinleri gerektirdiğini net olarak açıklamıyor. PostgreSQL paketleri sunan Red Hat ise kendi değerlendirmesinde, saldırganın nesne oluşturma veya değiştirme yeteneğine sahip bir veritabanı oturumuna sahip olması gerektiğini ifade ediyor. Hiçbiri kaynak, yalnızca varsayılan izinlere sahip bir hesabın kod çalıştırmaya kadar gidebileceğini belirtmiyor.
Ince, kusurun kökenini 5 Mayıs 2004'te PostgreSQL'in bir sütunun türünü değiştirme yeteneği kazanmasına, kod çalıştırma tekniğinin ise 14 Mayıs 2015'te yapılan daha sonraki bir değişikliğe dayanıyor. Araştırmacı, istismarı yönetilen PostgreSQL hizmetlerine uyarladı ve kanıtlarını bu hizmetlerin güvenlik ekipleriyle Ağustos ayında gizli olarak paylaştı. Çalışmalarında yer alan tedarikçiler arasında AWS (Aurora ve RDS), Microsoft (Azure PostgreSQL), Google (AlloyDB), Supabase, Databricks ve Ubicloud bulunuyor.

Yöneticiler için alınacak önlemler​

Yöneticiler, mevcut ana sürümlerine uygun olacak şekilde sunucularını 18.7, 17.12, 16.16, 15.20 veya 14.25 sürümüne güncellemeli. Bu güncelleme sırasında, sunucuda yüklü tüm C dilinde yazılmış eklentiler de yeniden derlenmeli veya güncellenmeli. Projenin RPM paket bakım ekiplerinin deposu bildirisine göre, daha eski sürümlere karşı derlenen eklentiler hâlâ yükleniyor ancak bu sürümde giderilen açıklardan korunuyor olmayabilir. Bazı eklentiler için kaynak kodu değişiklikleri de gerekebilir. Yeni sürümler için yeniden derlenen eklentiler, eski sunucularda yüklenemez hale gelebilir.
  • PostgreSQL, kendi paket servisi dışında çalışıyorsa (örneğin Patroni altında), RPM paket bakım ekibinin blog yazısında belirttiği gibi güncelleme tamamlandığında hemen yeniden başlatılmalı.
  • pg_dump, pg_restore, reindexdb ve vacuumdb gibi istemci araçları, bu araçların çalıştığı her makinede güncellenmeli.
  • Projenin uyarısına göre, kontrolleri devre dışı bırakmak için yeni composite_type_mismatch ayarı kullanılmamalı; bu durum güvenlik riskleri taşıyor.
  • Güncelleme yapıldıktan sonra, sürüm duyurusundaki yeniden dizin oluşturma adımları izlenmeli. Artık yedekleme kullananlar yeni bir tam yedek alıp, sonraki artımlı yedeklerin temelini bu yedeğe almalı.
\nProjenin güvenlik danışmanlığı ve sürüm notları, henüz güncellenemeyecek sunucular için bir kaçış yöntemi sunmuyor. PostgreSQL 14, yaşam döngüsünün sonuna (end-of-life) ulaştı ve 14.25 bu ana sürüm için son sürüm. Eski ana sürümleri de etkileniyor ancak bunlar için güncelleme yapılmadı.

İstemci araçlarındaki diğer riskler​

Aynı güncellemede giderilen diğer zaafiyetlerin birkaçı istemci araçlarında yer alıyor. Örneğin, ustalaştırılmış bir arşiv, pg_restore aracını çalıştıran kullanıcı kimliğiyle kod çalıştırmaya neden olabilir. Benzer şekilde, ele geçirilmiş bir kaynak sunucu, pg_dump'un tar çıktısındaki geri yükleme (restore) betiği yoluyla psql aracının kod çalıştırmasına yol açabilir.

Sıkça Sorulan Sorular​

PostgreSQL'in CVE-2026-6460 açığını kim kapattı ve ne zaman?​

Bu açığı PostgreSQL Global Development Group kapattı; güncellemeler bu haberin yayınlandığı günün bir gün öncesine (dün) yayımlandı. Etkilenen sürümler 18.7, 17.12, 16.16, 15.20 ve 14.25'in öncesi.

Bu açık için bir saldırı gözlendi mi?​

PostgreSQL Global Development Group, bu kusuru kullanan bir saldırı raporlamadı. ABD Siber Güvenlik ve Altyapı Dairesi'nin (CISA) CVE kayıtlarındaki değerlendirmesi de istismar düzeyini 'yok' olarak listeliyor.

Yöneticilerin alması gereken acil önlem nedir?​

Yöneticilerin sunucularını ilgili ana sürümlerine göre 18.7, 17.12, 16.16, 15.20 veya 14.25 olarak güncellemesi, aynı anda tüm C dilinde yazılmış eklentileri yeniden derlemesi veya güncellemesi ve istemci araçlarını güncellemesi gerekiyor.

Bu açık kimin tarafından istismar edilebilir?​

Projenin güvenlik danışmanlığı belgesi, saldırganın nesne oluşturabilme yetkinizine sahip olmasını gerektiriyor. Red Hat'in değerlendirmesi ise saldırganın nesne oluşturma veya değiştirme yeteneğine sahip bir veritabanı oturumuna ihtiyaç duyduğunu belirtiyor; yalnızca varsayılan izinlere sahip bir hesabın tam istismarı gerçekleştirebileceği kaynaklarda açıkça belirtilmiyor.

PostgreSQL 14 için ne durumda?​

PostgreSQL 14 sürümü artık yaşam döngüsünün sonuna (end-of-life) ulaştı. Bu nedenle 14.25 sürümü, 14 için son güncelleme sürümü olarak yayımlandı ve bu sürümden daha eski ana sürümler için güncelleme yapılmadı.

Etiketler

Yorumlar (0)

Yorum yapmak için giriş yapmalısınız.

Geri
Üst