Hacker Geek OS TTL ve TCP Pencere Boyutlarıyla Parmak İzi
Ağa bağlı bir iletişim cihazının hangi işletim sistemini çalıştığını, yalnızca ağ üzerinden iletişim kurma biçimine bakarak bulabileceğinizi biliyor muydunuz? Cihazlarımızın hangi işletim sistemini kullandığını nasıl bulabileceğimize bir göz atalım.
Neden bunu yaptın?
Bir makine veya cihazın hangi işletim sisteminin çalıştığını belirlemek, birçok nedenden dolayı yararlı olabilir. Öncelikle günlük bakış açısına bir göz atalım, ayda 50 dolara ücretsiz internet bağlantısı sunan yeni bir ISS'ye geçmek istediğinizi hayal edin, böylece hizmetlerini denemelisiniz. OS parmak izi kullanarak, yakında yönlendirici olduklarını keşfedeceksiniz ve bir grup Windows Server 2003 makinelerinde sunulan bir PPPoE hizmeti sunacaksınız. Artık iyi bir anlaşma gibi gelmiyor, ha?
Bu kadar etik olmasa da bunun bir başka kullanımı da güvenlik deliklerinin işletim sistemine özgü olduğudur. Örneğin, bir bağlantı noktası taraması yapıyor ve bağlantı noktası 53'ü açık buluyorsunuz ve makine modası geçmiş ve savunmasız bir Bind sürümü kullanıyor, başarısız bir girişim deemonun çökmesine neden olacağından güvenlik açığından yararlanma şansınız var..
OS Parmak İzi Nasıl Çalışır??
Mevcut trafiğin pasif analizini yaparken veya eski paket yakalamalarına bakarken, OS Parmak İzini yapmanın en kolay ve etkili yollarından biri, ilk önce IP başlığındaki TCP pencere boyutuna ve Time To Live (TTL) 'a bakmaktır. TCP oturumunda paket.
Daha popüler işletim sistemlerinin değerleri:
İşletim sistemi | Yaşama zamanı | TCP Pencere Boyutu |
Linux (Çekirdek 2.4 ve 2.6) | 64 | 5840 |
Google Linux | 64 | 5720 |
FreeBSD | 64 | 65535 |
Windows XP | 128 | 65535 |
Windows Vista ve 7 (Sunucu 2008) | 128 | 8192 |
iOS 12.4 (Cisco Yönlendiriciler) | 255 | 4128 |
İşletim sistemlerinin farklı değerlere sahip olmasının ana nedeni, TCP / IP için RFC'lerin varsayılan değerleri öngörmemesidir. Hatırlanması gereken diğer önemli husus, cihazınız listelenen işletim sistemlerinden birini çalıştırıyor olsa bile TTL değerinin her zaman tabloda eşleşmeyeceği, şebeke üzerinden gönderen cihazın işletim sistemini bir IP paketi gönderdiğinizde görebilirsiniz TTL'yi bu işletim sistemi için varsayılan TTL'ye ayarlar, ancak paket yönlendiricileri geçerken TTL 1 oranında düşürülür. Bu nedenle, 117’den bir TTL görürseniz, bunun 128’lik bir TTL ile gönderilen bir paket olması beklenebilir. yakalanmadan önce 11 yönlendiriciyi geçti.
Tshark.exe aracını kullanmak, değerleri görmenin en kolay yoludur; bu nedenle, bir paket yakalamanız olduğunda, Wireshark'ın kurulu olduğundan emin olun, sonra şuraya gidin:
C: \ Program Dosyaları \
Şimdi shift tuşunu basılı tutun ve wireshark klasörüne sağ tıklayın ve bağlam menüsünden buradaki açık komut penceresini seçin.
Şimdi yazın:
tshark -r "C: \ Kullanıcılar \ Taylor Gibb \ Masaüstü \ blah.pcap" "tcp.flags.syn eq 1" -T alanları -e ip.src -e ip.ttl -e tcp.window_size
“C: \ Users \ Taylor Gibb \ Desktop \ blah.pcap” 'ı paket yakalamanızın mutlak yolu ile değiştirdiğinizden emin olun. Enter'a bastığınızda, yakalamanızdaki tüm SYN paketleri tablo formatını daha kolay okunur şekilde gösterilecektir.
Şimdi bu rastgele bir paket yakalama işlemidir. How-To Geek Web sitesine bağlanmamı sağladım, diğer tüm konuşmacıların arasında, Windows'un yaptığı iki şeyi size söyleyebilirim:
- Yerel ağım 192.168.0.0/24
- Windows 7 kutusuyum
Tablonun ilk satırına bakarsanız, yalan söylemediğimi göreceksiniz, IP adresim 192.168.0.84, TTL'im 128 ve TCP Pencere Boyutum 8192'dir; bu, Windows 7 değerlerine eşittir.
Gördüğüm bir sonraki şey, 44 TTL ve 5720 TCP Pencere Boyutu olan 74.125.233.24 bir adres, eğer benim masaya bakarsam, 44 TTL’e sahip bir işletim sistemi yok, ancak Linux’un Google’ın sunucuları olduğunu söylüyor. çalıştırın ve bir TCP Pencere Boyutu 5720 var. IP adresini hızlı bir web araması yaptıktan sonra aslında bir Google Server olduğunu göreceksiniz.
Tshark.exe'yi başka ne için kullanıyorsunuz, yorumlarda bize bildirin.