
Кроссплатформенный HTTP-сниффер с веб-интерфейсом
Netgraph — это инструмент для перехвата пакетов, который захватывает все HTTP-запросы и ответы и отображает их на веб-странице.

Вы можете запустить Netgraph на своём linux-сервере без установленного графического окружения и отслеживать HTTP-запросы и ответы в браузере на своём ноутбуке.
1. go get github.com/ga0/netgraph
2. запустите $GOPATH/bin/netgraph -i INTERFACE -p PORT
3. откройте веб-страницу netgraph в браузере (например: http://localhost:9000, 9000 — это PORT, заданный на шаге 2)
Пользователям Windows сначала необходимо установить библиотеку winpcap.
-bpf string
Задать фильтр пакетов Berkeley (по умолчанию "tcp port 80")
-i string
Прослушивать интерфейс; если интерфейс не указан, выбирается автоматически
-input-pcap string
Открыть файл pcap
-o string
Записывать HTTP-запросы и ответы в файл; задайте значение "stdout" для вывода в консоль
-output-pcap string
Записывать захваченные пакеты в файл pcap
-output-request-only
Записывать в файл только HTTP-запросы, отбрасывая ответы. Используется только при наличии параметра "-o". (по умолчанию true)
-p int
Порт веб-сервера. Если порт равен '0', сервер не запускается. (по умолчанию 9000)
-s Сохранять HTTP-события на сервере
-v Показывать подробные сообщения (по умолчанию true)
Пример: вывод захваченных запросов в 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)