Uzak makinenin trafiğini wireshark ile nasıl koklayabilirim?


38

Yerel bilgisayarımın trafiğini koklayabilirim ama uzaktaki bir makinenin trafiğini wireshark ile nasıl koklayacağımı bilmek isterim?

Yakalama seçeneğinde uzak arayüzü seçip uzak ipime girip bana error.code (10061) göster. Ne yapmalıyım?


5
Yalnızca ağ arayüzünüzün gördüğü trafiği koklayabilirsiniz. Şebeke değiştirilirse, paketler uzak makineye gönderilmez. BTW: kabul oranınızı iyileştirmeye çalışın.
Matteo,

Yanıtlar:


54

Linux ve OSX'te bunu ssh üzerinde tcpdump kullanarak ve wireshark'ın boruyu dinlemesini sağlayabilirsiniz.

  1. Adlandırılmış bir boru oluşturun:

    $ mkfifo /tmp/remote

  2. Wireshark'ı komut satırından başlatın

    $ wireshark -k -i /tmp/remote

  3. Uzak makinenizde tcpdump komutunu ssh üzerinden çalıştırın ve paketleri belirtilen boruya yönlendirin:

    $ ssh root@firewall "tcpdump -s 0 -U -n -w - -i eth0 not port 22" > /tmp/remote

Kaynak: http://blog.nielshorn.net/2010/02/using-wireshark-with-remote-capturing/


Yönlendirici üzerindeki yönlendiriciden geçen paketleri bu şekilde yakalamak mümkün mü, yoksa bu imkansız bir şey mi?
inf3rno

Bu harika. Benim 2c: [ssh root] 'a izin vermek genellikle tavsiye edilmez, ancak / etc / ssh / sshd_config içindeki [Match User] satırına root ekleyerek geçici olarak açabilirsiniz.
moodboom

Bu benim için çalışmıyor, ssh root@{MY_VPS_IP} -p 27922 "tcpdump -s 0 -U -n -w - -i eth0 not port 27922" > /tmp/remotenedenini söyleyebilir misiniz?
Phoenix,

@ Yönlendirici tcpdump'ı doğrudan çalıştırabilirse, o zaman evet mümkün olmalıdır. Mine tcpdump'ı kuracak yer değil. Düşük uçlu yönlendiriciler için nadir değildir.
07:18 '

21

Bu oneliner'ı root olarak kullanıyorum. Çok kullanışlı!

ssh root@sniff_server_ip -p port tcpdump -U -s0 'not port 22' -i eth0 -w - | wireshark -k -i -

-De son önce |bu çıktının yönlendirilmesi ve wireshark tarafından standart girdi olarak kullanılır. -kWireshark araçlarında seçeneği "koklama inmidiately başlamak


Şimdiye kadar gördüğüm en iyi ilk cevap.
sjas,

10

Bir yaklaşım, anahtarınızdaki ayna veya yayılma noktası adı verilen şeyi kullanmaktır . Anahtarınız yeterince akıllı değilse, anahtar / ana bilgisayardan yakala bağlantısına arasına küçük bir hub da yerleştirebilirsiniz. Dinleme sunucunuzdan bu bağlantı noktasına / hub'a fiziksel bir bağlantı bağlarsınız ve ardından cihazı geçen tüm trafiği görebilirsiniz. Alternatif olarak, paket yakalama yazılımınızı ağınızdaki bir sınır güvenlik duvarı / yönlendiricisi gibi daha stratejik bir yere kurmanız gerekir.


Bu şekilde çözülebilecek az ya da çok ilginç bir sorunum var. Cevap verebilir misin serverfault.com/questions/855245/catch-tcp-packets-with-router
inf3rno

4

Paketlere bağlanmak ve bunları almak için sshyerel olarak wireshark'a yönlendirmek için bir dosya tanıtıcısı kullanabilirsiniz :

wireshark -i <(ssh root@firewall tcpdump -s 0 -U -n -w - -i eth0 not port 22)

Wireshark açılacak ve size /dev/fd/63uzaktaki sistemden veri içeren dosya tanımlayıcısı olan "Arabirimi" gösterecektir .



1

RHEL'e göre, konrad'ın cevabı benim için işe yaramadı çünkü tcpdumpkök gerektiriyor ve sadece sudo erişimine sahibim. Yaptığım şey, okuyabildiğim fazladan bir uzaktan kumanda oluşturmaktı:

remote:~$ mkfifo pcap
remote:~$ sudo tcpdump -s 0 -U -n -w - -i eth0 not port 22 > pcap

ve verileri ayrı bir bağlantı ile gönderin:

local:~$ mkfifo pcap
local:~$ ssh user@host "cat pcap" > pcap

ve sonunda Wireshark'ı başlat

local:~$ wireshark -k -i pcap

0

Yalnızca size yapan trafiği koklayabilirsiniz. Joe A Joe B'ye giderken asla PC'nize yaklaşmaz, dolayısıyla onu göremezsiniz.

Trafiğe girmeniz veya trafiği size ulaşmanızın tek yolu budur. Trafiğe ulaşmak için, bağlantısının ortasında bir yerde bir yönlendirici veya iyi bir anahtar veya hub bağlantısı gerekir. Trafiği size ulaştırmak için, ARP'nin anahtarlardan bazılarını zehirlemesini sağlamanız gerekir.


0

Önceki cevaplara ek olarak, netcat'lı sürüm ncde yararlı olabilir:

Uzak ana bilgisayar:

mkfifo /tmp/mypcap.fifo

tcpdump -i em0 -s 0 -U -w - > /tmp/mypcap.fifo

nc -l 10000 < /tmp/mypcap.fifo

Yerel ev sahibi:

wireshark -ki <(nc 192.168.1.1 10000)

Bu yönteme dikkat edin: Güvenli olmayan bir bağlantı noktasını tüm arabirimlere açık yapar, bu nedenle gelen bağlantıların güvenlik duvarı kuralları ile filtrelendiğinden emin olun.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.