Genel Bakış
Transport Layer Security (TLS), modern internet iletişimlerinin büyük çoğunluğunu güvence altına alan kriptografik protokoldür. TLS 1.0, 1999 yılında; TLS 1.1 ise 2006 yılında standart hâline getirilmiştir. Her iki sürüm de yapısal zayıflıkları ve bunlara karşı geliştirilmiş pratik saldırılar nedeniyle RFC 8996 (Mart 2021) ile resmen kullanımdan kaldırılmıştır. Bu sürümleri hâlâ destekleyen sunucular, istemcilerin bozuk kriptografik ilkellerle oturum kurmasına izin verir ve TLS'nin sağlaması gereken gizlilik ile bütünlük güvencelerini ortadan kaldırır.
Sensagraph, sürekli taşıma katmanı güvenliği değerlendirmeleri kapsamında TLS 1.0 ve TLS 1.1 desteğini otomatik olarak tespit eder.
Nasıl çalışır
TLS el sıkışması sırasında istemci, desteklediği protokol sürümlerini ve şifre takımlarını içeren bir ClientHello iletisi gönderir. Sunucu TLS 1.0 veya TLS 1.1'i kabul ederse her iki taraf da bu eski protokol çerçevelerini kullanarak oturum kurabilir. Bu sürümlere özgü başlıca zayıflıklar şunlardır:
- BEAST (Browser Exploit Against SSL/TLS): TLS 1.0'ı etkiler; önceki kayıttan zincirlenen öngörülebilir IV ile CBC modunu kullanması, oturum çerezlerine yönelik seçili düz metin saldırılarına olanak tanır.
- POODLE (Padding Oracle On Downgraded Legacy Encryption): Aslen SSL 3.0'a yönelik bu saldırının varyantları TLS 1.0'ın CBC dolgusunu hedef alır; ortadaki adam konumundaki bir saldırganın şifreli metnin tek tek baytlarını çözmesini mümkün kılar.
- LUCKY13: TLS 1.0 ve 1.1'de kullanılan CBC modlu MAC-then-encrypt yapısına karşı zamanlama yan kanal saldırısı; kısmi düz metin kurtarmayı sağlar.
- Zayıf PRF ve MAC algoritmaları: TLS 1.0, Sahte Rastgele İşlevinde (PRF) MD5 ve SHA-1'in birleşimini kullanır; her ikisi de kriptografik açıdan kırılmış kabul edilir. TLS 1.1, IV işlemesini iyileştirmiş olsa da aynı zayıf PRF'yi korumaktadır.
- Sürüm düşürme saldırıları: Hem modern hem de eski TLS sürümlerini destekleyen sunucular, istemciler TLS 1.2 veya 1.3 tercih etse bile ağ düzeyindeki müdahalelerle daha zayıf sürümde oturum kurmaya zorlanabilir.
- AEAD şifre takımlarının yokluğu: TLS 1.0 ve 1.1, AES-GCM gibi İlişkili Verilerle Kimlik Doğrulamalı Şifreleme (AEAD) şifre takımlarını desteklemez; bu takımlar TLS 1.3'te zorunlu, TLS 1.2'de ise güçlü biçimde önerilmektedir.
İş etkisi
TLS 1.0 veya TLS 1.1'in etkin bırakılması, birden fazla boyutta risk oluşturur:
- Veri gizliliği: Aktif ağ saldırganları (örn. ortak Wi-Fi'de veya BGP ele geçirme yoluyla) yukarıdaki zayıflıkları kullanarak oturum trafiğini kısmen ya da tamamen çözebilir; kimlik bilgileri, oturum belirteçleri ve hassas veriler ifşa olabilir.
- Uyumluluk ve düzenleyici risk: PCI DSS, TLS 1.0'dan Haziran 2018'den itibaren uzaklaşılmasını zorunlu kılmaktadır. HIPAA kılavuzu, NIST SP 800-52 ve pek çok ulusal veri koruma çerçevesi en az TLS 1.2 kullanımını şart koşmaktadır. Uyumsuzluk; denetimlere, para cezalarına veya ödeme işleme kapasitesinin kaybına yol açabilir.
- Tarayıcı güveni kaybı: Chrome, Firefox, Safari ve Edge gibi büyük tarayıcılar 2020–2021 yılları arasında TLS 1.0 ve 1.1 desteğini kaldırdı. Bu tarayıcıları kullanan ziyaretçiler güvenlik uyarısı ya da bağlantı hatası alır; bu durum kullanıcı deneyimini ve marka güvenini olumsuz etkiler.
- Üçüncü taraf ve API iş ortağı gereksinimleri: Pek çok ödeme işlemcisi, bulut sağlayıcısı ve API tüketicisi TLS 1.0/1.1 bağlantılarını resmen reddeder; geçişi tamamlamamış kuruluşlar entegrasyon hatalarıyla karşılaşır.
Nasıl düzeltilir
- Sunucu veya yük dengeleyici düzeyinde TLS 1.0 ve TLS 1.1'i devre dışı bırakın. Kabul edilen minimum protokolü TLS 1.2 olarak ayarlayın; platform destekliyorsa TLS 1.3'ü de etkinleştirin. Yapılandırma söz dizimi yazılıma göre değişir:
- Nginx:
ssl_protocols TLSv1.2 TLSv1.3; - Apache:
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 - IIS:
HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocolsaltındaki kayıt defteri anahtarları ya da IIS Crypto / Grup İlkesi aracılığıyla devre dışı bırakın. - HAProxy:
ssl-min-ver TLSv1.2
- Nginx:
- Yapılandırmayı uyguladıktan sonra protokol düzeyinde tarama yaparak değişikliği doğrulayın; TLS 1.0 ve TLS 1.1 el sıkışmalarının reddedildiğini teyit edin.
- Güçlü bir şifre takımı politikasıyla destekleyin. TLS 1.2'de bile zayıf şifre takımlarını (RC4, 3DES, dışa aktarım sınıfı şifreler, anonim DH) devre dışı bırakın. ECDHE tabanlı AEAD takımlarını tercih edin (örn.
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256). - Desteklendiği her yerde TLS 1.3'ü etkinleştirin. TLS 1.3, önceki sürümlerdeki savunmasız el sıkışma modlarını ortadan kaldırır, ileri gizliliği zorunlu kılar ve yalnızca AEAD şifre takımlarını destekler.
- Ortamdaki tüm TLS sonlandıran uç noktaları kontrol edin: Yalnızca kamuya açık HTTPS değil; CDN kenar düğümleri, API ağ geçitleri, dahili mikro hizmetler, posta sunucuları ve veritabanı bağlantıları da dahil olmak üzere.
- Devre dışı bırakmadan önce istemci uyumluluğunu değerlendirin. Kalan TLS 1.0/1.1 istemcilerini belirlemek için erişim günlüklerini inceleyin; desteği kesmeden önce bu istemcileri bilgilendirin veya geçişlerini sağlayın. Çok eski cihazlar (örn. Android < 5.0, IE 10) güncelleme yapılmadan TLS 1.2 üzerinde anlaşma yapamaz.
- Mozilla'nın TLS yapılandırma oluşturucusuna başvurun (ssl-config.mozilla.org); güncel en iyi uygulamalarla uyumlu, sunucuya özgü önerilen yapılandırmaları sunar.
Kaynaklar
- RFC 8996 – TLS 1.0 ve TLS 1.1'in Kullanımdan Kaldırılması (IETF, 2021)
- OWASP Top 10 A02:2021 – Kriptografik Başarısızlıklar
- CWE-326 – Yetersiz Şifreleme Gücü (MITRE)
- OWASP TLS Hile Sayfası
- Mozilla SSL Yapılandırma Oluşturucu
- NIST SP 800-52 Rev. 2 – TLS Uygulamaları için Kılavuzlar
- PCI SSC – SSL ve Erken TLS'den Geçiş (Bilgi Eki)