DNS üzerinden veri sızdırma: DNS extfiltration örneği

SQLmap‘i kullanırken out-of-band yöntemlerinden biri ile karşılaştım; time based olmayan blind sql injection‘larda dışarıya hızlıca veri çıkarabilmek için kullanılan bir yöntem. Adı DNS extfiltration.

Bu yönteme göre;

Exploit SQL’i içine SQL’i çalıştıran sunucunun çözmesi gereken bir sub.domain koyularak sub üzerinden dışarıya veri çıkartılııyor. Domain tarafında ise; domain bizim kontrolümüzde olduğundan UDP 53’ü dinler durumdayız. UDP 53 standart olarak DNS trafiği taşıdığından güvenlik duvarlarından da rahatça geçebiliyor.

Aşağıdaki ekran görüntüsünü inceleyelim.

  1. Arkadaki siyah terminalde tankado.com sunucusu üzerinde başlattığım tcpdump görülüyor. tcpdump’ı UDP’i 53’ü dinlemek üzere başlattım.
  2. Öndeki mavi terminalde ise nslookup aracını başlattıktan sonran server direktifi ile aktif DNS sunucuyu tankado.com olarak ayarladım (tankado.com cloudfllare arkasında olduğundan gerçek IP adresini yazdım ve buzladım)
  3. iloveyouensei.tankado.com sub-domain’ini sorguladığımda tankado.com’un UDP 53’üne “iloveyouensei” string’inin ulaştığını gördük.
  4. Bu şekilde, sub kısmına istediğim şeyi yazarak kontrolüm altındaki tankado.com’a ulaştırabilirim.

Özetle; DNS extfiltration (DNS ile sızdırma) yöntemi sayesinde güvenlik duvarı ile korunan bir ağdan DNS servisini kullanarak (UDP53) veri çıkartmış olduk. Yani DNS’i veri taşıma/kaçırma amacıyla kullanmış olduk. Her resolve isteği ile tek seferde 512Byte’a kadar veri taşıyabiliriz.

Bunu bir de aşağıdaki gibi bir SQL exploit’i içine koyarsak,blind vektörlerini son derece hızlı hale getirmiş oluruz:

Yazar: Özgür Koca

Yazar - Tankado.com

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.