
Giriş
OpenSSL, milyonlarca web sitesi ve çevrimiçi hizmet tarafından kullanılan, güvenli iletişimi sağlayan en önemli kriptografi kütüphanelerinden biridir. Ancak, yakın tarihte keşfedilen CVE-2024-12797 numaralı açık, OpenSSL’in özellikle Raw Public Keys (RPK) desteği ile ilişkilendirilen önemli bir güvenlik açığını gözler önüne sermiştir. Bu makalede, açığın teknik detayları, nasıl sömürülebileceği, sisteminizin etkilenip etkilenmediğinin nasıl kontrol edileceği ve alınması gereken önlemler ele alınacaktır.
Açığın Teknik Detayları
RPK Nedir ve Neden Kullanılır?
RPK, geleneksel X.509 sertifika zincirlerine alternatif olarak sunulan ve RFC7250 kapsamında tanımlanan bir kimlik doğrulama yöntemidir. RPK kullanımı, sertifika yönetimiyle uğraşmamak ve daha basit bir yapı sağlamak isteyen bazı uygulamalar için tercih edilebilmektedir. Fakat OpenSSL’de RPK desteği, varsayılan olarak devre dışı bırakılmış olup, sadece açıkça etkinleştirildiğinde kullanılır.
Açığın Kaynağı ve Etki Mekanizması
CVE-2024-12797 açığı, TLS/DTLS el sıkışma (handshake) işlemi sırasında ortaya çıkmaktadır. Özellikle, RPK kullanılarak sunucu kimlik doğrulaması yapılırken SSL_VERIFY_PEER doğrulama modu ile ilgili hatalı işlem nedeniyle, sunucunun doğrulanamadığı durumlarda el sıkışmanın beklenen şekilde kesilmemesi söz konusudur. Bu durum, saldırganların Man-in-the-Middle (MitM) saldırıları gerçekleştirmesine olanak tanır. Saldırganlar, sahte bir sunucu kimliği ile el sıkışmayı tamamlayarak istemci ile gerçek sunucu arasındaki iletişimi kesebilir, veri trafiğini izleyebilir veya manipüle edebilirler.
Sömürü Nasıl Yapılır?
- Adım 1: RPK’nin Etkin Olduğu Sistemlerin Hedeflenmesi
Açık, yalnızca RPK fonksiyonelliği açıkça etkinleştirilmiş sistemleri etkilemektedir. Saldırgan, bu sistemleri hedef alarak, TLS el sıkışması sırasında doğrulama hatasından yararlanır. - Adım 2: El Sıkışması Sırasında Kimlik Doğrulama Hatasının İstismar Edilmesi
Normal şartlarda, SSL_VERIFY_PEER modu aktif olduğunda sunucu kimlik doğrulaması başarısız olursa el sıkışması abort edilmelidir. Ancak, açık nedeniyle bu abort işlemi gerçekleşmez. Bu noktada, saldırgan, sahte RPK bilgilerini sunarak el sıkışmasının tamamlanmasını sağlar. - Adım 3: MITM Saldırısının Gerçekleştirilmesi
El sıkışmasının tamamlanmasının ardından, saldırgan istemci ve gerçek sunucu arasındaki veri trafiğini kesip yönlendirerek, gizli bilgilerin ele geçirilmesi veya değiştirilmesi gibi MITM saldırıları gerçekleştirebilir.
Etkilenme ve Risk Değerlendirmesi
Kimler Etkileniyor?
- RPK Özelliğini Etkinleştiren Kullanıcılar:
Açık, yalnızca TLS/DTLS el sıkışması sırasında RPK kullanımı açık olan sistemleri hedef almaktadır. Eğer sisteminizde RPK varsayılan olarak devre dışı bırakılmışsa ya da kullanılmıyorsa, bu açığa maruz kalma riskiniz oldukça düşüktür. - Etkilenen OpenSSL Sürümleri:
- OpenSSL 3.4: Versiyon 3.4.1 öncesi
- OpenSSL 3.3: Versiyon 3.3.2 öncesi
- OpenSSL 3.2: Versiyon 3.2.4 öncesi
Sömürüden Etkileniyor Muyum?
Eğer:
- Sisteminizde RPK desteğini açıkça etkinleştirdiyseniz,
- Ve yukarıda belirtilen açık versiyonlardan birini kullanıyorsanız,
o zaman sisteminiz potansiyel bir saldırıya açık hale gelmektedir. Buna karşın, RPK’yi kullanmıyorsanız veya SSL_get_verify_result() fonksiyonunu kullanarak doğrulama sonucunu kontrol ediyorsanız, saldırı vektörüne karşı daha dirençli olabilirsiniz.
Kontrol ve İzleme Yöntemleri
- OpenSSL Sürümünüzü Kontrol Edin:
Sisteminizde kullanılan OpenSSL sürümünü belirleyin. Sürüm numarası, yukarıda belirtilen etkilenen sürümlerden biri ise, güncelleme yapmanız gerekmektedir. - RPK Kullanım Ayarlarını Gözden Geçirin:
Konfigürasyon dosyalarınızda veya uygulama ayarlarınızda RPK desteğinin etkin olup olmadığını kontrol edin. Eğer aktifse, bu özelliğin gerekliliğini yeniden değerlendirin. - SSL_get_verify_result() Fonksiyonunu Kullanın:
El sıkışması sonrasında, sunucu doğrulamasının sonucunu kontrol eden bu fonksiyonun doğru bir şekilde uygulandığından emin olun. Böylece, olası doğrulama hatalarını erken aşamada tespit edebilirsiniz.
Mitigasyon ve Güncelleme Adımları
OpenSSL Güncellemeleri
Açığın giderilmesi için OpenSSL proje ekibi tarafından aşağıdaki yamalar yayınlanmıştır:
- OpenSSL 3.4 Kullanıcıları: OpenSSL 3.4.1’e güncelleme yapın.
- OpenSSL 3.3 Kullanıcıları: OpenSSL 3.3.2’ye güncelleme yapın.
- OpenSSL 3.2 Kullanıcıları: OpenSSL 3.2.4’e güncelleme yapın.
Bu güncellemeler, el sıkışması sırasında RPK doğrulama hatasının neden olduğu sorunu düzelterek, MITM saldırılarının önüne geçmeyi hedeflemektedir.
Diğer Öneriler
- Konfigürasyon Değerlendirmesi:
RPK desteğini kullanıyorsanız, bu özelliğin gerçekten gerekli olup olmadığını değerlendirin. Mümkünse, daha yaygın ve test edilmiş olan X.509 sertifika zincirlerine yönelin. - Güvenlik Denetimleri:
OpenSSL konfigürasyon ve sürüm denetimlerini düzenli aralıklarla gerçekleştirin. SIEM araçları ve diğer güvenlik izleme çözümleri, potansiyel saldırı vektörlerini erken tespit etmekte faydalı olabilir.
Sonuç
CVE-2024-12797 açığı, RPK desteğini aktif olarak kullanan sistemler için ciddi bir güvenlik riski oluşturmaktadır. Doğru yapılandırma ve güncelleme adımlarının atılması, saldırganların MITM saldırıları gerçekleştirme riskini minimize edecektir.
Eğer sisteminizde RPK desteğini kullanıyorsanız veya kullandığınız OpenSSL sürümü etkilenen versiyonlardan biri ise, en kısa sürede ilgili güncellemeyi yapmanız hayati önem taşımaktadır. Ek olarak, sistem yapılandırmalarınızı gözden geçirip gereksiz risk unsurlarını kaldırmak, uzun vadede güvenlik altyapınızın güçlenmesine katkı sağlayacaktır.
Güvenli bir ağ ortamı sağlamak için, bu tür açıkların düzenli olarak izlenmesi, analiz edilmesi ve güncellemelerin zamanında uygulanması kritik öneme sahiptir.