Dev.to Security 🔐 Cybersecurity 👁 0

Python ile DNS Tünelleme (DNS Tunneling) Mantığını Anlamak

Kısıtlı veya dış dünyaya kapalı ağlarda güvenlik duvarları genellikle HTTP ve HTTPS portlarını kesse de, iç DNS çözümlemesine izin vermek zorunda kalır. DNS tünelleme, dışarı sızdırılmak istenen veriyi DNS sorgularının a

Kısıtlı veya dış dünyaya kapalı ağlarda güvenlik duvarları genellikle HTTP ve HTTPS portlarını kesse de, iç DNS çözümlemesine izin vermek zorunda kalır. DNS tünelleme, dışarı sızdırılmak istenen veriyi DNS sorgularının alt alan adı (subdomain) kısmına kodlayarak güvenlik duvarlarını atlatma yöntemidir. Mantık oldukça basittir: İletilecek metin önce Base64 formatına çevrilir (örneğin 'veri123' -> 'dmVyaTEyMw==') ve saldırganın kontrolündeki yetkili ad sunucusuna "dmVyaTEyMw.saldirgan.com" şeklinde bir A veya TXT kaydı sorgusu atılır. Python'da scapy veya socket kütüphanesiyle tek satırlık bir UDP paketi oluşturup kurumsal DNS sunucusuna göndermek, verinin ağ dışına çıkması için yeterli olabilir. Bu trafiği tespit etmek isteyen mavi ekipler, DNS loglarında aşırı uzun subdomain yapılarını ve yüksek entropili sorgu sayılarını takip eder.

📰 Read the original article on Dev.to Security

Originally published by Dev.to Security. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.