Daily Archives: March 29, 2014

DNS’in Kökü

Gece itibariyle DNS’lerde bir sıkıntı olduğu söyleniyordu. Bana da bununla ilgili epey bir mesaj geldi. “Şu İSS’yi kullanıyorum, şu DNS sunucusunu kullanıyorum fakat Internete bağlanamıyorum, zaman aşımı alıyorum” diye gelen mesajlar sonrası kendim kontrol ettiğimde bir sıkıntı görememiştim. Fakat, Twitter‘da konuyla ilgili tweet sayıları giderek artmaya başladı ve ardından da Chip Türkiye‘nin “Türkiye’de DNS’lerin de kökü kazınıyor!” haberi geldi. Sanırım, söylentilerdeki doğruluk payı giderek artmaya başladı diyebilirim.

Yazıyı yayımladıktan bir süre sonra tekrar taslak formuna aldım. DNS’lerin kökünün kazınmasından ziyade daha farklı bir şeylerin döndüğünü düşünüyordum. Sabah ise OpenDNS ve Google DNS sunucuları üzerinden yapılan sorguların her ne hikmetse Türk Telekom sunucularına yönlendiğini gördüm. Bunun birçok sebebi olabilir. DNS spoofing, DNS hijacking, arada bulunan bir transparan DNS proxysisi ile sorguların açık DNS sunucularına ulaşmadan İSS’nin DNS sunucularına yönlendirilmesi gibi. Yaptığım basit bir analizde aldığım sonuç, yapılanı doğrular nitelikteydi:

kame ~ $ nslookup twitter.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       twitter.com
Address:   195.175.254.2

kame ~ $ nslookup twitter.com 208.67.222.222
Server:    208.67.222.222
Address:   208.67.222.222#53

Non-authoritative answer:
Name       twitter.com
Address:   195.175.254.2

Bir de engellenmemiş bir adresin çıktısına bakalım:

kame ~ $ nslookup duckduckgo.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       duckduckgo.com
Address:   176.34.131.233
Name       duckduckgo.com
Address:   46.51.197.88
Name       duckduckgo.com
Address:   46.51.197.89

Engellenmemiş adres için herhangi bir sıkıntı yok gibi durmakta. Şimdi bunu daha anlaşılır bir dille anlatalım. DNS (domain name system); türkçesi alan adı sistemi, Internet ağını oluşturan birimlerin IP adreslerini akılda daha kolay tutulması için dönüştürülen adresleri (domain, www.duckduckgo.com gibi) ve iletişimi organize eden bir sistemdir. DNS sunucuları ise Internet adreslerinin IP karşlığının kayıtlı tutulduğu sunuculardır. Bir örnekle anlatmak gerekirse, www.duckduckgo.com adresini tarayıcınızdan girdiniz, bu Intenet adresindeki makine ile iletişim kurulabilmesi için DNS sunucusuna sorgunuz gitti, DNS sunucusu ise eğer bu isim karşılığındaki IP adresine sahipse, 50.18.192.250 dedi ve bu IP’ye sahip makineye yönlendirildiniz. Fakat, yukarındaki çıktıda Google DNS kullanıyorsanız ve tarayıcınızdan www.twitter.com yazdığınız anda sorgunuz gitmesi gereken Google DNS sunucuları yerine 195.175.254.2 adresine, yani Türk Telekom’a yönlendirildi.

Bu işin biraz da tekniğine bakalım. Bir İSS’siniz ve kötü niyetli bir DNS sunucusu yapmak istiyorsunuz. Bu DNS sunucunuzun IP’sini 195.175.254.2 olduğunu varsayalım. Diğer yanda, ülkenizde hizmet veren güvenilir Google gibi DNS sunucuları var. Siz bu sunucuları kendi kullanım amacınızla işleyişlerini manipüle edip yani gasp edip kendi kötü niyetli sunucunuza yönlendirdiniz (route). Ardından Google DNS kullanan biri Twitter’a girmek istedi. Sorgusunu gönderdi, hop bu sefer Google DNS yanıt verecekken kurduğunuz kötü niyetli DNS sunucusu yanıt verdi. Yani bunu yapabilmek için de adresi twitter.com/195.175.254.2 olarak atadınız. twitter.com diyen 199.59.149.230‘a erişmek yerine tanımlanmış olan 195.175.254.2 IP adresli makineye erişecektir. Bu makine ne yapabilir? Sizi burada bekletebilir, … kararla site erişime engellendi yazısı ile karşılayabilir, DNS sorgularını loglayabilir, sizlere gereksiz reklam sonuçları gösterebilir (bunu yapan birçok İSS mevcut) vs.

