Siber güvenlik araştırmacıları, PostgreSQL açık kaynak veritabanı sisteminde, ayrıcalıklı olmayan kullanıcıların ortam değişkenlerini değiştirmesine olanak tanıyan ve potansiyel olarak kod yürütülmesine veya bilgilerin ifşa edilmesine yol açabilecek yüksek önemde bir güvenlik açığını ortaya çıkardı.
Şu şekilde izlenen güvenlik açığı: CVE-2024-10979CVSS puanı 8,8’dir.
Ortam değişkenleri, bir programın erişim anahtarları ve yazılım yükleme yolları gibi çeşitli türdeki bilgileri çalışma zamanı sırasında sabit kodlamaya gerek kalmadan dinamik olarak almasına olanak tanıyan kullanıcı tanımlı değerlerdir. Bazı işletim sistemlerinde başlatma aşamasında başlatılırlar.
PostgreSQL, Perşembe günü yayınlanan bir danışma belgesinde “PostgreSQL PL/Perl’de ortam değişkenlerinin yanlış kontrolü, ayrıcalığı olmayan bir veritabanı kullanıcısının hassas süreç ortamı değişkenlerini (örneğin, PATH) değiştirmesine olanak tanıyor” dedi.
“Saldırganın bir veritabanı sunucusu işletim sistemi kullanıcısı olmasa bile, bu genellikle rastgele kod yürütülmesini sağlamak için yeterlidir.”
Kusur PostgreSQL’in 17.1, 16.5, 15.9, 14.14, 13.17 ve 12.21 sürümlerinde giderildi. Sorunu keşfeden Varonis araştırmacıları Tal Peleg ve Coby Abrams, bunun saldırı senaryosuna bağlı olarak “ciddi güvenlik sorunlarına” yol açabileceğini söyledi.
Bu, PATH gibi ortam değişkenlerini değiştirerek rastgele kod yürütülmesini veya kötü amaçlı sorgular çalıştırılarak makinedeki değerli bilgilerin çıkarılmasını içerir, ancak bunlarla sınırlı değildir.
Kullanıcılara düzeltmeleri uygulamaları için yeterli zaman tanımak amacıyla güvenlik açığına ilişkin ek ayrıntılar şu anda gizli tutuluyor. Kullanıcılara ayrıca izin verilen uzantıları kısıtlamaları önerilir.
Varonis, “Örneğin, CREATE EXTENSIONS izinlerinin belirli uzantılarla sınırlandırılması ve ayrıca paylaşılan_preload_libraries yapılandırma parametresinin yalnızca gerekli uzantıları yükleyecek şekilde ayarlanması, CREATE FUNCTION iznini kısıtlayarak rollerin en az ayrıcalık ilkesine göre işlevler oluşturmasını sınırlamak” dedi.