Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
BinProxy — BinProxy ist ein Proxy für beliebige TCP-Verbindungen. Sie können benutzerdefinierte Nachrichtenformate mit dem BinData-Gem definieren. | Kitploit
Tools/GitHubGitHub/nccgroup/binproxy
Paket-Sniffing & AnalyseWeb-Proxys & AbfangenNetzwerksicherheitPenetrationstests
GitHubnccgroup/binproxy

BinProxy

BinProxy ist ein Proxy für beliebige TCP-Verbindungen. Sie können benutzerdefinierte Nachrichtenformate mit dem BinData-Gem definieren.

Repository anzeigen
17644vor 8 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

Übersicht

BinProxy ist ein Proxy für beliebige TCP-Verbindungen. Sie können benutzerdefinierte Nachrichtenformate mit dem BinData Gem definieren.

Installation

Voraussetzungen

  • Ruby 2.3 oder neuer
  • Ein C‑Compiler, Ruby‑Header usw. werden benötigt, um mehrere Abhängigkeiten zu kompilieren.
    • Unter Ubuntu sollte sudo apt install build-essential ruby-dev ausreichen.
    • Wenn Sie ein benutzerdefiniertes Ruby installiert haben (z. B. mit RVM), haben Sie wahrscheinlich bereits, was Sie brauchen.
  • openssl‑Binärdatei für --tls ohne explizites Zertifikat/Schlüssel.
  • Zum Erstellen der UI werden node.js und npm benötigt. (Zur Laufzeit nicht erforderlich)

Von Rubygems

root@kitploit:~
gem install binproxy

Je nach Ihrer Ruby‑Installation müssen Sie möglicherweise sudo verwenden.

Aus dem Quellcode

root@kitploit:~
git clone https://github.com/nccgroup/BinProxy.git binproxy
cd binproxy

# Install ruby dependencies.
# Depending on your setup, one or both of these may require sudo.
gem install bundler && bundle

# The UI is built with a webpack/babel toolchain:
(cd ui && npm install) \
  && rake build-ui

# Confirm that everything works
# run.sh sets up the environment and passes all args to binproxy
./run.sh --help

Um das Gem‑Paket zu erstellen und zu installieren:

root@kitploit:~
gem build binproxy.gemspec

# Again, you may need sudo here
gem install binproxy-1.0.0.gem

Fehlerberichte zu Installationsproblemen sind willkommen!

Verwendung

Grundlegende Verwendung

  1. Führen Sie binproxy ohne Argumente aus.
  2. Öffnen Sie http://localhost:4567/
  3. Geben Sie lokale und entfernte Hostnamen oder IP‑Adressen und Ports ein und klicken Sie auf 'update'.
  4. Richten Sie einen Client auf den lokalen Dienst aus und beobachten Sie den Paketfluss.

Kommandozeilenoptionen

Siehe --help für die vollständige Liste, aber kurz gefasst:

root@kitploit:~
binproxy -c <class> [<local-host>] <local-port> <remote-host> <remote-port>

Wenn Sie das -c‑Argument weglassen, wird ein einfacher Hex‑Dump angezeigt.

Wenn Sie den lokalen Host weglassen, nimmt binproxy localhost an.

Mit den Optionen --socks-proxy oder --http-proxy werden der entfernte Host und Port dynamisch bestimmt und sollten nicht angegeben werden.

Beispiele

root@kitploit:~
# Proxy from localhost:9000 -> example.com:9000
binproxy localhost 9000 example.com 9000

# Act as a SOCKS proxy on localhost:1080
# MITM and unwrap TLS on the proxied traffic, using a self-signed cert and key
binproxy -S --tls 1080

# "Poor substitute for Burp" mode:
#
# HTTP proxy; MITM TLS w/ pre-generated cert; simple header parsing
# Note: this will only work on HTTPS traffic, not plain HTTP!
# If you're working with the source repo, you generate the certs with:
#   rake makecert[example.com]
# And then import certs/ca-cert.pem into your browser or OS's trust store.
binproxy -H --tls \
  --tls-cert certs/example.com-cert.pem \
  --tls-key certs/example.com-key.pem \
  --class-name DumbHttp::Message \
  localhost 8080

Anpassung

Standardmäßig verwendet der Proxy die integrierte RawMessage‑Klasse, die Ihnen nur einen Hex‑Dump jeder Nachricht liefert (unter der Annahme einer 1:1-Beziehung zwischen Nachrichten und TCP‑Paketen).

Sie können geparste Protokollinformationen anzeigen, indem Sie eine BinData::Record‑Unterklasse mit dem Befehlszeilenargument --class angeben.

Sie können auch Folgendes in Ihrer Klasse definieren:

root@kitploit:~
def summary
  # return a single-line description of this record
end

# currently supported options are
#   - nil : use default display
#   - "anon" : for structs, show contents directly
#   - "hex" : for numbers, display as 0x1234ABCD
#   - "hexdump" : for strings, display like `hexdump -C`
default_parameter display_as: "..."

# TODO: document state stuff
def self.initial_state
end

def current_state
end

def update_state
end

† Technisch gesehen funktioniert jede Unterklasse von BinData::Base.

Dynamisches Proxying

Standardmäßig leitet BinProxy den gesamten Verkehr an einen statischen vorgelagerten Host und Port weiter. Es kann auch so konfiguriert werden, dass es als SOCKS‑ (v4 oder v4a) oder HTTP‑Proxy mit den Flags --socks-proxy bzw. --http-proxy fungiert.

Hinweis: Derzeit unterstützt der HTTP‑Proxy nur Verbindungen, die mit dem HTTP‑CONNECT‑Verb getunnelt werden; er kann keine rohen HTTP‑GET‑, POST‑ usw. Anfragen proxieren. In der Praxis bedeutet dies, dass HTTPS‑Verkehr funktioniert, aber einfacher HTTP‑Verkehr nicht, es sei denn, der Client unterstützt ein Flag zum Erzwingen des Tunnelns, wie curl -p.

TLS / SSL

Verwenden Sie das Flag --tls, um die TLS‑Verschlüsselung vor der Verarbeitung von Nachrichten zu entfernen. Standardmäßig generiert BinProxy ein selbstsigniertes Zertifikat. Sie können PEM‑Dateien mit einem Zertifikat und Schlüssel mit --tls-cert und --tls-key angeben. (Wenn Sie das Quell‑Repo geklont haben, verwenden Sie rake makecert[example.com], um eine statische CA und ein Zertifikat mit dem entsprechenden Hostnamen zu generieren.)

Bekannte Probleme

  • Die HTTP‑Proxy‑Funktionalität wurde in letzter Minute zusammengestellt und ist nicht besonders robust.

Siehe auch die TODO‑Datei für zufällige Ideen und Wunschliste.

Danksagungen

Die zentrale TCP‑Proxy‑Funktionalität von BinProxy stammt aus einem speziellen Proxy, der von Sean Devlin geschrieben wurde. Rusty Burchfield hat das HTML‑UI für diesen Proxy beigesteuert. Obwohl sich genügend Code geändert hat, dass sie nicht mehr für aktuelle Fehler verantwortlich gemacht werden können, würde BinProxy wahrscheinlich ohne die Arbeit beider nicht existieren.

Tool herunterladen