DNS-Based DDoS Attacks

fbddos Geçtiğimiz haftalarda Twitter’a yapılan siber saldırının DNS-Based DDoS atak olduğu açıklandı.Kullanıcılar siteye gitmek istediklerinde ya hiç yanıt alamıyorlardı ya da çok geç cevap dönüyordu.

Bir benzer saldırı da aynı şekilde geçen sene TR alan adlarını barındıran sunucular üzerine de yapılmıştı ve ülke çapında .tr uzantılı alan adlarına erişim bir süreliğine engellenmişti.

Son zamanlarda yaşanan bu olaylardan sonra DNS protokolü ile yapılan Servis Engelleme (DNS-based DDoS) saldırıları merak konusu olmaya başladı.

nic-tr-3

DNS-based DDoS Saldırısı Nedir ve Bunlara Karşı Nasıl Önlemler Alınabilir:

DNS altyapısını kullanarak bir DDoS saldırısı oluşturmak aslında çok basit: Saldırıyı gerçekleştirecek internet üzerindeki DNS Sunucularına (name server) istek gönderir ve bu sunucular da cevap verir. Buradaki öncelikli nokta kullanıcıların DNS sorgularını kendi IP adreslerinden yapmamaları, bunun yerine DDoS Saldırı yapmak istedikler sunucunun IP adresini taklit (spoof) etmeleridir.

anonymous-hackersDNS isteklerini spoof etmek aslında çok kolaydır. Çünkü DNS soruguları UDP (connectionless User Datagram Protocol) üzerinden taşınırlar. Bu nedenle herhangi bir IP adresini spoof ederek DNS sorgusu göndermek çok basit ve kabaca kartpostal üzerine  başka birinin dönüş adresini yazıp göndermek ile aynı etkiye sahiptir.

Sadece spoof DNS query göndermek, hedefi kapasitesiz bırakmak için yeterli değildir.Eğer bu isteklere dönen response’lar query size’larından çok büyük değilse, saldırıyı yapan kişi sadece yoğun bir şekilde spoof edilmiş DNS istekleri göndermiş olur. Hedef üzerinde yapılacak tahribatın şiddetini arttırmak için her isteğe dönülen cevapların boyutlarının da çok büyük olması gerekmektedir.

1999 yılında EDNS0 ‘nun ortaya çıkışıyla,DNS protokolü değiştirildi ve UDP-tabanlı DNS protokolü çok fazla data taşıyabilir hale geldi.Bir DNS response şu an 4,096 byte içerebilmektedir.Buna karşılık çoğu query,100 byte’tan daha küçüktür.

Belki önceleri Internet namespace üzerinde size’I büyük olan bir DNS response bulmak çok zordu.Fakat artık şirketler DNSSEC kullanmaktalar ve bu giderek yaygınlaşmakta. DNSSEC, dns kayıtları içerisinde cryptographic keys ve digital signature’lar bulundurdukları için  DNS cevap boyutlarını (response size) çok büyük hale getirmektedir.

Örnek vermek gerekirse, spoof ettiğiniz bir Web Server IP adresinden isc.org nameserver’ına yapacağınız bir 44 byte’lık DNS query’ye karşılık Web Server’ınız 4,077 byte’lık bir response alacaktır.

Şimdi bunun ne kadar kötü bir hale gelebileceği ile ilgili hızlıca bir hesap yapalım.Her bir attacker’ın kabaca 1Mbps internet bağlantısı oldugunu varsayalım.Bu kişi saniyede 2,840 tane 44-byte’lık DNS sorgusu gönderebilir.Bu da hedef Web Server’a  93Mbps data’nın ulaşması demektir.Yani her 11 saldırgan 1Gbps değerinde bir trafiğe karşılık geliyor.

6a0120a55f18a4970c0153907539c1970b-2

Peki antisosyal diyebileceğimiz attacker’lar,her bir DDoS saldırısı için 10 tana daha attacker’ı nasıl bulacaklar?Bulmalarına gerek yok zaten.Bunun için binlerce zombi bilgisayardan oluşan botnetleri kullanmaktalar.

Peki yukarıdaki örnekte kullandığımız isc.org nameserver’ı,aynı ip’den sürekli aynı data için defalarca sorgulandığını fark edemez mi?Bunun bir attack oldugunu anlayıp engelleyemez mi?

Tabiki angılayabilir ve engelleyebilir.Fakat isc.org nameserver’ı, saldırganların trafiğini güçlendirmek için kullanabileceği tek server değil.Elbette kullanabilecekleri başka “authorative name server” lar,daha kötüsü “open recursive name server” lar bulunmakta.

