TR | Scapy ile ARP Zehirleme Saldırısı
Her zaman söylerim ve söylemeye de devam edeceğim
- “Eğer herhangi bir sistemin çalışma mantığını biliyorsanız, bu durumda hem atak vektörü hemde savunma vektörü geliştirebilirsiniz”
Bu yazıda da ARP nin çalışma mantığını anlatacak ve bir saldırı gerçekleştireceğiz. Konu içeriğimiz aşağıdaki gibi olacaktır.
- ARP Protokolünün Çalışma Mantığı
- ARP Zehirlemenin Çalışma Mantığı
- Scapy ile ARP Paketi Oluşturma
- Scapy ile ARP Saldırısı ve Sonucu
ARP Protokolünün Çalışma Mantığı
- Ağda herhangi bir işlem yapmak istediğinizde [Bir cihaz ile iletişim kurmak istediğimizde] cihazımız ilk olarak ARP tablosunu kontrol eder. [arp -a]
- Eğer iletişim kurmak istediğimiz cihazın MAC bilgisi bu tabloda yoksa bağlı olduğumuz ağa cihazımız tarafından genel bir mesaj gönderilir. Ağdaki bütün cihazlar bu mesajı alır ve ip adresinin sahibi olan cihaz karşı tarafın MAC adresini kendi ARP tablosuna ekler [yoksa] ve bu ARP isteğine bir cevap döner.
- Cevabı alan cihazımız hemen ARP tablosunu günceller. [arp -a]
ARP Zehirlemenin Çalışma Mantığı
- Burada amaç bilgisayarı router cihazı olduğumuza ikna edecek ARP paketleri göndermektir.
Scapy ile ARP Paketi Oluşturma
- Scapy ile bir ARP paketi oluşturmadan önce gelin bu paketin yapısını wireshark ve scapy ile inceleyip içinde neler olduğuna bakalım.
Bir ARP paketinin yapısı
- Wireshark ile ARP paketini inceleyelim :
- Scapy ile ARP paketini inceleyelim
- ilk olarak scapy içerisinde hazır gelen “rdpcap()” fonksiyonu ile elimizdeki pcap dosyasından ARP paketini okuyoruz. Daha sonra bunu aşağıdaki şekilde görüntülüyoruz.
- arp = rdpcap(“/path/arp.pcap”)[0]
ARP saldırısından önce :
# [Kurbanın ARP tablosu]
ARP saldırısından sonra :
# [ARP Zehirlemesinden sonra kurbanın ARP tablosu]
Sonuç :
- Daha da ilerisini yapabilirsiniz, bu sadece saldırının başarılı olduğunu gösterebilmek için.
İşlem için kullanılan kodlar :