0Pricing
Cloud & IT Cert Prep · Ders

TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma

TLS 1.3 el sıkışmasını adım adım izleyin, varsayılan olarak ileri gizliliği nasıl sağladığını öğrenin ve 0-RTT oturum yeniden başlatmanın güvenlik ödünleşimlerini değerlendirin.

TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma, CoddyKit'te ücretsiz bir Cloud & IT Cert Prep dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Cloud & IT Cert Prep öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cloud & IT Cert Prep kursu toplamda 4 dersten oluşur.

TLS 1.3 Neden Gerekliydi

TLS 1.3, 2018'de (RFC 8446) yayımlandı ve on yıl boyunca gerçek dünyadaki saldırılar sonucunda TLS 1.2'de biriken zayıflıkları gidermek amacıyla tasarlandı. Önceki sürümler zayıf şifre takımlarının anlaşılmasına izin veriyor, dışa aktarma düzeyinde kriptografiyi destekliyor ve verilerin akabilmesi için birden fazla gidiş-geliş gerektiriyordu. TLS 1.3, kullanımdan kaldırılmış tüm algoritmaları kaldırır ve olağan durumda el sıkışmayı tek bir gidiş-gelişe indirerek hem güvenliği hem de performansı büyük ölçüde iyileştirir.

El Sıkışmaya Genel Bakış: Tek Gidiş-Geliş

TLS 1.3'te istemci ve sunucu el sıkışmayı 1-RTT (tek gidiş-geliş) içinde tamamlar. İstemci, desteklenen şifre takımlarını ve bir anahtar paylaşımını (Diffie-Hellman kullanarak) içeren bir ClientHello gönderir. Sunucu, bir ServerHello, kendi anahtar paylaşımını, bir sertifikayı ve şifrelenmiş ilk uygulama verilerini tek seferde göndererek yanıt verir. Ardından istemci sertifikayı doğrular ve uygulama verileri değiş tokuş edilmeden önce bir Finished mesajı gönderir.

# Trace TLS 1.3 handshake with openssl
openssl s_client -connect example.com:443 -tls1_3 -msg 2>&1 | grep -E 'ClientHello|ServerHello|Finished'

Anahtar Değişimi: Yalnızca Geçici Diffie-Hellman

TLS 1.3, geçici anahtar değişimini zorunlu kılar; RSA anahtar değişimini tamamen kaldırmıştır. Tüm anahtar değişimleri ECDHE (Eliptik Eğri Diffie-Hellman Geçici) veya DHE (Diffie-Hellman Geçici) kullanmalıdır. 'Geçici' sözcüğü, her oturum için yeni bir anahtar çiftinin oluşturulduğu anlamına gelir. Bu, mükemmel ileri gizliliğin temelidir: sunucunun uzun süreli özel anahtarının ele geçirilmesi geçmiş oturumların şifresinin çözülmesini sağlayamaz; çünkü her oturum benzersiz bir geçici anahtar kullanmıştır.

Mükemmel İleri Gizlilik Açıklaması

Mükemmel İleri Gizlilik (PFS), bir saldırgan bugün tüm şifrelenmiş trafiği kaydetse ve gelecekte sunucunun özel anahtarını elde etse bile eski oturumların şifresini çözememesini sağlar. RSA anahtar değişiminin kullanıldığı TLS 1.2'de sunucunun özel anahtarı, geçmişteki herhangi bir oturumdaki ana anahtar öncesi sırrın şifresini çözebilirdi; bu felaket niteliğinde bir başarısızlıktı. TLS 1.3'ün geçici DH anahtarları sayesinde her oturum kendi anahtarlarını türetir ve bu geçici anahtarlar kullanımdan sonra atılır.

Şifre Takımının Basitleştirilmesi

TLS 1.2, çoğu zayıf veya bozulmuş olan 300'den fazla şifre takımını destekliyordu. TLS 1.3 bunu, tamamı AEAD (İlişkili Verilerle Kimlik Doğrulamalı Şifreleme) kullanan yalnızca beş şifre takımına indirir: TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384, TLS_CHACHA20_POLY1305_SHA256, TLS_AES_128_CCM_SHA256 ve TLS_AES_128_CCM_8_SHA256. Böylece zayıf şifre anlaşmasından yararlanan BEAST, POODLE ve FREAK gibi tüm saldırı kategorileri ortadan kaldırılır.

# Check supported TLS 1.3 cipher suites on a server
nmap --script ssl-enum-ciphers -p 443 example.com

0-RTT Yeniden Kullanımı: Hız ve Güvenlik Dengesi

0-RTT (Sıfır Gidiş-Geliş Süresi) yeniden kullanımı, istemcinin el sıkışma tamamlanmadan, daha ilk mesajda uygulama verilerini göndermesine olanak tanıyan isteğe bağlı bir TLS 1.3 özelliğidir. Bu özellik, önceki bir oturumdan alınan bir Önceden Paylaşılan Anahtar (PSK) kullanılarak çalışır. 0-RTT gecikmeyi büyük ölçüde azaltırken — yüksek trafikli API'ler için kritik bir avantajdır — önemli bir ödünleşim getirir: erken veriler teplay saldırılarına karşı korunmaz.

0-RTT'de Tekrar Gönderme Saldırısı Riski

Tekrar gönderme saldırısında, 0-RTT verilerine karşı saldırı düzenleyen ve erken veri mesajını ele geçiren bir saldırgan, aynı eylemi potansiyel olarak iki kez tetikleyerek sunucuya yeniden gönderebilir (örneğin bir ödeme veya durum değişikliği). TLS 1.3 belirtimi, 0-RTT erken verilerinin yalnızca eşgüçlü işlemler taşıması gerektiği konusunda açıkça uyarır; bu işlemler kaç kez yürütüldüklerine bakılmaksızın aynı sonucu üretir, örneğin bir GET isteği. Eşgüçlü olmayan işlemler (POST, DELETE) hiçbir zaman 0-RTT kullanmamalıdır.

