PostgreSQL’in çoğaltma mekanizmasında bulunan ve sunucuda kod çalıştırılmasına imkân verebilen ciddi bir güvenlik açığının yaklaşık 12 yıldır mevcut olduğu ortaya çıktı.
PostGREShell adı verilen ve
CVE-2026-6471 koduyla takip edilen açık, PostgreSQL’in mantıksal çözümleme özelliğinde gerekli yetkilendirme kontrolünün yapılmamasından kaynaklanıyor. Güvenlik sorununa 10 üzerinden
7,2 CVSS puanı verildi.
Açıktan yararlanılabilmesi için saldırganın PostgreSQL sunucusuna doğrudan ve kimlik doğrulaması olmadan erişmesi yeterli değil. Saldırganın, süper kullanıcı olmayan ancak REPLICATION yetkisine sahip geçerli bir PostgreSQL hesabını ele geçirmesi gerekiyor.
Bu yetki; yedekleme araçları, ikincil sunucular, değişiklik verisi yakalama sistemleri ve bazı izleme yazılımları tarafından kullanılabiliyor. Normalde yalnızca veritabanı çoğaltma işlemleri için verilen hesabın, açık nedeniyle sunucuya haricî bir kitaplık yüklemek amacıyla kötüye kullanılabildiği belirlendi.
PostgreSQL’in resmî açıklamasına göre saldırgan, işletim sistemindeki postgres hesabının görebildiği bir dosyayı mantıksal çözümleme eklentisi olarak yükleyebiliyor. Dosya yüklendiğinde içerisindeki kod, PostgreSQL sunucu işleminin yetkileriyle çalıştırılıyor.
Açığı keşfeden Cyera araştırmacıları, başarılı bir saldırının ardından PostgreSQL süper kullanıcı yetkisi kazanılabildiğini ve kalıcı bir arka kapı oluşturulabildiğini gösterdi. Bu durumda saldırgan:
- Veritabanlarındaki bütün tablolara erişebilir.
- Kayıtları değiştirebilir veya silebilir.
- PostgreSQL sunucusunun erişebildiği dosyaları okuyabilir.
- İşletim sistemi komutları çalıştırabilir.
- Yapılandırma dosyalarını değiştirerek kalıcı erişim sağlayabilir.
Araştırmacılara göre güvenlik açığı PostgreSQL 9.4’ün yayımlandığı 2014 yılından beri mevcut ve Windows, Linux ile macOS sistemlerini etkiliyor. Bununla birlikte saldırının uygulanma yöntemi işletim sistemine ve sunucu yapılandırmasına göre değişiyor.
Windows sunucularında, dışarıya yönelik SMB bağlantılarına izin veriliyorsa kötü amaçlı bir DLL dosyası ağ üzerindeki UNC yolu kullanılarak yüklenebiliyor. Linux ve macOS sistemlerinde ise saldırganın genellikle zararlı kitaplığı sunucunun erişebildiği bir konuma önceden yerleştirmesi veya NFS otomatik bağlama özelliğinden yararlanması gerekiyor.
Hangi PostgreSQL sürümleri güncellenmeli?
CVE-2026-6471 aşağıdaki sürümlerde giderildi:
- PostgreSQL 18: 18.6
- PostgreSQL 17: 17.11
- PostgreSQL 16: 16.15
- PostgreSQL 15: 15.19
- PostgreSQL 14: 14.24
Bu sürümlerden daha eski bir PostgreSQL kurulumu kullananların güncellemeyi gecikmeden uygulaması gerekiyor. PostgreSQL 13 ve daha eski destek dışı ana sürümler için güvenlik düzeltmesi yayımlanmadığından desteklenen bir sürüme geçiş yapılmalı.
Yöneticilerin güncellemenin ardından REPLICATION yetkisine sahip hesapları incelemesi, bu yetkiye ihtiyacı olmayan hesaplardan özelliği kaldırması ve çoğaltma bağlantılarını yalnızca güvenilir IP adresleriyle sınırlandırması öneriliyor.
Veritabanı sunucularından dışarıya doğru SMB ve NFS bağlantılarının engellenmesi de bazı saldırı yöntemlerinin önüne geçebilir. Beklenmeyen CREATE_REPLICATION_SLOT işlemleri ve dosya yolu içeren olağan dışı eklenti adları ayrıca incelenmeli.
PostgreSQL projesi veya araştırmacılar, CVE-2026-6471’in gerçek saldırılarda kullanıldığını doğrulamadı. Buna rağmen geçerli bir çoğaltma hesabının ele geçirilmesi durumunda oluşabilecek etkinin büyüklüğü nedeniyle güncellemenin öncelikli olarak uygulanması gerekiyor.
Kaynaklar:
PostgreSQL’in CVE-2026-6471 duyurusu,
PostgreSQL güvenlik güncellemesi,
Cyera’nın PostGREShell araştırması