DNS Tünelleme Saldırıları Nasıl Tespit Edilir?
Yayın: 26 Ekim 2026 · Son güncelleme: 26 Ekim 2026DNS tünelleme, saldırganın DNS sorgu ve yanıtlarını veri taşıyan gizli bir kanal olarak kullanıp güvenlik duvarı ve proxy kontrollerini atlatmasıdır. Çalınan veri alt alan adlarına kodlanarak dışarı gönderilir, komutlar ise DNS yanıtlarının içinde geri gelir. 26 Ekim 2026 itibarıyla MITRE ATT&CK bu tekniği T1071.004 koduyla izliyor; en güvenilir tespit yolu sorgu uzunluğu, entropi, hacim ve kayıt türünün birlikte izlenmesidir.

İlgili Rehberler
SIEM Nedir?
Log toplama, korelasyon ve alarm yönetiminin temelleri.
Log Kayıtları ile SIEM
Hangi logların toplanacağı ve SIEM’e nasıl aktarılacağı.
SIEM Güvenlik Testi
Tespit kurallarının saldırı simülasyonuyla doğrulanması.
Bir bakışta DNS tünelleme
- Saldırgan kendi alan adının yetkili DNS sunucusunu kurar; veri, bu alan adının alt alan adlarına kodlanarak kurumun kendi DNS çözücüsü üzerinden dışarı çıkar.
- Uzunluk, entropi, sorgu hacmi ve kayıt türü birlikte değerlendirilmeli; tek göstergeye dayanan kural ya çok alarm üretir ya da tüneli kaçırır.
- Entropi eşiği yalnızca alt alan adı etiketine uygulanmalıdır; tam alan adında 3,5 eşiği meşru adreslerde de aşılabiliyor.
- 2023’te yayımlanan bir çalışmada Iodine tüneli, tüm giden trafik engellenmiş bir Google Cloud sunucusundan bile veri çıkarabildi.
- İstemciler dış DNS veya DoH sunucularına doğrudan çıkabiliyorsa sorgular kurum loglarına hiç düşmez.
İçindekiler
DNS Tünelleme Nedir ve Neden Tehlikelidir?
DNS tünelleme, DNS protokolünün alan adı çözümleme dışında bir amaçla, yani veri sızdırmak, komuta-kontrol (C2) iletişimi kurmak ya da ağ kısıtlamalarını aşmak için kullanılmasıdır. Neredeyse her ağda DNS trafiğine izin verildiği ve bu trafik HTTP kadar ayrıntılı incelenmediği için saldırganlar DNS’i sessiz bir çıkış kapısı olarak görür.
Sorgular dışarıya zararlı yazılımın yüklü olduğu bilgisayardan değil, kurumun kendi DNS çözücüsünden çıkar. Güvenlik duvarı logunda görünen şey, meşru bir sunucunun her gün yaptığı DNS trafiğidir. DNS’i tamamen kapatmak da ağı durduracağı için savunma, engellemeden çok bu trafiğin içindeki tuhaflıkları yakalamaya dayanır. Üstelik aynı kanal hem veri çıkarmak hem de komut almak için kullanılabilir.
DNS aynı zamanda başka saldırıların da yardımcı kanalıdır. Log4j teknik analizi yazımızda anlatıldığı gibi, Log4Shell taramalarında açığın varlığı çoğu zaman DNS geri aramalarıyla doğrulandı.
DNS Tünelleme Teknik Olarak Nasıl Çalışır?
Saldırgan, kontrol ettiği bir alan adı için kendi yetkili DNS sunucusunu (authoritative nameserver) kurar. Kurban ağdaki zararlı yazılım veriyi bu alan adının alt alan adlarına kodlayarak sorgu gönderir. Kurumun çözücüsü sorguyu normal trafik gibi saldırganın sunucusuna iletir, yanıt da komutları geri taşır.
- Altyapı: Saldırgan
t.ornek-saldirgan.comgibi bir alan adı kaydeder ve kendi sunucusunu bu alan adının yetkili sunucusu yapar. - Kodlama: Sızdırılacak veri Base32, Base64 veya hex ile kodlanır ve parçalara bölünür. Bir etiket en fazla 63, tam alan adı en fazla 253 karakter olabilir (RFC 1035).
- Sorgu: Zararlı yazılım her parça için
parca.t.ornek-saldirgan.combiçiminde bir sorgu gönderir. - Çözümleme: Kurumun çözücüsü yanıtı önbellekte bulamaz ve sorguyu yetkili sunucuya kadar iletir.
- Veri alımı: Saldırganın sunucusu alt alan adını çözer ve parçaları birleştirir.
- Geri kanal: Komutlar A, AAAA, TXT, CNAME veya NULL kayıtlarına kodlanarak yanıtla geri gönderilir.
| Özellik | Normal DNS trafiği | Tünelleme trafiği |
|---|---|---|
| Alt alan adı uzunluğu | Genellikle kısa, okunabilir | Etiket sınırına (63) yakın, art arda uzun etiketler |
| Bir alan adı altındaki benzersiz alt alan adı sayısı | Az | Yüzlerce, binlerce |
| Sorgu düzeni | Kullanıcı etkinliğine bağlı, düzensiz | Sabit aralıklı (beaconing) veya kısa sürede yoğun |
| Kayıt türü | A, AAAA ağırlıklı | TXT, NULL, CNAME artışı; ancak A ve AAAA da kullanılabilir |
| Önbellek isabeti | Yüksek | Neredeyse sıfır; her sorgu benzersizdir |
Saldırganlar Hangi Araçları Kullanır?
DNS tünelleme araçlarının çoğu açık kaynaklıdır ve sızma testlerinde meşru olarak da kullanılır. Araçlar taşıdıkları trafik, kodlama yöntemi ve kullandıkları kayıt türüyle birbirinden ayrılır. Hangi aracın hangi izi bıraktığını bilmek, tespit kurallarını yazarken neyin aranacağını belirler. Aşağıdaki tablo bilinen dört aracı bu açıdan karşılaştırıyor.
| Araç | Amaç | Kodlama | Kayıt türleri | Tespit açısından not |
|---|---|---|---|---|
| Iodine | IPv4 trafiğini DNS üzerinden tünelleme | Base32, Base64, Base128 veya ham | Varsayılan NULL; TXT, SRV, MX, CNAME, A | Yüksek hacim ve NULL kayıt oranı belirgin iz bırakır |
| dnscat2 | Şifreli C2 kanalı | Hex | TXT, CNAME, MX, A, AAAA | Düşük hacimli çalışabilir; uzun hex etiketleri ipucudur |
| dns2tcp | TCP bağlantılarını (ör. SSH) taşıma | Base64 | TXT, KEY | TXT oranındaki artışla öne çıkar |
| Cobalt Strike DNS Beacon | Ticari C2 çerçevesi | Araca özgü | A, AAAA, TXT | Uzun uyku aralıklarıyla hacim tabanlı kuralların altında kalabilir |
Bu araçları kontrollü bir ortamda çalıştırmak, tespit kurallarının gerçekten alarm üretip üretmediğini görmenin en doğrudan yoludur. SIEM güvenlik testi yazımız bu tür simülasyonların nasıl planlandığını anlatır.
DNS Tünelleme Hangi Senaryolarda Kullanılır?
DNS tünelleme üç ana amaçla karşımıza çıkar: veri sızdırma, komuta-kontrol ve ağ kısıtlamalarını aşma. Her senaryo farklı bir trafik deseni üretir. Veri sızdırma kısa sürede yüksek hacim yaratırken C2 kanalı günlerce düşük ve düzenli bir iz bırakır; bu yüzden tek bir eşik ikisini birden yakalayamaz.
Veri sızdırmada dosyalar küçük parçalara bölünür ve binlerce sorguyla dışarı çıkarılır; loglarda kısa sürede tek bir alan adı altında yüzlerce benzersiz alt alan adı belirir. Komuta-kontrol kanalında ise zararlı yazılım birkaç dakikada bir sorgu atıp komut bekler, hacim düşüktür ama zamanlama şaşmaz. Misafir Wi-Fi veya captive portal arkasında Iodine ile internete çıkmaya çalışan biri ise en fazla trafiği üretir ve genellikle en kolay fark edilen senaryo budur.
Gerçek saldırılarda kayıt türü her zaman TXT değildir. Unit 42’nin 2019’da yayımladığı analize göre İran bağlantılı OilRig (APT34) grubunun Helminth, ISMAgent, ALMA Communicator, BONDUPDATER ve QUADAGENT araçları ağırlıklı olarak A ve AAAA kayıtlarını kullandı; veri hex veya Base64 ile alt alan adlarına kodlandı, komutlar IPv4 ve IPv6 adreslerinin içinde geri geldi. Yalnızca TXT sorgularını izleyen bir kural bu araçları kaçırır.
DNS Tünelleme Nasıl Tespit Edilir?
DNS tünelleme tespiti, sorguların istatistiksel özelliklerinin kurumun normal DNS profilinden ne kadar saptığına bakılarak yapılır. Uzunluk, entropi, hacim, benzersiz alt alan adı sayısı ve kayıt türü birlikte değerlendirildiğinde yanlış alarm azalır. Eşikler başka bir kurumdan kopyalanmamalı, en az birkaç haftalık kendi trafiğinizle belirlenmelidir.
- Etiket ve sorgu uzunluğu: Salat, Davis ve Khan’ın 2023 çalışmasında Iodine’in veri sızdıran sorgusu 122 karakterdi; aynı ortamda ortalama alt alan adı uzunluğu 46 karakterdi.
- Shannon entropisi: Kodlanmış veri rastgele görünür ve entropisi yüksektir. Aynı çalışma 4’ün üzerindeki değerleri şüpheli kabul etti.
- Benzersiz alt alan adı sayısı: Tek bir alan adı altında kısa sürede yüzlerce farklı alt alan adı sorgulanması.
- Kayıt türü dağılımı: NULL ve TXT oranındaki ani artış; ama A ve AAAA tabanlı araçlar da hesaba katılmalı.
- Düzenlilik: Sabit aralıklarla gelen sorgular (beaconing), insan kaynaklı trafikte nadiren görülür.
- Yanıt boyutu ve süresi: Büyük TXT yanıtları ve yetkili sunucuya kadar giden, önbellekten dönmeyen sorgular.
Entropi eşiği nereye uygulanmalı? Kendi ölçümümüz
Entropi eşiğini tam alan adına uygulamak yanıltıcı olabilir. Aşağıdaki değerleri Shannon entropisi formülüyle kendimiz hesapladık. Tamamen meşru iki adres, sık önerilen 3,5 eşiğini zaten aşıyor; asıl ayrım, kodlanmış etiketlerde 4’ün üzerine çıkıldığında belirginleşiyor.
| Sorgu | Uzunluk | Entropi (bit/karakter) |
|---|---|---|
| mail.google.com | 15 | 3,06 |
| outlook.office365.com | 21 | 3,55 |
| www.nesilteknoloji.com | 22 | 3,57 |
| Base32 ile kodlanmış bir kimlik bilgisi satırı (tek etiket) | 52 | 4,26 |
| vgqaaaaaafsuxvqh2nuoj5rgkzlhmrswm3ufq.t.ornek-saldirgan.com | 59 | 4,53 |
Bu yüzden entropi, kayıtlı alan adı (ör. ornek-saldirgan.com) çıkarıldıktan sonra kalan alt alan adı etiketine uygulanmalı ve uzunluk koşuluyla birlikte kullanılmalıdır.
Tespit için en yaygın kaynaklar şunlardır: Zeek dns.log ile pasif DNS kaydı, çözücü sorgu logları ve bilinen kötü alan adlarını engelleyen Response Policy Zones (RPZ). Makine öğrenmesi modelleri imzası olmayan yeni araçları yakalamada işe yarar, ancak yine iyi etiketlenmiş bir normal trafik verisine ihtiyaç duyar.
SIEM ile DNS Tünelleme Korelasyonu Nasıl Yapılır?
SIEM, DNS loglarını güvenlik duvarı, EDR ve proxy loglarıyla ilişkilendirerek tek bir şüpheli sorgu yerine bir olay zinciri arar. Böylece analist her uzun alan adı için değil, aynı uç noktada şüpheli bir süreçle birlikte görülen DNS anomalisi için uyarılır. Kural mantığının temelleri SIEM nedir rehberimizde yer alıyor.
| Kural | Veri kaynağı | Örnek koşul (başlangıç değeri) | Önem |
|---|---|---|---|
| Tek alan adı altında çok sayıda benzersiz alt alan adı | DNS logu | 10 dakikada aynı kayıtlı alan adı altında 200’den fazla benzersiz alt alan adı | Yüksek |
| Uzun ve yüksek entropili etiket | DNS logu | Alt alan adı 50 karakterden uzun ve entropisi 4’ün üzerinde | Yüksek |
| Yeni görülen alan adına TXT/NULL artışı | DNS logu + tehdit istihbaratı | Son 30 günde görülmemiş alan adına TXT veya NULL sorgu patlaması | Yüksek |
| DNS anomalisi ve uç nokta alarmı | DNS logu + EDR | Aynı cihazda DNS anomalisi ve şüpheli süreç | Kritik |
| Mesai dışı düzenli sorgu | DNS logu | Gece saatlerinde sabit aralıklarla aynı alan adına sorgu | Orta |
Tablodaki sayılar başlangıç noktasıdır. CDN, antivirüs ve telemetri servisleri de uzun ve rastgele görünen alt alan adları üretir; bu servisler beyaz listeye alınmadan kurallar devreye alınırsa analist ekibi kısa sürede alarm yorgunluğu yaşar.
# Zeek dns.log üzerinde uzun sorguları listeleme (zeek-cut ile)
cat dns.log | zeek-cut ts id.orig_h query qtype_name \
| awk 'length($3) > 50' | sort -k3 | head -50Log tarafında BIND için querylog, Unbound için log-queries: yes ve Windows DNS Server için analitik olay günlüğü açılmalıdır. Logların SIEM’e gerçek zamanlıya yakın aktarılmasını, geriye dönük inceleme yapabilmek için de en az 90 gün saklanmasını öneriyoruz; düşük hacimli bir C2 kanalı haftalarca fark edilmeden çalışabilir. Toplama mimarisinin ayrıntıları log kayıtları ile SIEM yazımızda anlatılıyor.
DNS Tünellemeye Karşı 7 Adımlı Savunma Planı
DNS tünellemeye karşı tek bir ürün yeterli olmaz; çıkış kontrolü, loglama, filtreleme ve test birlikte çalışmalıdır. Aşağıdaki yedi adım, en az maliyetliden en kapsamlıya doğru sıralanmıştır. İlk iki adım atılmadan sonraki adımların etkisi sınırlı kalır, çünkü görülmeyen trafik analiz de edilemez.
- Merkezi çözücüyü zorunlu kılın: İstemcilerin yalnızca kurum çözücüsünü kullanmasını sağlayın; dışarıya doğrudan 53 (DNS) ve 853 (DoT) çıkışını güvenlik duvarında kapatın.
- Sorgu loglamayı açın: Çözücü loglarını SIEM’e aktarın ve en az 90 gün saklayın.
- Koruyucu DNS ve RPZ kullanın: Bilinen kötü ve yeni kaydedilmiş alan adlarını çözücü seviyesinde engelleyin.
- Anomali kurallarını kalibre edin: Birkaç haftalık normal trafikle eşikleri belirleyin, CDN ve telemetri alan adlarını istisnaya alın.
- Bulut ortamını ayrıca ele alın: Bulut sunucuları sağlayıcının kendi çözücüsünü kullanır. 2023 çalışmasında Google Cloud’da tüm giden trafik kapatıldığı halde Iodine tüneli metadata sunucusu üzerinden çalıştı; bu yüzden bulut DNS sorgu logları (ör. Route 53 Resolver veya Cloud DNS logları) da SIEM’e alınmalı.
- DoH ve DoT politikası belirleyin: Harici DoH sağlayıcılarına erişimi engelleyin; şifreli DNS gerekiyorsa kurum çözücüsü üzerinden sunun.
- Düzenli test edin: Iodine ve dnscat2’yi yetkili bir sızma testi kapsamında çalıştırıp kuralların alarm üretip üretmediğini doğrulayın.
DNS-over-HTTPS Tünellemeyi Nasıl Etkiler?
DNS-over-HTTPS (DoH, RFC 8484), DNS sorgularını HTTPS içinde şifreleyerek gizlilik sağlar. İstemci kurum çözücüsünü atlayıp doğrudan harici bir DoH sağlayıcısına bağlanırsa sorgular kurum loglarında hiç görünmez. Bu durumda yukarıdaki tüm tespit kuralları veri alamaz ve tünel 443 numaralı portta normal web trafiğinin arasına karışır.
- Tarayıcı ve işletim sistemi politikalarıyla harici DoH’yi kapatın; Firefox için use-application-dns.net kanarya alan adı ve kurumsal ilkeler kullanılabilir.
- Bilinen DoH sağlayıcılarının adreslerini proxy veya güvenlik duvarında engelleyin.
- Şifreli DNS isteniyorsa kurum çözücüsünü DoH veya DoT destekli yapılandırın; böylece hem gizlilik korunur hem de loglar kurumda kalır.
Sıkça Sorulan Sorular
Bu bölümde DNS tünelleme hakkında güvenlik ekiplerinden en çok gelen dört soru yer alıyor: tamamen engellenip engellenemeyeceği, hangi SIEM kurallarının işe yaradığı, VPN’den farkı ve DNSSEC’in rolü. Yanıtlar yukarıdaki tespit ve savunma bölümlerine dayanır; kural örnekleri ve eşik değerleri için SIEM bölümüne dönebilirsiniz.
DNS tünelleme tamamen engellenebilir mi?
Tamamen engellemek için DNS’i kapatmak gerekir, bu da ağı durdurur. Bunun yerine istemcilerin yalnızca kurum çözücüsünü kullanması, dışarıya doğrudan DNS ve DoH çıkışının kapatılması, RPZ ile filtreleme ve anomali kurallarıyla tünel kurma ihtimali büyük ölçüde azaltılır ve kurulan tünelin fark edilme süresi kısalır.
Hangi SIEM kuralları DNS tünellemeyi yakalar?
En işe yarayan kurallar tek bir göstergeye değil birkaçının birlikte görülmesine bakar: aynı alan adı altında çok sayıda benzersiz alt alan adı, 50 karakteri aşan ve entropisi 4’ün üzerinde olan etiketler, yeni görülen alan adlarına TXT veya NULL sorgu artışı ve aynı cihazda EDR alarmı. Eşikler kurumun kendi trafiğiyle ayarlanmalıdır.
DNS tünelleme ile VPN arasındaki fark nedir?
VPN, ağ yönetiminin bilgisi ve izniyle kurulan, denetlenebilir bir şifreli bağlantıdır. DNS tünelleme ise yöneticinin haberi olmadan DNS protokolünü veri taşımak için kötüye kullanır. Teknik olarak ikisi de tünel kurar; fark, yetki ve görünürlüktedir.
DNSSEC DNS tünellemeyi engeller mi?
Hayır. DNSSEC, DNS yanıtlarının sahte olmadığını kriptografik olarak doğrular. Saldırgan kendi alan adının gerçek yetkili sunucusunu işlettiği için yanıtları DNSSEC açısından geçerli olabilir. DNSSEC zehirleme ve sahtecilik saldırılarına karşı faydalıdır, ancak tünelleme için çıkış kontrolü ve trafik analizi gerekir.
Kaynaklar
- Salat, L., Davis, M., Khan, N. — DNS Tunnelling, Exfiltration and Detection over Cloud Environments, Sensors 23(5), 2760 (2023)
- Unit 42 — DNS Tunneling in the Wild: Overview of OilRig’s DNS Tunneling (2019)
- MITRE ATT&CK — T1071.004 Application Layer Protocol: DNS
- IETF RFC 1035 — Domain Names: Implementation and Specification (1987)
- IETF RFC 8484 — DNS Queries over HTTPS (DoH) (2018)
- Zeek Documentation — dns.log
- ISC — BIND 9 Administrator Reference Manual
- Iodine — proje deposu (GitHub)
- dnscat2 — proje deposu (GitHub)
Erişim tarihi (tüm kaynaklar): 26 Ekim 2026. Güncelleme tarihçesi: 26 Ekim 2026 — ilk yayın.
DNS Tünelleme Testi İçin Ön Görüşme
DNS tünelleme senaryolarını ağınızda kontrollü olarak çalıştırıp tespit kurallarınızın gerçekten alarm üretip üretmediğini sızma testi kapsamında birlikte doğrulayalım.
Teklif Talep Et