Besonderheiten der DPI-Einstellung

In diesem Artikel wird nicht die vollständige Einrichtung von DPI behandelt, und der wissenschaftliche Wert des Textes ist minimal. Er beschreibt jedoch eine einfache Methode zur Umgehung von DPI, die von vielen Unternehmen nicht berücksichtigt wurde.

Besonderheiten der DPI-Einstellung

Warnung Nr. 1: Dieser Artikel hat einen Forschungscharakter und ermutigt niemanden, etwas zu unternehmen oder zu verwenden. Die Idee basiert auf persönlichen Erfahrungen, und alle Übereinstimmungen sind zufällig.

Warnung Nr. 2: Der Artikel enthüllt keine Geheimnisse über Atlantis, die Suche nach dem Heiligen Graal und andere Rätsel des Universums. Alle Materialien sind öffentlich zugänglich und könnten bereits auf anderen Plattformen beschrieben worden sein. (Ich habe keine gefunden, für einen Link wäre ich dankbar.)

Für diejenigen, die die Warnungen gelesen haben, beginnen wir.

Was ist DPI?

DPI oder Deep Packet Inspection ist eine Technologie zur Sammlung statistischer Daten, Überprüfung und Filterung von Netzwerkpaketen, die nicht nur die Kopfzeilen der Pakete analysiert, sondern auch den gesamten Inhalt des Traffics auf den Schichten der OSI-Modelle ab der zweiten, was es ermöglicht, Viren zu erkennen und zu blockieren sowie Informationen zu filtern, die nicht den festgelegten Kriterien entsprechen.

Es gibt zwei Arten von DPI-Verbindungen, die beschrieben werden. ValdikSS auf github:

Passives DPI

DPI, der parallel (nicht in den Schnitt) in das Netz des Anbieters eingekoppelt wird, entweder über einen passiven optischen Splitter oder unter Nutzung von Traffic-Mirroring der ausgehenden Benutzerverbindungen. Diese Art der Verbindung beeinflusst die Geschwindigkeit des Netzwerks des Anbieters nicht, selbst wenn die Leistung des DPI unzureichend ist, weshalb sie bei großen Anbietern eingesetzt wird. Technisch gesehen kann DPI mit dieser Art der Verbindung nur Versuche zur Anforderung von verbotenen Inhalten erkennen, aber nicht unterbinden. Um diese Einschränkung zu umgehen und den Zugang zu einer gesperrten Website zu blockieren, sendet der DPI an den Benutzer, der die gesperrte URL anfordert, ein speziell formuliertes HTTP-Paket, das den Benutzer auf die Stoppseite des Anbieters umleitet, als ob die Antwort direkt von der angeforderten Ressource stammt (die IP-Adresse des Absenders und die TCP-Sequenz werden gefälscht). Da der DPI physisch näher am Benutzer positioniert ist als die angeforderte Website, erreicht die gefälschte Antwort das Gerät des Benutzers schneller als die tatsächliche Antwort von der Website.

Aktiver DPI

Aktives DPI – ein DPI, das wie jedes andere Netzwerkgerät auf die gewohnte Weise mit dem Netzwerk des Anbieters verbunden ist. Der Anbieter konfiguriert das Routing so, dass das DPI den Datenverkehr von Nutzern zu blockierten IP-Adressen oder Domains erhält, und das DPI entscheidet dann, ob der Datenverkehr durchgelassen oder blockiert wird. Aktives DPI kann sowohl ausgehenden als auch eingehenden Datenverkehr überprüfen; wenn der Anbieter jedoch das DPI nur zur Blockierung von Websites aus einem Register verwendet, ist es in der Regel so konfiguriert, dass es nur den ausgehenden Datenverkehr prüft.

Die Art der Verbindung beeinflusst nicht nur die Effektivität der Verkehrsblockierung, sondern auch die Belastung des DPIs. Daher ist es möglich, nicht den gesamten Verkehr zu überprüfen, sondern nur einen bestimmten:

„Normales“ DPI

Unter „normalem“ DPI versteht man ein DPI, das einen bestimmten Typ von Datenverkehr nur an den gängigsten Ports für diesen Typ filtert. Zum Beispiel identifiziert und blockiert „normales“ DPI unerlaubten HTTP-Datenverkehr nur am Port 80 und HTTPS-Datenverkehr am Port 443. Dieser Typ von DPI wird keinen unerlaubten Inhalt verfolgen, wenn Sie eine Anfrage mit einer blockierten URL an eine nicht blockierte IP oder an einen nicht standardmäßigen Port senden.

„Vollständiges“ DPI

Im Gegensatz zu „gewöhnlichem“ DPI klassifiziert dieser DPI-Typ den Datenverkehr unabhängig von IP-Adresse und Port. Damit werden blockierte Webseiten nicht geöffnet, selbst wenn Sie einen Proxy-Server auf einem völlig anderen Port und einer nicht blockierten IP-Adresse verwenden.