Şu an bizim yaşadığım durum da; siz Google veya OpenDNS kullandığınız takdirde, sorgularınız Türk Telekom’un sunucusuna gidiyor ve burada bekletiliyorsunuz. Normalde bu DNS’ler ile erişmeniz gereken adrese de sahte DNS sunucusunda bekletildiğiniz için erişemiyorsunuz. Erişemediğiniz için de sadece yaptığınız sorgu biliniyor. Bu şekilde herhangi bir hesabın, kimin kullandığının bilinmesi mümkün olmaz. Fakat, bir spoofing yapılırsa o zaman işin rengi değişir.  Spoofing’de de siz herhangi bir siteye bağlandığınızı zannedersiniz fakat IP/adres manipüle edildiği için hiç alakası olmayan, saldırganın bilgilerinizi çalacağı sahte bir yere ulaşırsınız. Böylece, örneğin Twitter’a giriş yaptığınızı sanarken sahte bir Twitter sitesi üzerinden tüm bilgileriniz alınabilir.

Şimdi bu yönlendirme ile ilgili bir diğer bir tespite gelelim. İlk başta ben Twitter ve Youtube‘a girenleri mi tespit etmek istiyorlar, bu yüzden sadece bu ikisi mi yönlendirildi diye düşünmüştüm. Fakat sonradan rastgele, daha önce engellenmiş iki porno sitesi için tekrar nslookup yaptım. Sonuç:

kame ~ $ nslookup pornhub.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       pornhub.com
Address:   195.175.254.2

kame ~ $ nslookup xnxx.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       xnxx.com
Address:   195.175.254.2

Fakat, buna henüz gasp edilmemiş bir DNS sunucusu ile bakarsak:

kame ~ $ nslookup xnxx.com 77.88.8.8
Server:    77.88.8.8
Address:   77.88.8.8#53

Non-authoritative answer:
Name       xnxx.com
Address:   141.0.174.37
Name       xnxx.com
Address:   141.0.174.38
Name       xnxx.com
Address:   141.0.174.35
Name       xnxx.com
Address:   141.0.174.39
Name       xnxx.com
Address:   141.0.174.34

Anlaşılan engelli tüm adresler Google DNS ve OpenDNS için aynı yere yönlendirilmiş durumda. İSS tarafından Yandex DNS‘te herhangi bir yönlendirme (routing) olmadığı için sonuç sorunsuz gözüküyor. Şimdilik, Google DNS ve OpenDNS kullanmamak, yaşanabilecek manipülasyonlardan ve spoofing gibi saldırılardan etkilenmeyi azaltacaktır. Kaldı ki Türk Telekom tarafından yapılan bu şeyin yasalara aykırı ve suç olduğu da söylenmektedir. Daha önce de DNS gaspı (hijacking) ile ilgili belirttiğim üzere İSS’ler bunu daha öncede yapabilmekte, olmayan sayfa sorgularında sizlere yanıt vermekte, bunu sahte DNS sunucuları ile gerçekleştirmekte, sorguları reklamların olduğu sitelere yönlendirmekteydiler.

Sonuç olarak, ortada ciddi bir sıkıntının olduğunu söylemek gerekli ve bu durum yakından takip edilmeli. Açıkçası gasp edilen 2 DNS sunucusunun engellenmemiş adreslerin sorgularına verecekleri yanıtlar da “kötü niyetli” birileri tarafından manipüle edilmeye açıktır. Şu anda dava hazırlıkları da yapılmakta. Yazıyı kafam çok karışmış bir şekilde yazdım. Hatam varsa şimdiden kusura bakmayın. Bilgilendirirseniz memnun olurum.

Bu konuyla ilgili olarak kısaca birkaç link vereyim (siz de konuyla ilgili yazı linkleri verirseniz buraya eklerim):

[1] http://www.turk-internet.com/portal/yazigoster.php?yaziid=46356
[2] https://eksisozluk.com/entry/41565793

Ekleme (03.04.2013): Twitter yasağı Anayasa Mahkemesi tarafından kaldırıldı ve sonunda TİB denilen kurum-cuk kademeli olarak engeli kaldırdıklarını duyurdu. Peki DNS yönlendirmesi bitti mi? Hemen VPN, Tor vs kullanmayı bırakıp Twitter’a girmek mantıklı mı? Yeni analizimize bakalım:

kame ~ $ nslookup twitter.com 8.8.8.8
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name:   twitter.com
Address: 199.16.156.70
Name:   twitter.com
Address: 199.16.156.38
Name:   twitter.com
Address: 199.16.156.198

Peki engeli henüz kaldırılmamış Youtube için bakalım:

kame ~ $ nslookup youtube.com 8.8.8.8
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name       youtube.com
Address:   195.175.254.2

O da ne? DNS yönlendirmesi devam ediyor! Yani; VPN, Tor vs. kullanmaya GoogleDNS, OpenDNS gibi yönlendirilmiş DNS sunucuları kullanmamaya kaldığınız yerden devam ediyorsunuz.

Tagged , , , , , , , , , , , , , , ,