DNS Hijacking Nasıl Yapılır?

DNS(alan adı sunucusu)'nun yaptığı iş ulaşılmak istenen alan adının ip adresini döndürmek, ya da ters dns ile yazılan ipnin gerçekten hangi alan adına sahip olduğunu doğrulamaktır.

Web tarayıcımızda ulaşmak istediğimiz sitenin adını yazıp açmak için tıkladığımızda kısaca olanlar:

İlk önce yerelde cache'e, ip adresi var mı diye bakılır. Yoksa sorgu yerel ağdaki DNS sunucuya yollanır.(udp 53) Burada da yoksa yereldeki dns sunucusu kendisinden bir üstteki dns sunucusuna sorgu yapar.(tcp 53) En son bulunan ip istemciye döndürülür.

Peki biz bulunduğumuz ağdaki DNS sorgularına cevap vermek istersek nasıl bir yol izleyeceğiz?

Kendi bilgisayarımda olan Ubuntu üzerine bir dhcp sunucusu, bir http sunucusu, bir de dns sunucusu kurdum. DHCP sunucusu ile sanal makinalarıma ip dağıtıyorum. Yapılandırmalarını düzenledikten sonra, aynı ağda bulunan sanal makinadaki kullanıcı hurriyet.com'a ulaşmak istediğinde dns sorgusu benim dns sunucuma gelecek ve benim istediğim sayfayı hurriyet.com'muş gibi gösteriyor olacak.

Kurulumlar için:

DHCP sunucusu: 

$sudo apt-get install isc-dhcp-server


HTTP sunucusu (Apache2):

$sudo apt-get install  apache2 php5 libapache2-mod-php5 mysql-server-5.5 php5-mysql libapache2-mod-auth-mysql phpmyadmin

DNS sunucusu (bind):

$sudo apt-get install bind9 bind9utils

Yapılandırmalar:
* DHCP için: /etc/dhcp/dhcp.conf içinde:

"option domain-name-servers 192.168.56.1;" diyerek dns sunucu adresimizi tanımlamalıyız.

* Apache2'nin yapacağı iş, dns sonucu gösterilecek sayfayı ulaşılabilir kılmak. Bunun için kullanıcıya göstermek istediğimiz sayfanın web tasarımı kodları .conf dosyasında da yazdığı gibi /var/www/html/ dizini altında olmalı. Ben yeni bir sayfa oluşturmayıp hazır olan index.html sayfasını gösterdim.

* Dns kısmını ayarlarken:

/etc/bind/named.conf.options dosyasının sonuna aşağıdaki kısım eklenmeli. Burada bir zone tanımı yapıyoruz. "hurriyet.com" diye gelen isteklere dns sunucumuzun hangi dosyadan bakacağını söylüyoruz. 

$sudo vim /etc/bind/named.conf.default-zones

zone "hurriyet.com" {
        type master;
        file "/etc/bind/hurriyet.zone";
        allow-update { none; };
};

tanımladığımız /etc/bind/hurriyet.zone dosyasını oluşturmalıyız ve içeriği aşağıdaki gibi olmalı:

$sudo vim /etc/bind/hurriyet.zone






















Son olarak DNS sunucumuzu başlatırken: $sudo /etc/init.d/bind9 start

Sanal makinadan hurriyet.com sayfasına ulaşmak istersem:


$dig hurriyet.com çıktısı:

 
Görüşmek üzere.

5 Kasım 2015

Posted In: apache2, bind9, dhcp, dns, http, spoofing, ubuntu, yapılandırma

WP Twitter Auto Publish Powered By : XYZScripts.com