DNS Önbellek Zehirleme

Mengüalp Yavaşoğlu
4 min readAug 30, 2020

--

YAYGINLIK: Genellikle | FAYDALANILABİLİRLİK: Orta | ETKİ: Zararlı

DNS Spoofing, bir DNS sunucusunun kayıtlarında yapılan değişikliklerin, trafiğin kötü amaçla yeniden yönlendirilmesinin sonucudur. DNS yanıltma sunucu üzerinden direk bir saldırı senaryosu sergilenerek(burada konuşacağımız) ya da dns trafiğini hedefleyen bir man-in-the-middle saldırısı aracılığıyla gerçekleştirilebilir.

DNS Önbelleği sahtekarlığı, DNS iletişiminin yapı olma şeklinden açıkça yararlanacak şekilde çalışır. Bir DNS sunucusu bir etki alanında bir arama yapmaya çalıştığında, isteği root hesabı tarafından yetkilendirilmiş DNS’ye iletir ve etki alanı üzerinden yetkili DNS sunucusuna ulaşana kadar DNS sunucuları zincirinde yinelemeli olarak ilerler. Yerel DNS sunucusu hangi sunucunun hangi etki alanından sorumlu olduğunu ve her yetkili sunucuya giden tam yolu bilmediğinden, yanıt sorguyla eşleştiği ve doğru biçimlendirildiği sürece sorgularına herhangi bir yerden yanıtları kabul eder. Saldırgan, yerel DNS sunucusuna yanıt verirken gerçek yetkili DNS sunucusunu yenerek bu tasarımdan yararlanabilir ve bunu yaparsa, yerel DNS sunucusu gerçek yetkili yanıt yerine saldırganın DNS kaydını kullanır. DNS’nin doğası gereği, yerel DNS sunucusunun hangi yanıtın gerçek ve hangisinin sahte olduğunu belirleme yolu yoktur.

Bu saldırı, DNS sunucularının aramaları dahili olarak önbelleğe alması ve böylece etki alanı her istendiğinde yetkili sunucuları sorgulamak için zaman harcamak zorunda kalmaması nedeniyle daha da kötüleşir. Bu başka bir sorun teşkil eder, çünkü bir saldırgan bir yanıta ulaşmak için Yetkili DNS sunucusunu yenebilirse, saldırganın kaydı yerel DNS sunucusu tarafından önbelleğe alınacak, yani yerel DNS sunucusunu kullanan herhangi bir kullanıcıya saldırgan kaydı verilecek ve bu yerel DNS sunucusunu kullanan tüm potansiyel kullanıcılar saldırganın web sitesine yönlendirilerek yapılacaktır.

DNS Önbellek Zehirleme Gösterimi

DNS Önbellek Zehirleme Örnekleri

  1. Doğum Günü Saldırısı ile Yapılan Körleme Cevap Sahtekarlığı

Bir DNS protokol değişimi, tekrarlanan iteratif sorgulara verilen yanıtların kimliğini doğrulamaz. Sorguyu doğrulamak için tek kontrol, 16 bitlik işlem kimliği ve yanıt paketinin kaynak IP adresi ve hedef bağlantı noktasıdır. 2008'den önce, tüm DNS çözümleyicileri sabit 53 numaralı portunu kullanıyordu. Bu nedenle, işlem kimliği dışında, bir DNS yanıtını taklit etmek için gereken tüm bilgiler tahmin edilebilirdir. Bu zayıflığı istismar eden DNS saldırıları “doğum günü paradoksu” olarak bilinir ve ortalama olarak işlem kimliğini tahmin etmek için 2⁸ yani 256 deneme yapılır. Saldırının başarılı olması için sahte DNS yanıtının, meşru yetkili yanıt gelmeden önce hedef çözümleyiciye ulaşması gerekir. İlk önce meşru yanıt gelirse, çözümleyici tarafından önbelleğe alınır ve kullanım süresi (TTL) sona erene kadar çözümleyici yetkili sunucudan aynı alan adını çözümlemesini istemeyecek ve TTL’nin süresi dolana kadar saldırganın bu alan için zehirleme eşleştirmesini engellemeyecektir.

2. Kaminsky Exploit

Not: 1 ve 2

