Wireshark adalah alat masuk de-facto untuk beberapa masalah rangkaian yang berbeza dari penyelesaian masalah rangkaian, pemeriksaan masalah keselamatan, memeriksa lalu lintas rangkaian aplikasi yang mencurigakan, pelaksanaan protokol debug, bersama dengan tujuan pembelajaran protokol rangkaian, dll.
Projek Wireshark dimulakan pada tahun 1998. Terima kasih atas sumbangan sukarela pakar rangkaian global, pihaknya terus membuat kemas kini untuk teknologi baru dan standard penyulitan. Oleh itu, sejauh ini adalah salah satu alat penganalisis paket terbaik dan digunakan sebagai alat komersial standard oleh pelbagai agensi kerajaan, institusi pendidikan, dan organisasi bukan untung.
Alat Wireshark terdiri daripada pelbagai ciri. Sebahagian daripadanya adalah seperti berikut:
- Multiplatform: ia tersedia untuk sistem Unix, Mac, dan Window.
- Ia menangkap paket dari pelbagai media rangkaian, i.e., LAN tanpa wayar, Ethernet, USB, Bluetooth, dll.
- Ini membuka fail paket yang ditangkap oleh program lain seperti Oracle snoop dan atmsnoop, Nmap, tcpdump, Microsoft Network Monitor, SNORT, dan banyak lagi yang lain.
- Ia menyimpan dan mengeksport data paket yang ditangkap dalam pelbagai format (CSV, XML, plaintext, dll.).
- Ia memberikan sokongan penerangan untuk protokol termasuk SSL, WPA / WPA2, IPsec, dan banyak lagi.
- Ia termasuk penangkapan dan penapis paparan.
Walau bagaimanapun, Wireshark tidak akan memberi amaran kepada anda mengenai aktiviti berbahaya. Ini hanya akan membantu anda memeriksa dan mengenal pasti apa yang berlaku di rangkaian anda. Selain itu, ia hanya akan menganalisis protokol / aktiviti rangkaian dan tidak akan melakukan aktiviti lain seperti menghantar / memintas paket.
Artikel ini memberikan tutorial mendalam yang bermula dengan asas-asasnya (i.e., penapisan, lapisan rangkaian Wireshark, dll.) dan membawa anda ke dalam analisis lalu lintas yang mendalam.
Penapis Wireshark
Wireshark dilengkapi dengan mesin penapis yang kuat, Tangkap Penapis dan Penapis Paparan, untuk menghilangkan bunyi dari rangkaian atau lalu lintas yang sudah ditangkap. Penapis ini menyempitkan trafik yang tidak diperlukan dan hanya memaparkan paket yang anda mahu lihat. Ciri ini membantu pentadbir rangkaian untuk menyelesaikan masalah yang dihadapi.
Sebelum melihat butiran penapis. Sekiranya anda tertanya-tanya bagaimana menangkap lalu lintas rangkaian tanpa penapis, anda boleh menekan Ctrl + E atau pergi ke pilihan Tangkap pada antara muka Wireshark dan klik Mula.
Sekarang, mari kita menggali penapis yang ada.
Tangkap Penapis
Wireshark memberikan sokongan untuk mengurangkan ukuran tangkapan paket mentah dengan membolehkan anda menggunakan Penangkapan Penapis. Tetapi ia hanya menangkap lalu lintas paket yang sesuai dengan penapis dan mengabaikan yang lain. Fungsi ini membantu anda memantau dan menganalisis lalu lintas aplikasi tertentu menggunakan rangkaian.
Jangan mengelirukan penapis ini dengan penapis paparan. Ia bukan penapis paparan. Penapis ini muncul di tetingkap utama yang perlu disiapkan sebelum memulakan tangkapan paket. Selain itu, anda tidak dapat mengubah suai penapis ini semasa tangkapan.
Anda boleh pergi ke Tangkap pilihan antara muka dan pilih Tangkap Penapis.
Anda akan diminta dengan tetingkap, seperti yang ditunjukkan dalam gambar. Anda boleh memilih mana-mana penapis dari senarai penapis atau menambah / membuat penapis baru dengan mengklik pada + butang.
Contoh senarai Penapis Tangkap yang berguna:
- hos ip_address - menangkap lalu lintas, hanya antara alamat IP komunikasi tertentu
- bersih 192.168.0.0/24 - menangkap lalu lintas antara julat alamat IP / CIDR
- pelabuhan 53 - menangkap lalu lintas DNS
- tcp portrange 2051-3502 - menangkap lalu lintas TCP dari jarak port 2051-3502
- pelabuhan tidak 22 dan bukan 21 - menangkap semua lalu lintas kecuali SSH dan FTP
Penapis Paparan
Penapis paparan membolehkan anda menyembunyikan beberapa paket dari lalu lintas rangkaian yang sudah ditangkap. Penapis ini boleh ditambahkan di atas senarai yang ditangkap dan dapat diubah suai dengan cepat. Anda kini boleh mengawal dan mengecilkan paket yang ingin anda tumpukan sementara menyembunyikan paket yang tidak diperlukan.
Anda boleh menambah penapis di bar alat penapis paparan tepat di atas panel pertama yang mengandungi maklumat paket. Penapis ini dapat digunakan untuk menampilkan paket berdasarkan protokol, alamat IP sumber, alamat IP tujuan, port, nilai dan maklumat bidang, perbandingan antara bidang, dan banyak lagi.
Betul betul! Anda boleh membina kombinasi penapis menggunakan operator logik seperti ==.!=, ||, &&, dll.
Beberapa contoh penapis paparan satu protokol TCP dan penapis gabungan ditunjukkan di bawah:
Lapisan Rangkaian di Wireshark
Selain pemeriksaan paket, Wireshark menghadirkan lapisan OSI yang membantu dalam proses penyelesaian masalah. Wireshark menunjukkan lapisan dalam urutan terbalik, seperti:
- Lapisan Fizikal
- Lapisan Pautan Data
- Lapisan Rangkaian
- Lapisan Pengangkutan
- Lapisan Aplikasi
Perhatikan bahawa Wireshark tidak selalu menunjukkan lapisan Fizikal. Kami sekarang akan menggali setiap lapisan untuk memahami aspek penting dalam analisis paket, dan apa yang ditunjukkan oleh setiap lapisan di Wireshark.
Lapisan Fizikal
Lapisan Fizikal, seperti yang ditunjukkan dalam gambar berikut, memaparkan ringkasan fizikal bingkai, seperti maklumat perkakasan. Sebagai pentadbir rangkaian, anda biasanya tidak mengekstrak maklumat dari lapisan ini.
Lapisan Pautan Data
Lapisan pautan data seterusnya mengandungi alamat kad rangkaian sumber dan tujuan. Ia agak sederhana kerana hanya menghantar bingkai dari komputer riba ke penghala atau bingkai bersebelahan seterusnya dalam medium fizikal.
Lapisan Rangkaian
Lapisan rangkaian menyajikan alamat IP sumber dan tujuan, versi IP, panjang tajuk, jumlah panjang paket, dan banyak maklumat lain.
Lapisan Pengangkutan
Dalam lapisan ini, Wireshark memaparkan maklumat mengenai lapisan transport, yang terdiri dari port SRC, port DST, panjang header, dan nombor urutan yang berubah untuk setiap paket.
Lapisan Aplikasi
Pada lapisan terakhir, anda dapat melihat jenis data apa yang dikirim melalui media dan aplikasi mana yang digunakan, seperti FTP, HTTP, SSH, dll.
Analisis Lalu Lintas
Analisis Trafik ICMP
ICMP digunakan untuk pelaporan ralat dan pengujian dengan menentukan apakah data mencapai tujuan yang ditentukan tepat pada waktunya atau tidak. Utiliti Ping menggunakan mesej ICMP untuk menguji kelajuan sambungan antara peranti, dan melaporkan berapa lama paket perlu sampai ke destinasinya kemudian kembali.
Ping menggunakan mesej ICMP_echo_request ke peranti di rangkaian, dan peranti bertindak balas dengan mesej ICMP_echo_reply. Untuk menangkap paket di Wireshark, mulailah fungsi Capture Wireshark, buka terminal, dan jalankan arahan berikut:
ubuntu $ ubuntu: ~ $ ping google.comGunakan Ctrl + C untuk menghentikan proses penangkapan paket di Wireshark. Dalam petikan di bawah, anda dapat melihatnya Paket ICMP dihantar = Paket ICMP diterima dengan kehilangan paket 0%.
Di panel tangkapan Wireshark, pilih paket ICMP_echo_request pertama dan perhatikan perinciannya dengan membuka panel Wireshark tengah.
Dalam Lapisan Rangkaian, anda dapat melihat sumbernya Src sebagai alamat ip_ saya, sedangkan tujuannya Dst ip_address adalah pelayan Google, sedangkan lapisan IP menyebutkan protokol untuk menjadi ICMP.
Sekarang, kita memperbesar butiran paket ICMP dengan mengembangkan Protokol Mesej Kawalan Internet dan menyahkod kotak yang diserlahkan dalam petikan di bawah:
- Jenis: Medan 08-bit ditetapkan ke 8 bermaksud Mesej permintaan Echo
- Kod: sentiasa sifar untuk paket ICMP
- checksum: 0x46c8
- Nombor Pengenalan (BE): 19797
- Nombor Pengenalan (LE): 21837
- Nombor Urutan (BE): 1
- Nombor Urutan (LE): 256
Pengenal dan nombor urutan dipadankan untuk membantu dalam mengenal pasti balasan untuk permintaan gema. Begitu juga, sebelum penghantaran paket, checksum dihitung dan ditambahkan ke lapangan untuk dibandingkan dengan checksum dalam paket data yang diterima.
Sekarang, dalam paket balasan ICMP, perhatikan lapisan IPv4. Alamat sumber dan destinasi telah bertukar.
Dalam lapisan ICMP, sahkan dan bandingkan bidang penting berikut:
- Jenis: Medan 08-bit ditetapkan ke 0 bermaksud Mesej balasan Echo
- Kod: selalu 0 untuk paket ICMP
- checksum: 0x46c8
- Nombor Pengenalan (BE): 19797
- Nombor Pengenalan (LE): 21837
- Nombor Urutan (BE): 1
- Nombor Urutan (LE): 256
Anda dapat melihat bahawa balasan ICMP menggemari permintaan, pengecam, dan nombor urutan permintaan yang sama.
Analisis Trafik HTTP
HTTP adalah protokol lapisan aplikasi Hypertext Transfer. Ini digunakan oleh web seluruh dunia dan menentukan peraturan ketika klien / pelayan HTTP menghantar / menerima perintah HTTP. Kaedah HTTP yang paling biasa digunakan POST dan GET:
POS: kaedah ini digunakan untuk menghantar maklumat rahsia dengan selamat ke pelayan yang tidak terdapat dalam URL.
DAPATKAN: kaedah ini biasanya digunakan untuk mengambil data dari bar alamat dari pelayan web.
Sebelum kita menyelami analisis paket HTTP dengan lebih mendalam, pertama kita akan menunjukkan secara ringkas TCP tiga arah jabat tangan di Wireshark.
TCP Three-Way-Handshake
Dalam jabat tangan tiga arah, klien memulakan sambungan dengan mengirim paket SYN dan menerima respons SYN-ACK dari pelayan, yang diakui oleh pelanggan. Kami akan menggunakan arahan Nmap TCP connect scan untuk menggambarkan jabat tangan TCP antara klien dan pelayan.
ubuntu $ ubuntu: ~ $ nmap -sT google.comDi panel tangkapan paket Wireshark, tatal ke bahagian atas tetingkap untuk melihat pelbagai jabat tangan tiga arah yang dibuat berdasarkan port tertentu.
Menggunakan tcp.pelabuhan == 80 tapis untuk melihat sama ada sambungan dibuat melalui port 80. Anda dapat melihat jabat tangan tiga arah yang lengkap, i.e., SYN, SYN-ACK, dan TERIMA KASIH, diserlahkan di bahagian atas gambar, menggambarkan hubungan yang boleh dipercayai.
Analisis Paket HTTP
Untuk analisis paket HTTP, pergi ke penyemak imbas anda dan tampal URL dokumentasi Wireshark: http: // www.pembuat wafel.com dan muat turun PDF panduan pengguna. Sementara itu, Wireshark mesti menangkap semua paket.
Gunakan penapis HTTP dan cari HTTP DAPATKAN permintaan dihantar ke pelayan oleh pelanggan. Untuk melihat paket HTTP, pilih, dan luaskan lapisan aplikasi di panel tengah. Terdapat banyak tajuk dalam permintaan, bergantung pada laman web dan penyemak imbas juga. Kami akan menganalisis tajuk yang terdapat dalam permintaan kami dalam gambar di bawah.
- Kaedah Permintaan: kaedah permintaan HTTP adalah GET
- Tuan rumah: mengenal pasti nama pelayan
- Ejen Pengguna: memaklumkan mengenai jenis penyemak imbas sisi pelanggan
- Terima, Terima-Pengekodan, Terima bahasa: memberitahu pelayan mengenai jenis fail, pengekodan yang diterima di sisi pelanggan, i.e., gzip, dll., dan bahasa yang diterima
- Kawalan Cache: menunjukkan bagaimana maklumat yang diminta disimpan dalam cache
- Pragma: menunjukkan nama dan nilai kuki penyemak imbas untuk laman web
- Sambungan: header yang mengawal sama ada sambungan tetap terbuka selepas transaksi
Di dalam HTTP OK paket dari pelayan ke klien, memerhatikan maklumat dalam lapisan Hypertext Transfer Protocol menunjukkan "200 OK". Maklumat ini menunjukkan pemindahan berjaya yang normal. Dalam paket HTTP OK, anda dapat melihat tajuk yang berbeza berbanding dengan HTTP DAPATKAN sebungkus. Tajuk ini mengandungi maklumat mengenai kandungan yang diminta.
- Versi Respons: memaklumkan mengenai versi HTTP
- Kod Status, Frasa Respons: dihantar oleh pelayan
- Tarikh: masa ketika pelayan menerima paket HTTP GET
- Pelayan: butiran pelayan (Nginx, Apache, dll.)
- Jenis kandungan: jenis kandungan (json, txt / html, dll.)
- Panjang kandungan: panjang keseluruhan kandungan; fail kami ialah 39696 bait
Di bahagian ini, anda telah belajar bagaimana HTTP berfungsi dan apa yang berlaku setiap kali kami meminta kandungan di web.
Kesimpulannya
Wireshark adalah alat carian dan analisis rangkaian yang paling popular dan kuat. Ia digunakan secara meluas dalam tugas analisis paket sehari-hari di pelbagai organisasi dan institusi. Dalam artikel ini, kami telah mengkaji beberapa topik peringkat awal hingga sederhana Wireshark di Ubuntu. Kami telah mengetahui jenis penapis yang ditawarkan oleh Wireshark untuk analisis paket. Kami telah membahas model lapisan jaringan di Wireshark dan melakukan analisis paket ICMP dan HTTP secara mendalam.
Walau bagaimanapun, belajar dan memahami pelbagai aspek alat ini adalah perjalanan yang sukar. Oleh itu, terdapat banyak kuliah dan tutorial dalam talian yang lain untuk membantu anda mengenai topik-topik tertentu di Wireshark. Anda boleh mengikuti panduan pengguna rasmi yang terdapat di laman web Wireshark. Lebih-lebih lagi, setelah anda membina pemahaman asas mengenai analisis protokol, anda juga disarankan untuk menggunakan alat seperti Varonis yang menunjukkan kemungkinan ancaman dan kemudian menggunakan Wireshark untuk menyiasat untuk memahami.