Open Recursive name Server’lar,herhangi bir ip addresinden gelen recursive query’leri işleyen name server’lardır. isc.org için dns isteğini bu server’lar gönderirsiniz ve onlar size dns response’u dönerler.(Örnek,google recursive dns server 8.8.8.8)

Bir Recursive Name Server’ın görevi,sizin yerinize internet name space’ini taramaktır.Tıpkı cep telefonlarınızda ve laptop’larınızda oldugu gibi.

Bu nedenle Recursive Server’ları yöneten adminler,eğer OpenDNS ve Google Public DNS gibi bir servis değilse,bu server’lara sadece belli ip bloklarının sorgu yapabileceği şekilde konfigurasyon yapmalıdırlar.Sadece local kullanıcılar vs gibi…(Microsoft DNS Server’lar dns query’ler üzerinde ip-based access control desteklemiyor.Burada Infoblox ürününün özelliklerinden yararlanılabilir.)

Open Recursive Name Server’lar gerçekten büyük problem mi? “Open Resolver Project” raporuna göre,şu an yeryüzünde 33 million open recursive name server bulunmakta.Yani hacker’lar bu server’lara isc.org dns query flood başlatarak,sizin Web Server’ınızı,router’ınızı,DNS server’ınızı kapasitesiz bırakabilirler.

DNS-based DDoS atağının nasıl çalışma mantığını işte bu şekildedir.Peki bunları nasıl engelleyebiliriz?

Fırtınadan Nasıl kurtuluruz?

Öncelikle DNS altyapımız düzenlemeliyiz,böylelikle ne zaman saldırı altında oldugumuzu anlayabiliriz.Birçok firma kendi query load miktarlarının ne oldugunu bilmiyor,bu nedenle de atak altında olduklarını ilk başta anlayamayacaklardır.

Infoblox’ın içerisinde gelen istatistik’lerle,query  değerleriniz belirlemek çok kolay.Bu istatistikler sayesinde query rate,socket error ve atak belirtisi sayabileceğimiz diğer parametler çok kolay görünür hale gelmekte.Eğer bir saldırının nasıl göründüğünü henüz bilmiyorsanız,endişelenmeyin…Sadece DNS’in monitor edilmesi size standart değerlerinizi belirlemenizi sağlayacak ve anormal birşeyler oldugunda bunu hemen fark edeceksiniz.

Infoblox-LogoBurada kendimizi sadece External Authorative Name Server’larımız ile sınırlandırmamalıyız tabiki. Internet  çıkışında olan firewall,router gibi yapıları da sürekli monitor etmeliyiz.

Çok büyük ölçekli müşterilerimizde,mümkünse Authorative Name Server’larımız geographic olarak dağıtmalıyız.Bu, attack durumunda “single point of failure” I engelleyeceği gibi,aynı zamanda hızlı dns response gibi artılar da katacaktır tabi.

Anycast mimari,DDoS attack’ları engellemek için çok uygundur.Anycast yapısı ile birden çok server aynı ip addresini kullanilirler ve anycast teknolojisi DNS ile çok uyumlu çalışmaktadır.Hatta şu anda dünya üzerindeki tüm DNS Root Server’ları Anycast teknolojisini kullanmaktadir.

Anycast mimarisine örnek vermek gerekirse: altı tane name server’ınızın iki tane Anycast grubu içerisinde olduğunu düşünelim.Her grubun bir tane United States, bir tane Europe ve bir tane de Asia bölgesinde member’I oldugunu varsayalım.Bir grup’ta bulunan üç member bir tane Anycast ip addresini paylaşmaktadır,diğer üç member da diğer Anycast ip addresini paylaşmaktadır.Dolayısıyla bu Anycast ip’sine yapılan istek herzaman isteğin gönderildiği bölgeye en yakın olan member’a yönlendirilcektir.Dolayısıyla atak yapan kişinin yarattiğı trafik her zaman aynı member’a ulaşacaktır.Yani eğer United States,Europe ve Asia bölgelerinden aynı anda yeterli tarfik yapamadıkları sürece siz de bir servis kesintisi oluşturmayacaklardır.

Infoblox’ın NIOS işletim sistemi de Anycast teknolojisini desteklemektedir.

Bir diğer alternatif de hem geographic dağılımı hem de Anycast mimarisini aynı anda kullanan Cloud-based DNS Provider’lar olabilir.Dyn ve Neustar gibi…

Görüldüğü gibi DNS server’larımız, hem DDos ataklar için güçlendirici olarak kullanılabilmekte aynı zamanda da DDoS ataklarının hedefi olabilmektededir.Bu nedenle DNS altyapımızı iyi kurgulamalı,DNS Server’ımızı iyi monitor edebilmeli ve DNS query’ler için  access control uygulayabilmeliyiz.

2017-03-16T21:59:12+00:00 October 29th, 2016|DDOS, Infoblox|