
Uno sniffer HTTP multipiattaforma con interfaccia web
Netgraph è uno strumento di sniffing dei pacchetti che cattura tutte le richieste/risposte HTTP e le visualizza in una pagina web.

Puoi eseguire Netgraph sul tuo server Linux senza ambiente desktop installato e monitorare le richieste/risposte HTTP nel browser del tuo laptop.
1. go get github.com/ga0/netgraph
2. esegui $GOPATH/bin/netgraph -i INTERFACE -p PORT
3. apri la pagina web di netgraph nel tuo browser (ad esempio: http://localhost:9000, 9000 è la PORT impostata al passo 2)
Gli utenti Windows devono prima installare la libreria winpcap.
-bpf string
Imposta il filtro di pacchetti berkeley (predefinito "tcp port 80")
-i string
Ascolta sull'interfaccia, ne seleziona una automaticamente se non viene fornita alcuna interfaccia
-input-pcap string
Apre un file pcap
-o string
Scrive le richieste/risposte HTTP su file, imposta il valore "stdout" per stampare sulla console
-output-pcap string
Scrive i pacchetti catturati in un file pcap
-output-request-only
Scrive solo le richieste HTTP su file, scarta le risposte. Usato solo quando è presente l'opzione "-o". (predefinito true)
-p int
Porta del server web. Se la porta è impostata a '0', il server non verrà eseguito. (predefinito 9000)
-s Salva l'evento HTTP nel server
-v Mostra messaggi dettagliati (predefinito true)
Esempio: stampa le richieste catturate su stdout:
$ ./netgraph -i en0 -o=stdout
2018/07/26 10:33:24 open live on device "en0", bpf "tcp port 80"
[2018-07-26 10:33:34.873] #0 Request 192.168.1.50:60448->93.184.216.34:80
GET / HTTP/1.1
Host: www.example.com
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7
content(0)