CVE-2026-86863

Kritik

Açıklama

pgAdmin 4'ün Webserver kimlik doğrulama kaynağı, pgAdmin önündeki web sunucusu veya ters proxy tarafından onaylanan ve WSGI/CGI ortamı aracılığıyla iletilen bir kimliği kabul etmek üzere tasarlanmıştır. WebserverAuthentication.get_user(), request.environ üzerinden config.WEBSERVER_REMOTE_USER değerini okumakta ve bu işlem hiçbir sonuç döndürmediğinde, aynı ismi doğrudan gelen HTTP istek başlıklarından request.headers.get() aracılığıyla okuyarak yedekleme yapmaktaydı. Gelen bir HTTP başlığı, isteği gönderen kişi tarafından yazıldığından, pgAdmin'e erişebilen herhangi bir istemci bu başlığı kendisi sağlayabilir ve şifre veya başka bir kimlik bilgisi sunmadan mevcut bir Administrator dahil belirttiği herhangi bir kullanıcı adı ile kimlik doğrulaması yapabilirdi. WEBSERVER_REMOTE_USER, HTTP_ önekiyle başlayan veya HTTP_X_FORWARDED_USER veya X-Forwarded-User gibi tireli bir isim olarak yapılandırıldığında, WSGI sunucuları gelen başlıkları ortama tam olarak bu isimler altında yerleştirdiği için ortam araması da istemci tarafından sağlanan bir başlıkla karşılanabiliyordu. Dağıtımlar, yalnızca AUTHENTICATION_SOURCES içinde 'webserver' etkinleştirildiğinde etkilenmektedir. Düzeltme, gerçek bir CGI/WSGI değişkenini başlıktan türetilmiş bir değişkenden ayırır ve örtük olarak yalnızca ilkine güvenir. Başlık yoluyla onaylanan bir kimlik artık yalnızca operatör WEBSERVER_REMOTE_USER_FROM_HEADER aracılığıyla bunu açıkça seçtiğinde, istek WEBSERVER_TRUSTED_PROXIES listesinde yer alan bir eşten geldiğinde ve yapılandırılmışsa WEBSERVER_SHARED_SECRET_HEADER içinde sağlanan paylaşılan sır sabit zamanlı bir karşılaştırma altında WEBSERVER_SHARED_SECRET ile eşleştiğinde kabul edilir. Güvenilir eş kontrolü, kasıtlı olarak request.remote_addr yerine gerçek soket eş adresini okur; çünkü ProxyFix, ikincisini istemci kontrollü X-Forwarded-For başlığından yeniden yazar ve aksi takdirde bir saldırganın güvenilir proxy olduğunu iddia etmesine izin verir. Derinlemesine savunma olarak, login() artık auth_source değeri 'webserver' olmayan herhangi bir hesabı reddeder, böylece yanlış yapılandırılmış bir güven kapısı dahili veya LDAP hesabını üstlenmek için kullanılamaz. Bu sorun şu pgAdmin 4 sürümlerini etkilemektedir: 9.18 öncesindeki 6.2'den itibaren olanlar.

ÖnemKritik
CVSS9.8
İstismar olasılığı—
ÜrünPgadmin 4
Yayın17 Eyl 2026
İlk görülme17 Eyl 2026

Nasıl düzeltilir

Güncelleyin
  • pgadmin pgadmin_49.18 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
pgadmin pgadmin_46.2 ≤ v < 9.189.18

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.