Doğum Günü Saldırısının genişletilmiş bir hali olarak basit körleme tekniğinin aynı kaldığı şekilde Black Hat 2008'de ortaya çıktı. DNS cevapları altında yatan saldırı istismarları ise cevap olabilen(isteğin direkt IP adresi) veya bir referans(belirli bir alan üzerinde yetkilendirilmiş sunucu) olabilecek DNS yanıtları örüntüsünü kullanır. Doğum Günü Saldırısı, belirli bir alan kaydı için yanlış bir giriş enjekte eden bir yanıt uydurur. Kaminsky istismarı, önceki girişlerde TTL’yi atlayarak tüm bir alan adı için yanlış bir giriş yapmak için bir yönlendirme kullanır. Temel fikir, saldırganın güvenliğini aşmak istediği etki alanını seçmesi ve ardından çözüm tarafından önceden önbelleğe alınmamış bir alt etki alanı için hedef çözümleyiciyi sorgulamasıdır. Varolmayan alt alanların hedeflenmesi, kaydın DNS çözümleyicisi tarafından önbelleğe alınmaması açısından iyi bir bahistir. Alt etki alanı önbellekte olmadığından, hedef çözümleyici o etki alanı için yetkili sunucuya bir sorgu gönderir. Bu noktada saldırgan, çözümleyiciyi her biri farklı bir sahte işlem kimlik numarasına sahip çok sayıda sahte yanıtla doldurur. Saldırgan sahte yanıt enjeksiyonunda başarılı olursa, çözümleyici yetkili bir sunucu için yanlış bir eşlemeyi önbelleğe alır. Güvenliği ihlal edilen etki alanının hedef çözümleyicisine yapılacak gelecekteki DNS sorguları, tüm isteklerin saldırgan denetleyicisi yetkili çözümleyicisine iletilmesiyle sonuçlanarak, saldırganın her yeni DNS kaydı için sahte girişler eklemeye gerek kalmadan kötü amaçlı yanıtlar sağlamasına olanak tanır.

3. Gizli Dinleme

DNS güvenliğini artırmaya yönelik birçok yeni öneri, tümü kimlik doğrulama için kullanılan bileşenlerin asimetrik erişilebilirliğine bağlı olan kaynak bağlantı noktası rasgele seçimini, 0x20 XOR kodlamasını, WSEC-DNS’yi içerir. Başka bir deyişle, kimlik doğrulama ve kriptografi yoluyla gizlilik yerine belirsizlik yoluyla güvenlik sağlarlar. Tek hedefleri, yukarıda tartışıldığı gibi KÖRLEME olarak yapılan saldırıları önlemektir. Bu güvenlik yöntemlerini kullanmak, DNS’yi, belirsizliği ortadan kaldırmak ve yukarıda görüldüğü gibi aynı saldırıları gerçekleştirmek için, bu kez kör tahmin olmaksızın, güvenliği ihlal edilmiş sunucuların ve ağ dinleyicilerin önemsiz saldırılarına karşı hala savunmasız bırakır. Layer 2 kontrollü ortamlarda bile, ARP zehirlenmesi ve benzer teknikler, tüm paketleri kötü niyetli bir bilgisayara zorlamak için kullanılabilir ve belirsizliği ortadan kaldırabilir.

DNS Önbellek Zehirleme Risk Azaltımı

DNSSEC
DNS revolver’larının Önbellek Zehirlenmesini önlemenin en iyi yolu, güvenli bir şifreleme ve kimlik doğrulama yöntemi uygulamaktır. Bir protokol olarak DNS modası geçmiş ve tüm internetin omurgası olarak şaşırtıcı bir şekilde, aldığı girişler ve yanıtlar için herhangi bir doğrulama biçimi olmayan şifrelenmemiş bir protokoldür.

Çözüm, elbette, DNS Secure veya DNSSEC olarak bilinen bir doğrulama ve kimlik doğrulama yöntemi sağlamaktır. Protokol, DNS kayıtlarıyla birlikte saklanan benzersiz bir kriptografik imza oluşturur. İmza daha sonra DNS çözümleyicisi tarafından kaydın tahrif edilmemesini sağlamak için bir DNS yanıtını doğrulamak için kullanılır. Ek olarak, Üst düzey etki alanından etki alanı yetkili bölgesine kadar bir güven zinciri sağlar ve tüm DNS çözümleme sürecinin güvenliğini sağlar.

Bu görünür avantajlara rağmen, DNSSEC’in benimsenmesi yavaş olmuştur ve daha az popüler olan Üst düzey etki alanlarının çoğu, DNSSEC’in sağladığı güvenliği hala kullanmamaktadır. Temel sorun, DNSSEC’in kurulumunun karmaşık olması ve yeni protokolü işlemek için yükseltilmiş cihazlara ihtiyaç duymasıdır; ayrıca tarihsel olarak çoğu DNS sahtekarlığı saldırısının nadirliği ve yetersizliği nedeniyle, DNSSEC uygulaması bir öncelik olarak görülmez ve genellikle yalnızca bir kez gerçekleştirilebilir ve denenen cihazlar kullanım ömürlerinin sonuna ulaşır.

REFERANSLAR

--

--