Gelişmiş Gizlilik için DNS over TLS – DoT
DNS, internetin telefon rehberi gibidir. DNS çözücüler, insanlar tarafından okunabilen alan adlarını makine tarafından okunabilen IP adreslerine çevirir. Varsayılan olarak DNS sorguları ve yanıtları düz metin olarak (plain text) UDP aracılığıyla gönderilir. Düz metin olarak bu isteklerin yapılması demek internet servis sağlayıcıları (IIS) veya ilgili DNS trafiğini izleyebilen herkes tarafından okunabileceği anlamına gelir. Bir web sitesi HTTPS kullansa bile, o web sitesine gitmek için gereken DNS sorgusu açığa çıkar. Bu mahremiyet eksikliği, güvenlik ve bazı durumlarda insan hakları üzerinde büyük bir etkiye sahiptir. DNS sorguları özel değilse, hükümetlerin interneti sansürlemesi ve saldırganların kullanıcıların çevrimiçi davranışlarını takip etmesi daha kolay hale gelir. Bu nedenle bu yazımda Gelişmiş gizlilik için DNS over TLS – DoT konusuna değindim.
DNS over TLS nedir?
TLS veya DoT üzerinden DNS, DNS sorgularını güvenli ve gizli tutmak için şifreleme standardıdır. DoT, HTTPS web sitelerine doğru yapılan iletişimleri şifrelemek ve doğrulamak için kullandığı TLS ile aynı güvenlik protokolünü kullanır. (ayrıca TLS, “SSL” olarak da bilinir.) DoT, DNS sorguları için kullanılan user datagram protocol (UDP) üzerine TLS şifrelemesini ekler. Ek olarak, DNS isteklerinin ve yanıtlarının aslının değiştirilmemesini veya sahteciliğe uğramamasını sağlar.
TLS üzerinden DNS, DNS sunucularıyla tüm bağlantıların TLS kullanılarak güvenli bir şekilde yapılmasını zorunlu kılan bir güvenlik protokolüdür. Bu, ISS’lerin hangi web sitesine eriştiğinizi görmesini etkili bir şekilde engeller.
Biraz baştan başlayacak olursak
TLS veya Taşıma Katmanı Güvenliği, SSL’nin halefidir. Hala TLS için konuşma dili olarak kullanılan bir terim olmasına rağmen, SSL aslında güvenli bir protokol değildi ve hızla TLS ile değiştirildi. SSL sertifikası dediğiniz şey aslında bir TLS sertifikasıdır. TLS dediğimizde SSL kavramından bahsettiğimizi unutmayın.
DNS over TLS kullanmak için kullanmış olduğunuz DNS sunucusunun bu özelliği desteklemesi gerekmektedir. Bilindiği üzere Cloudflare ve Google DNS bu özelliği desteklemektedir. Naçizane düşüncem ms değerlerinin düşük olan Cloudflare DNS’lerinin kullanılmasında fayda var.
DNS over TLS Sunucular:
Sağlayıcı | DNS over TLS Desteği olan DNS Sunucularının IP Adresi |
Cloudflare | 1.1.1.1, 1.0.0.1 |
8.8.8.8, 8.8.4.4 | |
Quad9 | 9.9.9.9, 149.112.112.112 |
Açık DNS Sorgusuna Örnek:
Aşağıda görüleceği üzere milliyet.com.tr sayfasına istek gönderdiğimde DNS sorgusunda nereye erişmek istediğim açık bir şekilde gözükmektedir.
Windows, macOS ve Linux tabanlı masaüstü işletim sistemlerinde stubby ve unbound gibi yazılımlar sayesinde kolayca kullanılabilmektedir.
Ben macOS işletim sistemi için AppStore’da ücretsiz olarak indirmeye açık DNSecure uygulamasını kullandım. Siz de işletim sisteminize göre unbound ya da stubby tarzı uygulamalarla DNS over TLS üzerinden erişim sağlayabilirsiniz.
TLS sonrası Wireshark ile trafiği dinlediğimde DNS sorgusuna rastlamadım:
Unbound ile DNS over TLS:
Aşağıdaki linkten ilgili uygulamayı cihazınızın türüne göre indirebilirsiniz.
https://www.nlnetlabs.nl/projects/unbound/download/
Stubby ile DNS over TLS:
https://github.com/getdnsapi/stubby
Kaynaklar: