Come posso sapere quale processo sta generando il traffico SYN su localhost?

4

In Wireshark, nell'interfaccia di loopback, posso vedere le richieste SYN da localhost alle porte chiuse su localhost a cui viene risposto con RST, ACKS.

Sono curioso di sapere cosa sta generando il traffico. Come posso scoprirlo?

Non posso usare netstat perché le connessioni non sono mantenute aperte. lsof -i :[port-range] non mostra alcun risultato.

    
posta Qgenerator 15.11.2016 - 01:28
fonte

2 risposte

2

Il problema con strumenti come netstat , ss e lsof è che funzionano su istantanee dello stato della rete. Le connessioni che vengono ripristinate durante l'installazione non verranno visualizzate con un'alta probabilità.

Mentre Wireshark può catturare i pacchetti TCP, non sarà in grado di comunicare l'ID del processo che ne è responsabile. Questa informazione non è fornita in una normale acquisizione Ethernet. C'è un meccanismo diverso ( NFLOG ) che può registrare i pacchetti come visto da Netfilter (iptables), ma questo può contenere al massimo l'ID utente del processo che ha generato un pacchetto.

Un approccio per affrontare il problema è lo stallo o il dropping del traffico di rete.

  1. Usando Wireshark, potresti ad esempio determinare che l'intervallo di porte è compreso tra 5037-5585.
  2. Aggiungi una nuova regola del firewall che interrompe il traffico TCP appena avviato all'interfaccia di loopback per tale intervallo di porte:

    sudo iptables -I INPUT -p tcp -i lo --dport 5037:5585 --syn -j DROP
    
  3. Ora puoi usare netstat, ss, ecc. per trovare il programma incriminato. Ad esempio:

    sudo ss -tapn | grep '5[0-5]'
    
  4. Al termine, rimuovi la regola del firewall in modo tale che possano verificarsi nuove connessioni:

    sudo iptables -D INPUT -p tcp -i lo --dport 5037:5585 --syn -j DROP
    

Ho usato questo approccio per identificare che il daemon ADB stava cercando di connettersi tutto il tempo ad alcune porte locali, presumibilmente per localizzare un simulatore Android.

    
risposta data 15.11.2016 - 10:06
fonte
0

Se sei su Windows puoi usare gli strumenti procmon e TCPview per monitorare quali processi si connettono a quali destinazioni:

link link

Su Linux, la stessa funzionalità può essere ottenuta usando:

ps e netstat , e chiudendo il firewall e registrando i pacchetti scartati con iptables e guardando le connessioni con multitail

    
risposta data 15.11.2016 - 02:19
fonte

Leggi altre domande sui tag