Verwendung von DPI

Um die Datenübertragungsgeschwindigkeit nicht zu verringern, sollte „gewöhnliches“ passives DPI verwendet werden, das ermöglicht, Ressourcen effektiv zu blockieren. Die Standardkonfiguration sieht folgendermaßen aus:

  • HTTP nur auf Port 80 filtern
  • HTTPS nur auf Port 443
  • BitTorrent nur auf den Ports 6881-6889

Doch die Probleme beginnen, wenn eine Ressource einen anderen Port verwendet, um Nutzer nicht zu verlieren, dann muss jedes Paket überprüft werden. Zum Beispiel:

  • HTTP läuft auf den Ports 80 und 8080
  • HTTPS auf den Ports 443 und 8443
  • BitTorrent auf jedem anderen Bereich

Deshalb muss entweder auf „aktives“ DPI gewechselt werden oder die Blockierung über einen zusätzlichen DNS-Server genutzt werden.

Blockierung über DNS

Eine Möglichkeit, den Zugriff auf eine Ressource zu sperren, besteht darin, die DNS-Anfrage über einen lokalen DNS-Server abzufangen und dem Benutzer anstelle der gewünschten Ressource die IP-Adresse einer „Stub-Website“ zurückzugeben. Dies garantiert jedoch keinen Erfolg, da es möglich ist, die Adressänderung zu verhindern:

Option 1: Bearbeiten der Hosts-Datei (für Desktop)

Die Hosts-Datei ist ein unverzichtbarer Bestandteil jedes Betriebssystems, was es ermöglicht, sie immer zu nutzen. Um auf die Ressource zuzugreifen, muss der Benutzer:

  1. Die IP-Adresse der gewünschten Ressource herausfinden
  2. Die Hosts-Datei (Administratorrechte erforderlich) öffnen, die sich befindet unter:
    • Linux: /etc/hosts
    • Windows: %WinDir%System32driversetchosts
  3. Eine Zeile im Format hinzufügen:
  4. Änderungen speichern

Der Vorteil dieser Methode ist ihre Komplexität und die Anforderung von Administratorrechten.

Option 2: DoH (DNS over HTTPS) oder DoT (DNS over TLS)

Diese Methoden schützen vor der Manipulation von DNS-Anfragen durch Verschlüsselung, werden jedoch nicht von allen Anwendungen unterstützt. Lassen Sie uns die Einfachheit der DoH-Einrichtung für Mozilla Firefox Version 66 aus Benutzersicht betrachten:

  1. Gehen Sie zu about:config in Firefox
  2. Bestätigen Sie, dass der Benutzer das gesamte Risiko übernimmt
  3. Ändert den Wert der Einstellung network.trr.mode durch:
    • 0 — TRR deaktivieren
    • 1 — automatische Auswahl
    • 2 — DoH standardmäßig aktivieren
  4. Einstellung ändern network.trr.uri gewählten DNS-Server
    • Cloudflare DNS: mozilla.cloudflare-dns.com/dns-query
    • Google DNS: dns.google.com/experimental
  5. Einstellung ändern network.trr.boostrapAddress durch:
    • Wenn Cloudflare DNS ausgewählt ist: 1.1.1.1
    • Wenn Google DNS ausgewählt ist: 8.8.8.8
  6. Ändert den Wert der Einstellung network.security.esni.enabled findet man true
  7. Überprüfen Sie die Konfiguration mit dem Cloudflare-Dienst

Obwohl diese Methode komplizierter ist, erfordert sie keine Administratorrechte des Benutzers und es gibt viele andere Methoden zum Schutz von DNS-Anfragen, die in diesem Artikel nicht behandelt werden.

Option 3 (für mobile Geräte):

Verwendung der Cloudflare-App für Android und iOS.

Testen

Um den Zugriff auf Ressourcen zu überprüfen, wurde vorübergehend eine Domain erworben, die in der RF blockiert ist:

Fazit

Ich hoffe, dieser Artikel ist hilfreich und ermutigt nicht nur Administratoren, sich eingehender mit dem Thema zu beschäftigen, sondern vermittelt auch das Verständnis, dass Ressourcen immer auf der Seite des Benutzers stehen sollten und die Suche nach neuen Lösungen ein wesentlicher Bestandteil für sie sein sollte.

Nützliche Links

Zusatz außerhalb des ArtikelsDer Test auf Cloudflare kann im Tele2-Netzwerk nicht durchgeführt werden, und ein korrekt konfiguriertes DPI blockiert den Zugang zur Testumgebung.
P.S. Dies ist bisher der erste Anbieter, der Ressourcen korrekt blockiert.

Quelle: habr.com

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster