ARP Poisoning
ARP (Address Resolution Protocol): Adres çözümleme protokolü olarak ip adresi bilinen hedefin fiziksel adresini (MAC adresini) bulmaya yarayan bir protokoldür.
Bu protokolün kullanılma amacı ise, aynı ağ üzerinde paketler fiziksel adreslerine göre yönlendirilir.
Bir ağa bağlandığımız zaman ağda haberleşme sağlanırken sürekli olarak ARP istekleri yapılır. Geri dönen cevaplar ise ARP tablosunda saklanır. Bilgisayarımızın ARP tablosunu terminal üzerinde ARP komutu ile görebiliriz.
Bir ağa bağlandığımız zaman bilgisayarımıza sürekli olarak ARP paketleri gönderilir. Bunun nedeni ağ üzerinde ki gateway dahil olmak üzere ağ üzerindeki bilgisayarlar sürekli olarak paket göndermektedir. Gönderilen paketlerin MAC adresi ile bizim MAC adresimiz eşleşiyor mu diye kontrol edilmektedir. Örnek olarak Netdiscover aracı ile bizimle aynı ağdaki cihazları tespit belirlenen ip aralığına ARP request paketleri gönderir. Sırasıyla bu ip adresi kime ait anlamındadır. Karşı taraftan ARP Reply paketi gelir ise bu paketin içerisinde MAC adresi bulunur.
Bu paketleri Wireshark aracıyla dinlemeye alabiliriz.
Gönderilen paketin içeriğine bakıldığı zaman MAC adresi bilinmediği için broadcast yayın yapıldığı gözükmektedir . Bu istek tarama aralığında bulunan tüm adreslere iletilmektedir.
İstek yapılan adreste eğer bir cihaz varsa cihaz MAC adresini isteğin geldiği adrese gönderir. Bu sayede adresin MAC adresi ARP tablosuna eklenir. Bir sonraki istekte ağa broadcast yollamadan iletişim sağlanabilmektedir.
MAC adresleri insanların kimlik numaraları gibi tekil olarak belirlenir. Bağlandığımız bir ağda ise diğer bağlanan cihazların MAC adreslerini kolay bir şekilde öğrenebiliriz. Bizler internete ilk bağlandığımızda bizi yönlendirecek ağ cihazına sürekli olarak paketler göndeririz. Bu gönderdiğimiz paketler aynı ağda olduğumuzdan dolayı MAC adresine göre yönlendirilmektedir.
ARP poisoning saldırısının amacı ise ağda MAC adresine göre giden paketi, aynı MAC adresini taklit ederek paketi ele geçirme işlemi yapılmasına dayanır. Bu sayede yönlendiriciye gitmesi gereken paket saldırgan kişinin eline geçer. ARP zehirlenmesinin olmadığı bir anda kullanıcı ARP tablosuna baktığı zaman MAC adreslerinin tekil olduğunu görecektir.
ARP tablosunun zehirlenmesi işlemine başlamadan önce gelen paketleri yönlendirmek amacıyla ip yönlendirmeyi aktif etmemiz gerekmektedir. IP yönlendirmenin aktif olması için ip_forward ‘ın değerinin 1 yani aktif olması gerekmektedir. Kullandığımız komut ile dosyanın içerisinde 1 değeri atmış oluruz.
echo 1 > /proc/sys/net/ipv4/ip_forward
Saldırgan ip adresi : 192.168.140.128
Hedef ip adresi : 192.168.140.129
Saldırımızı gerçekleştirirken ARPSpoof aracını kullanacağız. Aracın manuel notunda kullanımı gösterilmektedir.
Kullanacağımız parametreler
-i = Arayüz belirlemek için kullanılacaktır. (ip adresimizi öğrenirken hangi arayüzün ip adresine sahip olduğu gözükmektedir.)
-t = Hedef adres belirlemek için kullanılacaktır.
Hedef sistemin ARP tablosunu zehirleyerek işlemlere başlayabiliriz. Hedefimize sürekli olarak ARP reply paketleri yollamaktır.
arpspoof -i eth0 -t 192.168.140.129 192.168.29.128
Şimdi ise sürekli olarak ARP Reply paketleri yollanarak araya girme işlemi yapılacaktır.
arpspoof -i eth0 -t 192.168.140.128 192.168.29.129
ARP poisoning saldırılarında ki hedef aslında gateway in MAC adresini zehirleyerek, giden gelen paketleri ele geçirmek diyebiliriz. Saldırıya uğrayan kullanıcının ARP tablosuna baktığımızda tabloda ki MAC adreslerinin aynı olduğunu görüyoruz. Saldırımız başarıyla gerçekleşmiştir.
Fark edildiği gibi bu saldırı gerçekleştiği anda ARP tablomuzda aynı MAC adreslerinin olduğu gözüküyor. Yazının en başında dediğimiz gibi her MAC adresinden yalnızca bir tane olabilmektedir. Bu durumda saldırıyı tespit edebiliriz.