Udgivelse af outline-ss-server 1.4, Shadowsocks proxy-implementering fra Outline-projektet

Outline-ss-server 1.4-proxyserveren er blevet frigivet, ved hjælp af Shadowsocks-protokollen til at skjule trafikarten, omgå firewalls og bedrage pakkeinspektionssystemer. Serveren udvikles af Outline-projektet, som desuden giver en ramme af klientapplikationer og en kontrolgrænseflade, der giver dig mulighed for hurtigt at implementere multi-user Shadowsocks-servere baseret på outline-ss-server i offentlige cloud-miljøer eller på dit eget udstyr, administrere dem via en webgrænseflade og organisere brugeradgang med nøgler. Koden er udviklet og vedligeholdt af Jigsaw, en afdeling inden for Google, der er oprettet for at udvikle værktøjer til at omgå censur og organisere den frie udveksling af information.

Outline-ss-server er skrevet i Go og distribueret under Apache 2.0-licensen. Koden, der bruges som grundlag, er proxyserveren go-shadowsocks2, skabt af Shadowsocks udviklerfællesskab. På det seneste har Shadowsocks-projektets hovedaktivitet været fokuseret på udviklingen af ​​en ny server i Rust-sproget, og implementeringen i Go-sproget er ikke blevet opdateret i mere end et år og halter mærkbart bagefter i funktionalitet.

Forskellene mellem outline-ss-server og go-shadowsocks2 kommer ned til understøttelse af tilslutning af flere brugere gennem én netværksport, muligheden for at åbne flere netværksporte for at modtage forbindelser, understøttelse af hot genstart og konfigurationsopdateringer uden at afbryde forbindelser, indbygget overvågnings- og trafikændringsværktøjer baseret på prometheus-platformen .io.

Udgivelse af outline-ss-server 1.4, Shadowsocks proxy-implementering fra Outline-projektet

outline-ss-server tilføjer også beskyttelse mod probeanmodninger og trafikgentagelsesangreb. Et angreb gennem testanmodninger er rettet mod at bestemme tilstedeværelsen af ​​en proxy; for eksempel kan en angriber sende datasæt af forskellige størrelser til målet Shadowsocks-serveren og analysere, hvor meget data serveren vil læse, før den opdager en fejl og lukker forbindelsen. Et trafikgenafspilningsangreb er baseret på at opsnappe en session mellem en klient og en server og derefter forsøge at gentransmittere de opsnappede data for at bestemme tilstedeværelsen af ​​en proxy.

For at beskytte mod angreb gennem testanmodninger afbryder outline-ss-server-serveren, når der kommer forkerte data, ikke forbindelsen og viser ikke en fejl, men fortsætter med at modtage information, der fungerer som en slags sort hul. For at beskytte mod genafspilning kontrolleres data modtaget fra klienten desuden for gentagelser ved hjælp af kontrolsummer gemt for de sidste flere tusinde håndtryksekvenser (maksimalt 40 tusind, størrelsen indstilles, når serveren starter og bruger 20 bytes hukommelse pr. sekvens). For at blokere gentagne svar fra serveren bruger alle server-handshake-sekvenser HMAC-godkendelseskoder med 32-bit tags.

Med hensyn til niveauet af trafikskjul er Shadowsocks-protokollen i outline-ss-server-implementeringen tæt på Obfs4 plug-in-transporten i Tor anonyme netværk. Protokollen blev oprettet for at omgå trafikcensursystemet i Kina ("The Great Firewall of China") og giver dig mulighed for ganske effektivt at skjule trafik videresendt gennem en anden server (trafik er vanskelig at identificere på grund af vedhæftning af et tilfældigt frø og simulering af et kontinuerligt flow).

SOCKS5 bruges som en protokol til proxy-forespørgsler - en proxy med SOCKS5-understøttelse lanceres på det lokale system, som tunnelerer trafik til en ekstern server, hvorfra anmodningerne rent faktisk udføres. Trafik mellem klienten og serveren placeres i en krypteret tunnel (godkendt kryptering understøttes AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM og AEAD_AES_256_GCM), at skjule det faktum, at det er oprettet, er Shadowsocks primære opgave. Organiseringen af ​​TCP- og UDP-tunneler understøttes, såvel som oprettelsen af ​​vilkårlige tunneler, der ikke er begrænset af SOCKS5, gennem brug af plugins, der minder om plug-in-transporter i Tor.

Kilde: opennet.ru

Tilføj en kommentar