.webp?w=696&resize=696,0&ssl=1)
DNN’de (eski adıyla Dotnetnuke) saldırganların ntlm kimlik bilgilerini sofistike bir Unicode normalizasyon bypass tekniği ile çalmasına izin veren kritik bir güvenlik açığı.
CVE-2025-52488 olarak izlenen güvenlik açığı, en eski açık kaynaklı içerik yönetim sistemlerinden birini etkiler ve pencerelerin ve .NET tuhaflıklarının akıllıca kullanımı yoluyla savunmacı kodlama önlemlerinin nasıl atlatılabileceğini gösterir.
Key Takeaways
1. CVE-2025-52488 in DNN allows attackers to steal NTLM credentials without requiring user authentication.
2. Specific Unicode characters (U+FF0E, U+FF3C) normalize into dots and backslashes after passing security validation, bypassing protection mechanisms.
3. Malicious filenames transform into UNC paths (\\attacker.com\share) that trigger SMB connections to attacker-controlled servers via File.Exists.
4. Enables NTLM credential theft affecting enterprises and demonstrating how defensive coding can be circumvented through character encoding.
NTLM kimlik bilgisi sızıntısı
Searchlight Cyber, güvenlik açığının .NET uygulamalarının Windows makinelerinde dosya sistemi işlemlerini nasıl işlediğinde temel bir zayıflık kullandığını bildirir.
Saldırganlar dosya yollarını kontrol ettiklerinde, saldırgan kontrollü SMB sunucularına bant dışı çağrıları tetikleyen UNC (Evrensel Adlandırma Sözleşmesi) yolları sağlayabilirler.
Bu mekanizma, File.exists, System.net.httpRequest ve System.net.WebClient gibi işlevlerle birleştirildiğinde özellikle tehlikeli hale gelir.
Saldırı yoldan yararlanır.
Microsoft belgesine göre, “Birincisi dışındaki bir bağımsız değişken köklü bir yol içeriyorsa, önceki yol bileşenleri göz ardı edilir ve döndürülen dize bu köklü yol bileşeni ile başlar.”
Bu davranış belgelenirken, sıklıkla C# kod tabanlarında güvenlik açıklarına yol açar.
Teknik analiz, bu güvenlik açığının çekirdeğinin DNN’nin Unicode kullanma sürecinde yattığını ortaya koymaktadır.
Uygulama, Path.getFileName çağrıları, Regex değiştirmeler ve Utility.ValidateFilename ve Utility.CleanFileName gibi doğrulama işlevleri dahil olmak üzere kötü amaçlı dosya yüklemelerini önlemek için birden fazla güvenlik sınırı uygular.
Ancak, bu güvenlik kontrolleri önemli yardımcı programdan önce gerçekleşir.ConvertUnicoDechars işlevi. Savunmasız kod bölümü şunları gösterir:
ConvertUnicoDechars işlevi bu satırdaki kritik güvenlik açığını içerir:
Bu normalleştirme işlemi, Unicode karakterlerini ASCII eşdeğerlerine dönüştürür ve daha önce uygulanan tüm güvenlik önlemlerini etkili bir şekilde atlar.
Araştırmacılar, tehlikeli yol bileşenlerine normalleşen belirli Unicode karakterlerini keşfettiler:
- %EF%BC%8E (U+FF0E): “Fullwidth Tam Durak” “” na normalleşir.
- %EF%BC%BC (U+FF3C): “Fullwidth Ters Solidus” “”
Bu karakterler, saldırganların ilk doğrulama sırasında güvenli görünen ancak normalleştikten sonra UNC yollarına dönüşen kötü niyetli dosya adları oluşturmalarına izin verir. İstismar yükü şunları gösterir:
İşlendiğinde, bu: \\ saldırgan.com \ share \ file.jpg olur ve NTLM kimlik bilgilerini saldırganın yanıtlayıcı sunucusuna sızdıran bir SMB bağlantısını tetikler.
Risk faktörleri | Detaylar |
Etkilenen ürünler | DNN – dnnconnect.cke html editör sağlayıcısı olan tüm sürümler |
Darbe | NTLM Kimlik Hırsızlığı |
Önkoşuldan istismar | – Kimlik Doğrulama Gerektirmez (Öne Kimlik Doğrulama Güvenlik Açığı)- Dosya Yükleme İşlevselliği ile DNN çalıştıran Hedef Sistem- SMB Etkin-Saldırgan Kontrollü Sunucu ile NTLM HashHes Almak İçin Windows Ortamı |
CVSS 3.1 puanı | 8.6 (Yüksek) |
Bu güvenlik açığı, Web uygulamalarında Unicode kullanmanın karmaşıklığını vurgular ve savunmacı programlama önlemlerinin karakter kodlama dönüşümleriyle nasıl zayıflatılabileceğini gösterir.
Bu güvenlik açığının önceden kimlik doğrulama niteliği, kullanıcı kimlik bilgilerinin yararlanmasını gerektirmediğinden ve NTLM rölesi saldırıları yoluyla etki alanı kimlik bilgilerini tehlikeye atabildiğinden, özellikle tehlikeli hale getirir.
Canlı kötü amaçlı yazılım davranışını araştırın, bir saldırının her adımını izleyin ve daha hızlı, daha akıllı güvenlik kararlarını alın -> Herhangi birini deneyin. Şimdi