Hotwire est une application GTK GUI qui exploite l'infrastructure Wireshark et Tshark pour capturer le trafic et explorer le contenu des fichiers TCPDump, mais affiche les données d'une manière plus ciblée que Wireshark. Hotwire ne prend en charge que quelques protocoles (actuellement PostgreSQL, HTTP et HTTP2), mais pour ces protocoles, il offre un affichage clair et clair du trafic réseau, adapté à chaque protocole spécifique. Hotwire peut ouvrir des fichiers TCPDUmp ou enregistrer le trafic via un fichier FIFO, donc sans nécessiter de privilèges élevés.
La vue principale est divisée en quatre volets; De gauche à droite et de haut en bas:
Prise en charge actuellement Hotwire:
Notez que pour PGSQL, vous pouvez souvent voir "instruction inconnue". Cela peut se produire avec des déclarations préparées, où la déclaration est déclarée une fois puis réutilisée. Si la déclaration n'est pas prise dans l'enregistrement, Hotwire n'a aucun moyen de le récupérer et il doit montrer "une déclaration inconnue". Il peut toujours récupérer les lignes et les paramètres des résultats (sans types ou noms de colonnes).
Il est possible de visualiser le trafic chiffré dans Hotwire, comme avec Wireshark et Tshark, si vous avez les clés de chiffrement. Vous pouvez récupérer les clés de chiffrement à partir du logiciel serveur (par exemple Apache Tomcat) ou du logiciel client (Firefox, Chrome). Pour récupérer les clés de Chrome ou Firefox, lancez-les avec:
SSLKEYLOGFILE=browser_keylog.txt firefox
(ou même avec Google-chrome) Plus d'informations sont disponibles dans le wiki Wireshark.
Hotwire ne permet pas d'ouvrir séparément les fichiers Keylog. Au lieu de cela, vous devez utiliser editcap
pour fusionner les secrets dans le fichier PCAP et ouvrir le fichier combiné avec Hotwire:
editcap --inject-secrets tls,/path/to/keylog.txt ~/testtls.pcap ~/outtls.pcapng
Vous pouvez également enregistrer et observer le trafic réseau en direct dans Hotwire. Pour cela, Hotwire ouvrira un FIFO et écoutera le contenu de PCAP sur ce FIFO. Notez que cela ne fonctionnera pas sur Windows. Ensuite, tcpdump
peut être invoqué pour écrire des données PCAP au FIFO, et Hotwire capture et affichera les données en temps réel. De cette façon, Hotwire peut afficher le trafic en direct sans privilèges élevés.
Lorsque Hotwire est exécuté en tant qu'application native Linux, il peut invoquer pkexec
pour lancer tcpdump
avec des privilèges élevés et tout fonctionne de manière transparente à l'utilisateur. Lorsqu'il s'exécute en tant que FlatPak ou sous OSX par exemple, Hotwire donne à l'utilisateur une ligne de commande tcpdump
pour exécuter avec sudo
.
La façon recommandée d'installer l'application sur Linux est avec FlatPak. Pour d'autres plates-formes, vous devrez construire à partir de Source - en utilisant la chaîne d'outils Rust. Hotwire
nécessite que tshark
soit installé et dans le chemin de fonctionnement correctement, et tcpdump
pour enregistrer le trafic, et sur pkexec
Linux non-FlatPak pour un enregistrement simple.
Pour construire à partir de la source: Installez la rouille et la cargaison, puis exécutez cargo run --release
. Le binaire dans target/release/hotwire
peut être copié n'importe où, car il incorpore des icônes et d'autres dépendances (mais pas des bibliothèques partagées comme GTK). Sur OSX, vous aurez besoin de GTK + 3 et d'adwaita-icon-thème de Homebrew.