Hotwire es una aplicación GTK GUI que aprovecha la infraestructura de Wireshark y Tshark para capturar el tráfico y explorar el contenido de los archivos TCPDUMP, pero muestra los datos de una manera más enfocada que Wireshark. Hotwire admite solo unos pocos protocolos (actualmente PostgreSQL, HTTP y HTTP2), pero para estos protocolos ofrece una visualización clara de alto nivel del tráfico de red, adaptada para cada protocolo específico. Hotwire puede abrir archivos TCPDump o registrar el tráfico a través de un archivo FIFO, por lo tanto, sin requerir privilegios elevados.
La vista principal se divide en cuatro paneles; de izquierda a derecha y de arriba a abajo:
Actualmente Hotwire Supports:
Tenga en cuenta que para PGSQL a menudo puede ver "declaración desconocida". Esto puede suceder con las declaraciones preparadas, donde la declaración se declara una y luego reutilizada. Si la declaración no está atrapada en la grabación, Hotwire no tiene forma de recuperarla y debe mostrar "declaración desconocida". Todavía puede recuperar las filas y parámetros de resultados (aunque sin tipos o nombres de columna).
Es posible ver el tráfico cifrado en Hotwire, lo mismo que con Wireshark y Tshark, si tiene las claves de cifrado. Puede recuperar las claves de cifrado del software del servidor (por ejemplo, Apache Tomcat) o el software del cliente (Firefox, Chrome). Para recuperar las llaves de Chrome o Firefox, lanzarlas con:
SSLKEYLOGFILE=browser_keylog.txt firefox
(o lo mismo con Google-Chrome) Más información está disponible en la wiki de Wireshark.
Hotwire no permite abrir archivos de keylog por separado. En su lugar, debe usar editcap
para fusionar los secretos en el archivo PCAP y abrir el archivo combinado con HotWire:
editcap --inject-secrets tls,/path/to/keylog.txt ~/testtls.pcap ~/outtls.pcapng
También puede grabar y observar el tráfico de red en vivo en Hotwire. Para eso, Hotwire abrirá un FIFO y escuchará el contenido de PCAP en ese FIFO. Tenga en cuenta que esto no funcionará en Windows. Luego, tcpdump
se puede invocar para escribir datos de PCAP al FIFO, y Hotwire capturará y mostrará los datos en tiempo real. De esa manera, Hotwire puede mostrar tráfico en vivo sin privilegios elevados.
Cuando Hotwire se ejecuta como una aplicación nativa de Linux, puede invocar pkexec
para iniciar tcpdump
con privilegios elevados y todo funciona de manera transparente para el usuario. Cuando se ejecuta como un plano o en OSX, por ejemplo, Hotwire le da al usuario una línea de comandos tcpdump
para ejecutar con sudo
.
La forma recomendada de instalar la aplicación en Linux es con Flatpak. Para otras plataformas, tendrá que construir desde la fuente, utilizando la cadena de herramientas de Rust. Hotwire
requiere que se instale tshark
y en la ruta para operar correctamente, y tcpdump
para grabar el tráfico, y en pkexec
sin flatpak Linux para una grabación simple.
Para construir desde la fuente: instale el óxido y la carga, luego ejecute cargo run --release
. El binario en target/release/hotwire
se puede copiar en cualquier lugar, ya que incorpora iconos y otras dependencias (pero no bibliotecas compartidas como GTK). En OSX, necesitará gtk+3 y adwaita-icon-theme de Homebrew.