Threat Model

Risiken öffentlicher Proxy-Server und wie man mit ihnen lebt

3 min read Published Updated 510 words

Behandeln Sie jeden kostenlosen Proxy als nicht vertrauenswürdige Infrastruktur, denn das ist er. Der Betreiber ist anonym, das Finanzierungsmodell ist unklar, und derselbe Socket kann innerhalb einer Woche durch ein Botnet, einen kompromittierten Heimrouter und ein Honeypot eines Forschers rotieren. Nichts davon macht kostenlose Proxys unbrauchbar – es macht eine kleine Reihe von Gewohnheiten nicht verhandelbar.

Die üblichen Angriffe

Die Bedrohungen sind nicht dramatisch. Sie sind die langweilige Art, die erfolgreich sind, weil die meisten Benutzer sich nicht die Mühe machen, sich dagegen zu verteidigen.

Diebstahl von Anmeldedaten über unverschlüsseltes HTTP. Wenn Sie sich über http:// durch einen unbekannten Proxy bei irgendetwas anmelden, sieht der Betreiber das Passwort. Tunneln Sie TLS immer durch CONNECT oder verwenden Sie SOCKS zu einem Ziel, das selbst HTTPS erzwingt. Moderne Anmeldeabläufe sind auf den großen Seiten ausschließlich HTTPS, aber Legacy-Intranets, IoT-Adminseiten und alte CMS-Installationen sind es nicht.

Header- und Content-Injection. Ein feindlicher HTTP-Proxy kann beliebige Teile Ihrer Anfrage umschreiben: Cookies ändern, Referrer austauschen, Tracking-Parameter einfügen oder Cache-Header entfernen. Derselbe Proxy kann Inhalte in Antworten injizieren – Skripte in HTML, Weiterleitungen in JSON, Anzeigen in statische Seiten. Wenn Sie serverseitige Antworten durch den Proxy lesen, behandeln Sie sie als kompromittiert, bis Sie die Integrität über einen vertrauenswürdigen Pfad überprüfen können.

DNS-Entführung über SOCKS5. SOCKS5 kann Hostnamen auf dem Proxy auflösen. Wenn der Proxy über einen DNS-Eintrag lügt, verbinden Sie sich mit einem Server, den der Betreiber kontrolliert. Stellen Sie Ihren Client so ein, dass er nach Möglichkeit lokal auflöst: curl --resolve example.com:443:93.184.216.34, oder übergeben Sie im Code eine IP anstelle eines Hostnamens.

Protokollierung des Datenverkehrs. Selbst ein gut gemeinter Proxy protokolliert möglicherweise jede von Ihnen abgerufene URL. Für Bedrohungsmodelle, die die Frage „Welche URLs hat diese Person angefordert?“ umfassen, ist jeder öffentliche Proxy das falsche Werkzeug. Verwenden Sie Tor oder ein kostenpflichtiges VPN mit einer veröffentlichten No-Log-Richtlinie und einer nachgewiesenen Erfolgsbilanz bei angefochtenen Vorladungen.

Ressourcenerschöpfung auf Client-Seite. Einige Proxys drosseln absichtlich Verbindungen auf ein Schneckentempo, geben sehr große Antworten zurück oder halten Sockets offen, ohne Daten zu senden. Legen Sie auf Client-Seite strenge Grenzen für Antwortgrößen und Verbindungs-Timeouts fest.

Abwehrmaßnahmen, in der Reihenfolge der Priorität

Senden Sie alles innerhalb von TLS über CONNECT oder über SOCKS an ein HTTPS-Ziel. Verwenden Sie niemals Anmeldedaten hinter einem öffentlichen Proxy, die Sie auch anderswo wiederverwenden würden. Validieren Sie Zertifikate streng – das Pinnen des Ausstellers ist für den gelegentlichen Gebrauch übertrieben, aber jede Kette zu akzeptieren ist leichtsinnig. Setzen Sie kurze Timeouts für Connect und Read. Protokollieren Sie Proxy-Antworten für forensische Analysen, wenn die Arbeitslast wichtig ist. Wechseln Sie häufig; ein Proxy, der vor five Minuten funktioniert hat, ist jetzt nicht unbedingt derselbe Proxy.

Wofür kostenlose Proxys tatsächlich gut sind

Drei Arbeitskategorien rechtfertigen den Aufwand. Testen geografischer Inhaltsvarianten: Liefert Ihr CDN die richtige Seite von Frankfurt im Vergleich zu São Paulo? Scraping öffentlicher, nicht authentifizierter Daten: Suchergebnisse, öffentliche APIs ohne Ratenbegrenzung pro IP, bereits anderswo indizierte Inhalte. Überprüfen, ob Ihre Anwendung sich korrekt verhält, wenn ihre ausgehende IP dem Ziel unbekannt ist – nützlich für QA bei Systemen mit IP-basierten Betrugsheuristiken.

Nutzen Sie sie dafür. Akzeptieren Sie die Ausfallrate. Setzen Sie nichts, dessen Verlust Ihnen etwas ausmachen würde, dahinter.