Schneller und kleiner C++ https-Proxy

Schneller und kleiner C++ https-Proxy

Ich suche nach einem kleinen, schnellen und zuverlässigen https-Proxy, den ich um Folgendes erweitern kann:

  1. Suchen Sie nach https-Handshake-Anfragen.
  2. Führen Sie einen regulären Ausdruck für den angeforderten Hostnamen aus.
  3. Wenn der Ausdruck mit dem Hostnamen übereinstimmt, senden Sie die Anfrage nicht weiter, sondern antworten Sie mit einer 302-Weiterleitung zu einer anderen Site.

Ich denke, ich habe dazu folgende Fragen:

  1. Ist das möglich? (Ich bin ziemlich sicher, dass die Handshake-Anforderung nicht verschlüsselt ist. Ich weiß, dass ich ein Mustervergleich durchführen kann. Die eigentliche Frage ist: Könnte ich dem Client eine gefälschte 302-Weiterleitung senden, ohne dass dieser sich beschwert, dass der Handshake nicht abgeschlossen wurde?)

  2. Wenn es möglich ist, gibt es eine Linux-App, die einige oder alle dieser Funktionen bietet? (Ich habe Folgendes gefunden:http://www.kubat.nl/pages/microproxy) Ich habe überlegt, die verbleibenden Funktionen darin einzubauen, wollte das aber nicht versuchen, wenn dies bereits bei etwas anderem möglich ist.

  3. Haben Sie Vorschläge für andere C++-Linux-Proxys, in die ich dies möglicherweise einbauen könnte?

Vielen Dank im Voraus für Ihr Feedback.

EV

Antwort1

3: Haben Sie Vorschläge für andere C++-Linux-Proxys, in die ich dies möglicherweise einbauen könnte?

Tintenfischist ein schneller Open Source-Proxy, den Sie nach Herzenslust erweitern können

Antwort2

Dies ist auch nicht möglich, es sei denn, Sie meinen mit "URL" "Hostname". DieServernamenanzeigeErweiterung ermöglicht es dem Client, den Hostnamen anzugeben, mit dem er eine Verbindung herstellen möchte. Viele Browser verwenden jetztSNI unterstützen. Die vollständige URL wird jedoch erst nach Abschluss des Handshakes übermittelt.

Sie können also den Unterschied zwischen https://www.example.com/und erkennen https://other.example.com/, aber nicht zwischen https://www.example.com/oneund https://www.example.com/another.

Wenn Sie genau erklären würden, warum Sie meinen, dass dies getan werden muss, könnte vielleicht jemand eine Lösung vorschlagen.

verwandte Informationen