Pencetak Cap Geek OS Hacker Dengan Saiz Window TTL dan TCP
Tahukah anda bahawa anda boleh mengetahui sistem pengendalian mana-mana peranti rangkaian yang dijalankan hanya dengan melihat cara ia berkomunikasi di rangkaian? Mari kita lihat bagaimana kita dapat mengetahui sistem pengendalian peranti kita berjalan.
Kenapa Anda Adakah Ini?
Menentukan apa OS mesin atau peranti sedang berjalan boleh berguna untuk banyak sebab. Mula-mula sekali kita perhatikan perspektif setiap hari, bayangkan anda mahu bertukar kepada ISP baru yang menawarkan internet yang tidak terjual selama $ 50 sebulan supaya anda mengambil percubaan perkhidmatan mereka. Dengan menggunakan cap jari OS anda akan mengetahui bahawa mereka mempunyai router sampah dan menawarkan perkhidmatan PPPoE yang ditawarkan pada sekumpulan mesin Windows Server 2003. Tidak seperti apa-apa lagi, huh?
Penggunaan lain untuk ini, walaupun tidak begitu beretika, adalah hakikat bahawa lubang keselamatan adalah spesifik OS. Contohnya, anda melakukan imbasan port dan mencari port 53 terbuka dan mesin sedang menjalankan versi Bind yang sudah ketinggalan zaman dan terdedah, anda mempunyai peluang SINGLE untuk mengeksploitasi lubang keselamatan sejak percubaan yang gagal akan meranapkan daemon.
Bagaimanakah Kerja Jahitan Perisian OS?
Apabila melakukan analisis pasif trafik semasa atau bahkan melihat tangkapan paket lama, salah satu yang paling mudah, berkesan, cara melakukan OS Fingerprinting adalah dengan hanya melihat saiz tetingkap TCP dan Time To Live (TTL) di header IP yang pertama paket dalam sesi TCP.
Berikut ialah nilai untuk sistem pengendalian yang lebih popular:
Sistem operasi | Masa untuk hidup | Saiz Tetingkap TCP |
Linux (Kernel 2.4 dan 2.6) | 64 | 5840 |
Google Linux | 64 | 5720 |
FreeBSD | 64 | 65535 |
Windows XP | 128 | 65535 |
Windows Vista dan 7 (Server 2008) | 128 | 8192 |
iOS 12.4 (Penghala Cisco) | 255 | 4128 |
Alasan utama bahawa sistem operasi mempunyai nilai yang berbeza adalah disebabkan oleh fakta bahawa RFC untuk TCP / IP tidak menetapkan nilai lalai. Perkara penting yang perlu diingat adalah bahawa nilai TTL tidak akan selalu sepadan dengan satu di dalam jadual, walaupun peranti anda menjalankan salah satu sistem operasi yang disenaraikan, anda melihat apabila anda menghantar paket IP merentasi rangkaian sistem pengendalian peranti penghantaran menetapkan TTL kepada TTL lalai untuk OS tersebut, tetapi sebagai paket menjejas penghantar TTL diturunkan oleh 1. Oleh itu, jika anda melihat TTL daripada 117 ini diharapkan dapat menjadi satu paket yang dihantar dengan TTL sebanyak 128 dan telah melintasi 11 penghantar sebelum ditangkap.
Menggunakan tshark.exe adalah cara paling mudah untuk melihat nilai-nilai itu begitu sekali anda telah mendapat tangkapan paket, pastikan anda mempunyai Wireshark dipasang, kemudian navigasi ke:
C: \ Program Files \
Sekarang tekan butang shift dan klik kanan pada folder wireshark dan pilih tetingkap arahan terbuka di sini dari menu konteks
Jenis sekarang:
tshark -r "C: \ Users \ Taylor Gibb \ Desktop \ blah.pcap" "tcp.flags.syn eq 1" -T fields -e ip.src -e ip.ttl -e tcp.window_size
Pastikan untuk menggantikan "C: \ Users \ Taylor Gibb \ Desktop \ blah.pcap" dengan laluan mutlak untuk tangkapan paket anda. Sebaik sahaja anda menekan masuk, anda akan ditunjukkan semua paket SYN dari tangkapan anda yang lebih mudah untuk membaca format jadual
Sekarang ini adalah tangkapan rawak paket yang saya buat dari saya yang menghubungkan ke Laman Web How-To Geek, di antara semua Windows chat lain yang saya dapat memberitahu anda dua perkara yang pasti:
- Rangkaian tempatan saya ialah 192.168.0.0/24
- Saya berada di kotak Windows 7
Jika anda melihat baris pertama jadual, anda akan melihat saya tidak berbohong, alamat IP saya ialah 192.168.0.84 saya TTL adalah 128 dan Saiz Tetingkap TCP saya adalah 8192, yang sepadan dengan nilai-nilai untuk Windows 7.
Perkara seterusnya yang saya lihat ialah alamat 74.125.233.24 dengan TTL 44 dan Saiz Tetingkap TCP 5720, jika saya melihat jadual saya tidak ada OS dengan TTL sebanyak 44, tetapi ia mengatakan bahawa Linux yang pelayan Google jalankan TCP Window Size 5720. Setelah melakukan pencarian web cepat dari alamat IP Anda akan melihat bahwa sebenarnya adalah Server Google.
Apa lagi yang anda gunakan untuk tshark.exe, beritahu kami dalam komen.