Saya menulis aplikasi server sederhana di C yang berjalan di localhost. Bagaimana cara menangkap lalu lintas localhost menggunakan Wireshark?
Saya menulis aplikasi server sederhana di C yang berjalan di localhost. Bagaimana cara menangkap lalu lintas localhost menggunakan Wireshark?
Jawaban:
Jika Anda menggunakan Windows, itu tidak memungkinkan - baca di bawah. Anda dapat menggunakan alamat lokal mesin Anda dan kemudian Anda akan dapat menangkap barang. Lihat CaptureSetup / Loopback .
Ringkasan: Anda dapat menangkap antarmuka loopback di Linux, di berbagai BSD termasuk Mac OS X, dan di Digital / Tru64 UNIX, dan Anda mungkin dapat melakukannya di Irix dan AIX, tetapi Anda pasti tidak dapat melakukannya di Solaris, HP -UX ... .
Meskipun halaman menyebutkan bahwa ini tidak mungkin dilakukan di Windows hanya menggunakan Wireshark, Anda sebenarnya dapat merekamnya menggunakan solusi seperti yang disebutkan dalam jawaban berbeda .
EDIT: Sekitar 3 tahun kemudian, jawaban ini tidak lagi sepenuhnya benar. Halaman tertaut berisi instruksi untuk menangkap pada antarmuka loopback .
Untuk beberapa alasan, tidak ada jawaban sebelumnya yang berhasil dalam kasus saya, jadi saya akan memposting sesuatu yang berhasil. Ada permata kecil bernama RawCap yang dapat menangkap lalu lintas localhost di Windows. Keuntungan:
Setelah lalu lintas ditangkap, Anda dapat membukanya dan memeriksa di Wireshark secara normal. Satu-satunya kelemahan yang saya temukan adalah Anda tidak dapat mengatur filter, yaitu Anda harus menangkap semua lalu lintas localhost yang bisa jadi berat. Ada juga satu bug terkait Windows XP SP 3.
Beberapa saran lagi:
Pada platform Windows, Anda juga dapat menangkap lalu lintas localhost menggunakan Wireshark. Yang perlu Anda lakukan adalah menginstal adaptor loopback Microsoft , dan kemudian mengendusnya.
Saya belum benar-benar mencoba ini, tetapi jawaban dari web ini terdengar menjanjikan:
Wireshark tidak dapat benar-benar menangkap paket lokal di windows XP karena sifat tumpukan TCP windows. Ketika paket dikirim dan diterima pada mesin yang sama, mereka tampaknya tidak melewati batas jaringan yang dipantau oleh wireshark.
Namun ada cara untuk mengatasinya, Anda dapat merutekan lalu lintas lokal keluar melalui gateway jaringan (router) Anda dengan menyiapkan rute statis (sementara) di mesin windows XP Anda.
Katakanlah alamat IP XP Anda adalah 192.168.0.2 dan alamat gateway (router) Anda adalah 192.168.0.1, Anda dapat menjalankan perintah berikut dari baris perintah windows XP untuk memaksa semua lalu lintas lokal keluar dan kembali melintasi batas jaringan, sehingga wireshark kemudian dapat melacak data (perhatikan bahwa wireshark akan melaporkan paket dua kali dalam skenario ini, sekali ketika mereka meninggalkan pc Anda dan sekali ketika mereka kembali).
route add 192.168.0.2 mask 255.255.255.255 192.168.0.1 metric 1
http://forums.whirlpool.net.au/archive/1037087 , baru saja diakses.
Silakan coba Npcap: https://github.com/nmap/npcap , ini didasarkan pada WinPcap dan mendukung pengambilan lalu lintas loopback pada Windows. Npcap adalah subproyek dari Nmap ( http://nmap.org/ ), jadi harap laporkan masalah apa pun pada daftar pengembangan Nmap ( http://seclists.org/nmap-dev/ ).
Starting from Windows Vista: Npcap is an update of WinPcap using NDIS 6 Light-Weight Filter (LWF), done by Yang Luo for Nmap project during Google Summer of Code 2013 and 2015. Npcap has added many features compared to the legacy WinPcap.
Anda dapat melihat lalu lintas loopback langsung di Wireshark dengan membuatnya membaca output RawCap secara instan. cmaynard menjelaskan pendekatan cerdik ini di forum Wireshark . Saya akan mengutipnya di sini:
[...] jika Anda ingin melihat lalu lintas langsung di Wireshark, Anda masih dapat melakukannya dengan menjalankan RawCap dari satu baris perintah dan menjalankan Wireshark dari baris lain. Dengan asumsi Anda memiliki ekor cygwin yang tersedia, ini dapat dilakukan dengan menggunakan sesuatu seperti ini:
cmd1: RawCap.exe -f 127.0.0.1 dumpfile.pcap
cmd2: tail -c +0 -f dumpfile.pcap | Wireshark.exe -k -i -
Ini membutuhkan ekor cygwin, dan saya tidak dapat menemukan cara untuk melakukan ini dengan alat Windows out-of-the-box. Pendekatannya bekerja sangat baik bagi saya dan memungkinkan saya menggunakan semua kemampuan filter Wiresharks pada lalu lintas loopback yang ditangkap secara langsung.
stdout
. Jadi untuk hari ini, solusi yang diberikan di atas dapat disederhanakan sebagai berikut, tanpa tail
perlu: RawCap.exe -q 127.0.0.1 - | Wireshark.exe -i - -k
Anda dapat membaca lebih lanjut tentang fitur RawCap baru di halaman pengumuman RawCap Redux di sini: netresec.com/?page=Blog&month=2020-01&post=RawCap -Redux
Untuk Windows ,
Anda tidak dapat menangkap paket untuk Local Loopback di Wireshark. Namun, Anda dapat menggunakan program yang sangat kecil namun berguna yang disebut RawCap ;
Jalankan RawCap pada command prompt dan pilih Loopback Pseudo-Interface (127.0.0.1) lalu tulis saja nama file packet capture ( .pcap )
Demo sederhana seperti di bawah ini;
C:\Users\Levent\Desktop\rawcap>rawcap
Interfaces:
0. 169.254.125.51 Local Area Connection* 12 Wireless80211
1. 192.168.2.254 Wi-Fi Wireless80211
2. 169.254.214.165 Ethernet Ethernet
3. 192.168.56.1 VirtualBox Host-Only Network Ethernet
4. 127.0.0.1 Loopback Pseudo-Interface 1 Loopback
Select interface to sniff [default '0']: 4
Output path or filename [default 'dumpfile.pcap']: test.pcap
Sniffing IP : 127.0.0.1
File : test.pcap
Packets : 48^C
Anda tidak dapat menangkap loopback di Solaris, HP-UX, atau Windows, namun Anda dapat dengan mudah mengatasi batasan ini dengan menggunakan alat seperti RawCap .
RawCap dapat menangkap paket mentah di semua ip termasuk 127.0.0.1
(localhost / loopback). Rawcap juga dapat menghasilkan pcap
file. Anda dapat membuka dan menganalisis pcap
file dengan Wireshark .
Lihat di sini untuk detail lengkap tentang cara memantau localhost menggunakan RawCap dan Wireshark.