Zafiyet.live Keşfet. Değerlendir. Düzelt. Doğrula.
  • Yama var
  • Son 7 gün
  • CWE-191
  • CWE-787

CVE-2026-120058

psqlODBC sürücüsünde sonraki FETCH yanıtı nedeniyle satır önbelleği taşması

PostgreSQL psqlODBC

Yüksek 7,5 CVSS 3.1
Yayımlandı
Güncellendi
2 Kas 2026
Açık yaşı
0 gün
Kaydı açan
PostgreSQL

Yönetici özeti

Bu açık, veritabanına bağlanmak için kullanılan bir yazılım bileşenini etkiler ve kötü niyetli bir veritabanı sunucusu bağlantısı üzerinden sistemlerin ele geçirilmesine yol açabilir. Etkilenen sistemlerde veri güvenliği ve hizmet sürekliliği açısından risk yüksektir. Güncellemenin mümkün olan en kısa sürede uygulanması önerilir.

ÖzetTürkçe

psqlODBC sürücüsü, bir imlecin ilk sonucundaki sütun sayısına göre satır önbelleğinin boyutunu belirler; ancak sonraki FETCH yanıtlarında sütun sayısını yeniden hesaplar ve bunun önceki değerle uyuşup uyuşmadığını kontrol etmez. Mevcut SSL ayarlarına göre güvenilmeyen bir sunucu, sonraki bir FETCH yanıtında daha fazla sütun göndererek sürücünün ayrılmış bellek alanının dışına yazmasına neden olabilir. Ayrıca anahtar alanlarından daha az sütun içeren bir keyset yanıtı, işaretsiz sütun sayısının taşmasına yol açar. Sorun UseDeclareFetch etkinken tetiklenebilir ve psqlODBC 18.00.0006 öncesi sürümleri etkilenir.

Saldırgan ne yapabilir?

Saldırgan, sürücüyü çalıştıran uygulamanın belleğini bozarak çökmeye veya kötü amaçlı kod çalıştırmaya yol açabilir. Bu, CVSS'e göre yüksek gizlilik, bütünlük ve erişilebilirlik etkisi taşır.

Kaynaktaki açıklama (İngilizce)

psqlODBC sizes its row cache from the column count of a cursor's first result, but recomputes the column count from each later FETCH reply without checking that it matches. A server not trusted under current SSL settings can answer a later FETCH with more columns and make the driver write tuple records past the end of the heap allocation. A keyset reply with fewer columns than the key fields also underflows the unsigned field count. This is reachable with UseDeclareFetch enabled. Versions before psqlODBC 18.00.0006 are affected.

Üreticinin çözüm notu (İngilizce)

Upgrade to psqlODBC 18.00.0006 or later. The driver rejects a column count that changes between fetches of the same cursor, and a keyset reply with fewer columns than the key fields.

Üreticinin geçici önlemi (İngilizce)

Set UseDeclareFetch=0, or connect only to servers authenticated with sslmode=verify-full or an equivalent GSS setting.

Ne yapmalı?

  1. psqlODBC sürücüsünü 18.00.0006 veya daha yeni bir sürüme yükseltin. Yeni sürüm, aynı imlecin farklı getirmeler arasında değişen sütun sayısını ve anahtar alanlarından az sütun içeren keyset yanıtlarını reddeder. Üretici
  2. Yükseltme yapılamıyorsa UseDeclareFetch ayarını devre dışı bırakın (değeri 0 yapın). Üretici
  3. Yükseltme yapılamıyorsa, bağlantı kurulan sunucuların sslmode=verify-full veya eşdeğer bir GSS ayarıyla doğrulandığından emin olun. Üretici

Ek önlemler

  • Sürücüyü kullanan uygulamaların bağlandığı veritabanı sunucularının adreslerini ve sertifika doğrulama ayarlarını gözden geçirin. Genel öneri
  • Sürücü sürümlerini envanterde tutun ve güvenlik güncellemelerini düzenli olarak takip edin. Genel öneri
  • Uygulama çökmeleri veya beklenmeyen bellek davranışları için günlükleri izleyin. Genel öneri

Etkilenen sürümler1 yazılım

YazılımEtkilenenDüzeltildiği sürüm
PostgreSQL psqlODBC < 18.00.0006 18.00.0006

Kaynaklar3 kaynak

Kayıt geçmişi

  1. Yayımlandı

İlgili açıklar

Türkçe metin, resmi kayıtlardaki bilgilerle yapay zekâ yardımıyla yazıldı ve yayından önce otomatik kontrollerden geçti. Bir değişikliği uygulamadan önce üreticinin duyurusuna mutlaka bakın.