|
Switch yapısı
ise biraz farklıdır. Trafik sadece haberleşmek isteyen iki host arasında
gerçekleşir . Switch'ler bu yapıyı üzerilerinde tuttukları CAM (Content
Addresable Memory )tablolaları ile kotarırlar, bu tablolar MAC adresi, switch
port numarası ve VLAN bilgilerinden oluşur.
Bir host diğeri ile iletişime başlamadan önce kendi ARP cache'ni(IP Adresi -
MAC adresi bilgileri) kontrol ederek hedef IP adresine ait bilgi var mı
kontrol eder, varsa direkt o MAC adresine veriyi gönderir yoksa broadcast
yaparak o IP adresine sahip MAC adresinin kim olduğunu öğrenir. Bu istekler
ve cevaplar ARP mesajları ile gerçekleştirilir.
4 cesit ARP mesajı vardır
ARP request : IP Adresine ait donanım adresi(MAC adresi) sorgulamak
için kullanılır
10:09:20.356809
arp who-has 12.16.6.17 tell 12.16.6.185
ARP reply : Belirtilen Ip adresine uyan donanım adresini döndürür
10:09:20.356809
arp reply 12.16.6.17 is-at 0:80:c8:f8:5c:73
RARP request: Belirli bir MAC adresi için IP adresi sorgulaması için
kullanılır
RARP reply : Belirli MAC adresi için IP adresi cevabı döndürür.
Arp Cahce işlemleri
Arp cache bilgilerini görüntülemek
arp -an komutu ile arp cache bilgileri görülebilir.
#arp -an
- (1.2.3.4) at 00:00:ge:11:01:98 on xl0
- (5.6.7.8) at 00:00:ev:49:f0:kj on xl0
- (9.10.11.12) at 00:e0:4c:bb:66:66 on vr0
Arp kaydı silmek
#arp -d IP_adresi
Arp kaydı ekleme
#arp -s IP_adresi MAC_adresi [temp | permanent] [pub]
Şekilde Node A Node B ile iletişime geçmek istediğinde switch her ikisinin
mac adresi ve port bilgilerini edinerek bu iki makine arasıdaki iletişimi
C�nin görmesini engeller. Switchli ağlarda başka makineye ait trafiği
izlemenin çeşitli yolları vardır burada en basit ve en etkili yöntem olan arp
spoofing ve korunma yolları anlatılacaktır.
Gerekli araçlar
İşletim sistemi;
· Windows NT(W2k, W2K3, Win XP�) ailesinden bir işletim sistemi
· Herhangi bir Linux dağıtımı
· FreeBSD/OpenBSD işletim sistemi
Programlar;
· Tcpdump (http://www.tcpdump.org)
· Dsinff (http://www.monkey.org/~dugsong/dsniff/ )
· Fragrouter (http://www.monkey.org/~dugsong/fragrouter/ )
Kişisel tercihim FreeBSD ve OpenBSD olduğu için örnekler bu iki işletim
sisteminin kurulu olduğu makineler üzerinde verilecektir ama belirlenen
programların Windows ve Linux versiyonları bulunarak aynı testler bu
sistemler ile de gerceklenebilir.
Kurulum
OpenBSD için kurulum
#cd /usr/ports/security/dsniff
#env FLAVOR="no_x11" make install
#cd /usr/ports/security/fragrouter/
#make install
ARP Spoofing Uygulaması / Teori
Bir switche bağlı 3 makine üzerinde test
Makine ismi Ip
Adresi Mac adresi
A(Router/Firewall) 10.10.10.1 aa:bb:cc:dd:ee:ff
B(FreeBSd) 10.10.10.2 ab:bc:cd:de:ef:fg
C(OpenBSD) 10.10.10.3 xx:yy:zz:ww:jj:ll
Yukarıdaki şekle göre Firewall olarak belirlenen makine bir kablo ile switche
bağlıdır ve switche bağlı diğer makineler için varsayılan çıkış kapısıdır.
B makinesinin internete çıkışı A makinesi yani Firewall/router üzerinden
gerçekleşmektedir. C makinesi ise B ve A ile aynı fiziksel ağda bulunan bir
makinedir. Arpspoofing yapılmadan önceki normal trafik akışı aşağıdaki
gibidir,
B----àA(10.10.10.1
: aa:bb:cc:dd:ee:ff)---------à gizlibankam.com
Arp spoofing yapıldıktan sonra trafik akışı aşağıdaki şekilde olacaktır.
B----àA(10.10.10.3
: aa:bb:cc:dd:ee:ff, xx:yy:zz:ww:jj:ll)-----àgizlibankam.com
ARP Spoofing Uygulaması / Pratik
Kurulumların gerçekleştirildiği C makinesi üzerinde yapılması gerekenler;
Fragrouter programını kullanarak basitce ip_forwarding islemi yaptırıyoruz,
bu islemi yaparkende paketlerin icerigini gormse şansımız oluyor. Arka planda
tcpdump komutu çalıştırılarak makine üzerinden akan trafik bir dosyaya
kaydedilerek sonradan incelenebilir. Tcpdump ile ilgili detaylı bilgi
kaynaklar bölümünden edinilebilir.
C makinesinde
#fragrouter -B1 &
Ve
#arpspoof -t 10.10.10.2 10.10.10.1
komutuları verilir. Arpspoof komutu ile 10.10.10.2 IP adresli makinede
tutulan 10.10.10.1 adresine ait MAC adresinin 10.10.10.3 IP adresine sahip
makinin MAC adresi ile değiştirilmesi sağlanmış oldu.
Böylece B makinesi A makinesi ile iletişime geçtiğini düşünerek paketi
aslında C makinesine yollamış oluyor. C makinesi de trafiği üzerinden
geçirerek asıl hedefine ulaştırıyor ve cevaıbını yine B makinesine yolluyor,
bu arada üzerinden geçirdiği trafiği izleme şansı oluyor.
NOT:C makinesinde herhangi bir IP adresi değişikliği yapılmamıştır
Korunma Yöntemleri
- Statik arp kayıtları kullanmak
- Arpwatch[4] programını kullanarak ağ üzerinde
IP-MAC tablosu değişikliklerini gözlemlemleyerek , değişikliklerin mail
ile bildirilmesini sağlamak.
- Switchler üzerinde port security özelliğini
aktif ederek kullanmak.
Kaynaklar:
[1] http://www.olympos.org/article/articleview/172/1/10/
[2] http://www.enderunix.org/docs/tcpdump.html
[3] http://ettercap.sourceforge.net/
[4] http://www-nrg.ee.lbl.gov/nrg.html
[5] http://www.huzeyfe.net
|