Korumalı paketler kriptografik olarak süresi dolmaz, bu yüzden beş dakika önce geçerli olan bir paket şimdi de geçerlidir, çünkü şifreleme ve bütünlük koruması baytların ne zaman üretildiği hakkında hiçbir şey söylemez. Trafiği yakalayıp yeniden gönderebilen bir saldırganın şifreyi kırması gerekmez. Bu yüzden her ciddi tünel protokolü anahtarlarının yanında sıra durumu taşır.

Mekanizma küçüktür ve arıza biçimleri paket kaybıyla kolayca karıştırılır.

Geçerli şifreli metin taze şifreli metin değildir

Kimlik doğrulama tek bir soruya yanıt verir: bu baytlar anahtarı elinde tutan birinden değiştirilmeden mi geldi. Alıcının onları ilk kez görüp görmediğini yanıtlamaz. Yeniden oynatılan paket ilk testi kusursuz geçer, işte tam bu yüzden yalnızca bütünlük denetimi bir yeniden oynatmayı durduramaz ve protokolün kabulle ilgili ikinci bir kurala ihtiyacı vardır. Yalnızca kimlik doğrulayan bir alıcının kayıt tutan bir saldırgana karşı savunması yoktur.

O kuralı uygulamak da söylemek de ucuzdur: verilen korumalı paketi verilen anahtar altında bir kez kabul et. Bu alandaki her şey, uygulamanın o bir kezi nasıl izlediğinden türer.

Yeniden oynatma kaynaklı bir reddi şifre çözme hatası olarak okumak sizi tamamen yanlış alt sisteme gönderir.

Bir sıra numarası ve bir pencere

IPsec ESP bir sıra numarası taşır ve alıcı son kabul edilen değerlerin kayan bir penceresini tutar; ESP belirtimi varsayılan pencere boyutunu ve onu genişletme seçeneğini açıklar. WireGuard anahtar başına sayaç ve ona karşı açık bir denetimle başka bir yol izler. Hiçbir tasarım paketlerin sırayla geldiğini varsaymaz, çünkü gerçek ağlar onları yeniden sıralar. İkisi de yeniden sıralamaya katlanır, hiçbiri tekrara katlanmaz.

Bu hoşgörüyü mümkün kılan penceredir. Görülen en yüksek değerin biraz gerisindeki bir paket daha önce kabul edilmemişse hâlâ kabul edilebilir; çok gerideki ya da yeri önceden işaretlenmiş olan atılır. Pencereyi büyütün, ilişki başına daha fazla durum pahasına daha fazla yeniden sıralamaya katlanırsınız.

Tanılama sayaçları hangi durumda olduğunuzu gösterir. Yeniden oynatma kaynaklı retler genel bir hata yerine belirli bir sayacı artırır ve o sayacı okumak ilk yararlı gözlemdir.

nstat -az | grep -i XfrmIn
ip -s xfrm state | head -n 30
wg show wg0 transfer

Durum anahtara aittir, ana makineye değil

Sayaç durumu bir güvenlik ilişkisine ya da anahtar dönemine bağlıdır, bu yüzden anahtar değişimi taze bir bağlam ve kendi sıra uzayını yaratır. Anahtarı değiştirmeden bir sayacı temizlemek ya da elle sıfırlamadan sonra bir ilişkiyi yeniden kullanmak, alıcının penceresinin dayandığı varsayımı bozar. Bu yüzden operatörün gördüğü bir sıfırlama düğmesi yerine protokol güdümlü anahtar değişimi vardır.

Elle bir müdahaleden sonra tünel kötü davranırsa, müdahalenin sıra durumuna dokunup dokunmadığını sorun. Aynı görünen bir yapılandırma farklı davranabilir, çünkü devraldığı durum beklediği durum değildir.

Herhangi bir şeyi devre dışı bırakmadan önce nedeni tanılayın

Kayıp, yeniden sıralama, kopyalanmış trafik ve bir uygulama kusuru hepsi yeniden iletim olarak görünür ve yalnızca biri yeniden oynatma sorunudur. Gürültüyü susturmak için denetimi kapatmak, güvendiğiniz özelliği ortadan kaldırır ve asıl nedeni bulmayı zorlaştırır, çünkü artık yeniden iletimlerin hiçbir açıklaması yoktur.

Sınırlı kanıt toplayın: ilişki tanımlayıcıları, sıra numaraları ve sayaçlar, yükler hariç. Bu, bir kopyayı yeniden sıralanmış varıştan ayırmaya yeter ve tanılama dosyanızı kullanıcının trafiğinin bir kopyasına dönüştürmez.

Denetimin vaat etmediği şey

Yeniden oynatma koruması tek bir protokol içindeki paket işlemenin bir özelliğidir. Operatörün hiç günlük tutmadığı, bir sitenin hesabı tanıyamadığı veya bir oturumun anonim olduğu anlamına gelmez. Bunlar ayrı sistemler hakkında ayrı sorular, ve güçlü bir yeniden oynatma karşıtı tasarım bunların hiçbirine yanıt vermez.

Desteklenen ayarlarla bakımı yapılan yazılım, kullanıcının sahip olduğu pratik kontroldür. Paketi protokol ele alır; geri kalan her şey operasyonel bir karar olarak kalır.

İlgili makaleler