Switch Kullanılan Ağlarda Trafik dinleme(Sniffing)

Bedros Sanches

Emektar
5 Ocak 2006
525
14
HUB kullanılan ortamlarda trafik dinleme işlemi oldukça basittir. Ağa bağlı bir makineye kurulacak bir sniffer aracılığı ile ağdaki tüm trafik dinlenebilir. Bu zaafiyet HUB sistemlerin çalışma mantığından kaynaklanır, hub ile birbirine bağlı sistemlerde iki sistem birbiri arasında haberleşmek istese bile aralarındaki trafik tüm hostlara gidecektir(broadcast mantığı ile çalışır). 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]

hzyf-swicth-image002.gif

Ş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; 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 adresiA(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
hzyf-swicth-image003.jpg

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 progra**** 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] progra**** 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
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.