Önceden Paylaşılan Anahtarlar ve Oturum Yeniden Kullanımı

Başarılı bir TLS 1.3 tam el sıkışmasının ardından sunucu, istemcinin sakladığı bir PSK (Önceden Paylaşılan Anahtar) içeren bir NewSessionTicket mesajı gönderir. Yeniden bağlanırken istemci, bu PSK'yi ClientHello içinde pre_shared_key uzantısını kullanarak gönderir. Sunucu bunu tanır ve 0-RTT verilerini onaylar veya 1-RTT yeniden kullanımına geri döner. PSK biletleri süreyle sınırlıdır ve maruz kalma süresini kısıtlamak için sık sık yenilenmelidir.

Şifrelenmiş El Sıkışma: Üst Verileri Gizleme

TLS 1.3'teki önemli bir iyileştirme, sunucu sertifikası da dahil olmak üzere el sıkışmanın büyük bölümünün şifrelenmiş olmasıdır. TLS 1.2'de sunucu sertifikası düz metin olarak gönderildiğinden, ağ gözlemcisi istemcinin hangi etki alanına bağlandığını belirleyebiliyordu. TLS 1.3, sertifikayı ve el sıkışmanın sonraki mesajlarının çoğunu şifreleyerek pasif gözlemcilerin erişebildiği üst verileri azaltır. Şifrelenmiş Client Hello (ECH), SNI (Sunucu Adı Belirtimi) alanını bile gizleyen yeni bir uzantıdır.

Kaldırılan Özellikler: TLS 1.3'ün Ortadan Kaldırdıkları

TLS 1.3, artık yükümlülük haline gelen çok sayıda eski özelliği kaldırmıştır: RSA anahtar değişimi (ileri gizlilik yoktur), CBC kipindeki şifre takımları (dolgu oracle saldırılarına karşı savunmasızdır), RC4 (tamamen bozulmuş akış şifresidir), dışa aktarma düzeyinde kriptografi (FREAK ve Logjam'ın nedenidir), dijital imzalarda MD5 ve SHA-1, sıkıştırma (CRIME'ın nedenidir) ve yeniden el sıkışma (birden fazla saldırının nedenidir). TLS 1.3 bunları kaldırarak saldırı yüzeyini büyük ölçüde küçültmüştür.

Sunucuları TLS 1.3 için Yapılandırma

TLS 1.3'ü doğru şekilde dağıtmak, web sunucunuzu bu sürümü tercih edecek ve TLS 1.0 ile 1.1'i devre dışı bırakacak şekilde yapılandırmayı gerektirir. Modern web sunucularının çoğu (Nginx, Apache, IIS) TLS 1.3'ü yerel olarak destekler. Ayrıca istemcinin CA'ya bağlanmasına gerek kalmadan sertifika iptal durumunu sağlamak için OCSP Stapling özelliğinin etkinleştirildiğinden ve HSTS başlıklarının HTTP'ye düşürme saldırılarını önlediğinden emin olmalısınız. Yapılandırmanızın A+ derecesine ulaştığını doğrulamak için SSL Labs gibi araçları kullanın.

# Nginx TLS 1.3 configuration
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:ECDHE-RSA-AES256-GCM-SHA384';
ssl_prefer_server_ciphers off;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:10m;
add_header Strict-Transport-Security 'max-age=63072000' always;

Hızlı Kontrol

Bu dersteki CompTIA Security+ (SY0-701) kavramlarını anlayıp anlamadığınızı test edin.

Ders Özeti

Bu derste şunları öğrendiniz: TLS 1.3, mükemmel ileri gizlilik için yalnızca geçici DH anahtar değişimini kullanarak el sıkışmayı 1-RTT içinde tamamlar; 0-RTT yeniden kullanımı, PSK'ler kullanarak daha hızlı yeniden bağlantı sağlar ancak tekrar gönderme saldırılarına karşı savunmasızdır ve yalnızca eşgüçlü işlemler taşımalıdır; ayrıca TLS 1.3 tüm eski zayıf özellikleri kaldırır — RSA anahtar değişimi, CBC şifreleri, RC4, dışa aktarma kriptografisi ve sıkıştırma — ve saldırı yüzeyini büyük ölçüde azaltır. Sırada AES-GCM gibi kimlik doğrulamalı şifreleme algoritmalarını inceleyeceğiz.

Sıkça Sorulan Sorular

“TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma” dersi ücretsiz mi?

Evet — “TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Cloud & IT Cert Prep kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cloud & IT Cert Prep kursu toplamda 4 dersten oluşur.

“TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma” dersinde ne öğreneceğim?

TLS 1.3 el sıkışmasını adım adım izleyin, varsayılan olarak ileri gizliliği nasıl sağladığını öğrenin ve 0-RTT oturum yeniden başlatmanın güvenlik ödünleşimlerini değerlendirin. Cloud & IT Cert Prep ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Cloud & IT Cert Prep öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Cloud & IT Cert Prep, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Cloud & IT Cert Prep dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Cloud & IT Cert Prep dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. TLS 1.3 El Sıkışması ve 0-RTT Yeniden Başlatma
  2. Kimliği Doğrulanmış Şifreleme: AES-GCM ve ChaCha20-Poly1305
  3. Anahtar Türetme İşlevleri: PBKDF2, bcrypt ve Argon2
  4. Kuantum Sonrası Kriptografi: CRYSTALS-Kyber ve Dilithium
← Cloud & IT Cert Prep Sayfasına Dön