Veröffentlichung von Outline-SS-Server 1.4, Shadowsocks-Proxy-Implementierung aus dem Outline-Projekt

Der Outline-SS-Server 1.4-Proxyserver wurde veröffentlicht und verwendet das Shadowsocks-Protokoll, um die Art des Datenverkehrs zu verbergen, Firewalls zu umgehen und Paketinspektionssysteme zu täuschen. Der Server wird vom Outline-Projekt entwickelt, das zusätzlich ein Framework für Client-Anwendungen und eine Steuerungsschnittstelle bereitstellt, mit der Sie schnell Mehrbenutzer-Shadowsocks-Server basierend auf Outline-SS-Server in öffentlichen Cloud-Umgebungen oder auf Ihren eigenen Geräten bereitstellen können. Verwalten Sie sie über eine Weboberfläche und organisieren Sie den Benutzerzugriff über Schlüssel. Der Code wird von Jigsaw entwickelt und gepflegt, einer Abteilung innerhalb von Google, die gegründet wurde, um Tools zur Umgehung der Zensur und zur Organisation des freien Informationsaustauschs zu entwickeln.

Outline-ss-server ist in Go geschrieben und wird unter der Apache 2.0-Lizenz vertrieben. Als Basis dient der von der Shadowsocks-Entwickler-Community erstellte Proxy-Server go-shadowsocks2. In letzter Zeit konzentrierte sich die Hauptaktivität des Shadowsocks-Projekts auf die Entwicklung eines neuen Servers in der Sprache Rust, und die Implementierung in der Sprache Go wurde seit mehr als einem Jahr nicht mehr aktualisiert und hinkt in der Funktionalität merklich hinterher.

Die Unterschiede zwischen Outline-SS-Server und Go-Shadowsocks2 bestehen in der integrierten Unterstützung für die Verbindung mehrerer Benutzer über einen Netzwerkport, der Möglichkeit, mehrere Netzwerkports zum Empfangen von Verbindungen zu öffnen, der Unterstützung für Hot-Neustart und Konfigurationsaktualisierungen ohne Verbindungsunterbrechung Überwachungs- und Verkehrsmodifikationstools basierend auf der Prometheus-Plattform .io.

Veröffentlichung von Outline-SS-Server 1.4, Shadowsocks-Proxy-Implementierung aus dem Outline-Projekt

Der Outline-SS-Server bietet außerdem Schutz vor Probe-Request- und Traffic-Replay-Angriffen. Ein Angriff über Testanfragen zielt darauf ab, das Vorhandensein eines Proxys festzustellen; ein Angreifer kann beispielsweise Datensätze unterschiedlicher Größe an den Shadowsocks-Zielserver senden und analysieren, wie viele Daten der Server lesen wird, bevor er einen Fehler erkennt und die Verbindung schließt. Ein Traffic-Replay-Angriff basiert auf dem Abfangen einer Sitzung zwischen einem Client und einem Server und dem anschließenden Versuch, die abgefangenen Daten erneut zu übertragen, um das Vorhandensein eines Proxys festzustellen.

Zum Schutz vor Angriffen durch Testanfragen unterbricht der Outline-SS-Server beim Eintreffen falscher Daten die Verbindung nicht und zeigt keinen Fehler an, sondern empfängt weiterhin Informationen und fungiert so als eine Art Schwarzes Loch. Zum Schutz vor Wiedergabe werden die vom Client empfangenen Daten zusätzlich anhand von Prüfsummen überprüft, die für die letzten mehreren tausend Handshake-Sequenzen gespeichert sind (maximal 40, die Größe wird beim Serverstart festgelegt und verbraucht 20 Byte Speicher pro Sequenz). Um wiederholte Antworten vom Server zu blockieren, verwenden alle Server-Handshake-Sequenzen HMAC-Authentifizierungscodes mit 32-Bit-Tags.

In Bezug auf den Grad des Versteckens des Datenverkehrs ähnelt das Shadowsocks-Protokoll in der Outline-SS-Server-Implementierung dem Obfs4-Plug-in-Transport im anonymen Tor-Netzwerk. Das Protokoll wurde entwickelt, um das Verkehrszensursystem in China („The Great Firewall of China“) zu umgehen und ermöglicht es Ihnen, den über einen anderen Server weitergeleiteten Datenverkehr recht effektiv zu verbergen (der Datenverkehr ist aufgrund der Anbringung eines zufälligen Startwerts und der Simulation von Datenverkehr schwer zu identifizieren ein kontinuierlicher Fluss).

SOCKS5 wird als Protokoll für Proxy-Anfragen verwendet – auf dem lokalen System wird ein Proxy mit SOCKS5-Unterstützung gestartet, der den Datenverkehr zu einem Remote-Server tunnelt, von dem aus die Anfragen tatsächlich ausgeführt werden. Der Datenverkehr zwischen dem Client und dem Server wird in einem verschlüsselten Tunnel platziert (authentifizierte Verschlüsselung wird unterstützt: AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM und AEAD_AES_256_GCM). Die Hauptaufgabe von Shadowsocks besteht darin, die Tatsache seiner Entstehung zu verbergen. Unterstützt wird die Organisation von TCP- und UDP-Tunneln sowie die Erstellung beliebiger Tunnel, die nicht durch SOCKS5 eingeschränkt sind, durch die Verwendung von Plugins, die an Plug-in-Transporte in Tor erinnern.

Source: opennet.ru

Kommentar hinzufügen