KeePass, açık metin ana parolasının uygulamanın belleğinden çıkarılmasına izin veren CVE-2023-3278 güvenlik açığını gideren 2.54 sürümünü yayımladı.
Yeni bir KeePass parola yöneticisi veritabanı oluştururken, kullanıcıların veritabanını şifrelemek için kullanılan bir ana parola oluşturması gerekir. Gelecekte veritabanını açarken, kullanıcıların şifresini çözmek ve içinde saklanan kimlik bilgilerine erişmek için bu ana anahtarı girmeleri gerekir.
Ancak, Mayıs 2023’te güvenlik araştırmacısı ‘vdohney’, açık metin KeepPass ana parolasını uygulamanın bir bellek dökümünden kısmen çıkarmanıza olanak tanıyan bir güvenlik açığını ve kavram kanıtı istismarını açıkladı.
Bir KeePass hata raporunda vdohney, “Sorun SecureTextBoxEx ile ilgili. Girdiyi işleme şekli nedeniyle, kullanıcı parolayı yazdığında artık dizeler olacak” dedi.
“Örneğin, “Parola” yazıldığında, şu artık dizilerle sonuçlanır: •a, ••s, •••s, ••••w, ••••••o, •••••• r, •••••••d.”
Bu dumper, KeePass çalışma alanı kilitli veya program yakın zamanda kapatılmış olsa bile, kullanıcıların ilk bir veya iki karakter dışında neredeyse tüm ana parola karakterlerini kurtarmasına olanak tanır.
Bilgi çalan kötü amaçlı yazılım veya tehdit aktörleri, programın belleğini boşaltmak ve onu ve KeePass veritabanını, bellek dökümünden şifresiz metin parolasının çevrimdışı olarak alınması için uzak bir sunucuya göndermek için bu tekniği kullanabilir. Parola alındıktan sonra, KeePass parola veritabanını açabilir ve kayıtlı tüm hesap kimlik bilgilerine erişebilirler.
KeePass’ın yaratıcısı ve ana geliştiricisi Dominik Reichl, kusuru kabul etti ve beta yapılarında test edilen etkili bir çözümü halihazırda uyguladığı için yakında bir düzeltme yayınlayacağına söz verdi.
KeePass 2.5.4 güvenlik açığını düzeltir
Hafta sonu Reichl, KeePass 2.54’ü beklenenden daha erken yayınladı ve 2.x şubesinin tüm kullanıcılarının yeni sürüme yükseltmeleri şiddetle tavsiye ediliyor.
KeePass 1.x, Strongbox veya KeePassXC kullanıcıları CVE-2023-32784’ten etkilenmez ve bu nedenle daha yeni bir sürüme geçmeleri gerekmez.
Güvenlik açığını gidermek için KeePass, metin kutularından veri ayarlamak veya almak için artık bir Windows API kullanıyor ve potansiyel olarak bellekten dökülebilecek yönetilen dizelerin oluşturulmasını engelliyor.
Reichl ayrıca, parolanın parçalarını bellekten almayı ve bunları geçerli bir ana parolada birleştirmeyi zorlaştırmak için KeePass işleminin belleğine rastgele karakterler içeren “sahte dizeler” ekledi.
KeePass 2.5.4 ayrıca KeePass yapılandırma dosyasını değiştiren saldırılara karşı ek güvenlik sağlayan ‘Tetikleyiciler’, ‘Global URL geçersiz kılmaları’ ve ‘Parola oluşturucu profillerini’ zorunlu yapılandırma dosyasına taşımak gibi diğer güvenlik geliştirmelerini de sunar.
Tetikleyiciler, geçersiz kılmalar ve profiller, önceki bir sürüm kullanılarak oluşturuldukları için zorunlu yapılandırmada depolanmıyorsa, 2.54’te otomatik olarak devre dışı bırakılacak ve kullanıcıların bunları ‘Araçlar’ ayarlar menüsünden manuel olarak etkinleştirmesi gerekecek.
KeePass 2.54’e yükseltme yapamayan kullanıcıların ana parolalarını sıfırlamaları, kilitlenme dökümlerini, hazırda bekletme dosyalarını ve ana parolalarının parçalarını içerebilecek takas dosyalarını silmeleri veya yeni bir işletim sistemi kurulumu gerçekleştirmeleri önerilir.
Sorunun yalnızca programın giriş formlarına yazılan parolaları etkilediğini unutmayın; bu nedenle, kimlik bilgileri kopyalanıp kutulara yapıştırılırsa, bellekte veri sızdıran dizeler oluşturulmaz.