Izdaja outline-ss-server 1.4, implementacija strežnika proxy Shadowsocks iz projekta Outline

Izdan je bil strežnik proxy outline-ss-server 1.4, ki uporablja protokol Shadowsocks za skrivanje narave prometa, obhod požarnih zidov in sisteme za nadzor paketov. Strežnik razvija projekt Outline, ki dodatno zagotavlja vezavo odjemalskih aplikacij in nadzorni vmesnik, ki omogoča hitro namestitev večuporabniških strežnikov Shadowsocks na osnovi outline-ss-strežnika v javnih oblačnih okoljih ali na lastni opremi, jih upravljate preko spletnega vmesnika in organizirate uporabniški dostop po ključih. Kodo razvija in vzdržuje Jigsaw, oddelek znotraj Googla, ustanovljen za razvoj orodij za izogibanje cenzuri in organiziranje proste izmenjave informacij.

Outline-ss-server je napisan v Go in se distribuira pod licenco Apache 2.0. Kot osnova je uporabljena koda proxy strežnika go-shadowsocks2, ki jo je ustvarila skupnost razvijalcev Shadowsocks. V zadnjem času je bila glavna aktivnost projekta Shadowsocks usmerjena v razvoj novega strežnika v jeziku Rust, implementacija Go pa ni bila posodobljena že več kot leto dni in opazno zaostaja v funkcionalnosti.

Razlike med outline-ss-server in go-shadowsocks2 se zmanjšajo na podporo za povezovanje več uporabnikov prek enih omrežnih vrat, možnost odpiranja več omrežnih vrat za sprejemanje povezav, podporo za vroč ponovni zagon in posodobitve konfiguracije brez prekinitve povezav, vgrajen nadzor in orodja za spreminjanje prometa, ki temeljijo na platformi prometheus .io.

Izdaja outline-ss-server 1.4, implementacija strežnika proxy Shadowsocks iz projekta Outline

Strežnik outline-ss-server dodaja tudi zaščito pred zahtevami sondiranja in napadi ponovitve prometa. Napad z zahtevami za preverjanje je namenjen ugotavljanju prisotnosti proxyja, na primer, napadalec lahko pošlje nize podatkov različnih velikosti na ciljni strežnik Shadowsocks in analizira, koliko podatkov bo strežnik prebral, preden ugotovi napako in prekine povezavo. . Napad s ponovnim predvajanjem temelji na ugrabitvi seje med odjemalcem in strežnikom ter poskusu ponovnega pošiljanja ugrabljenih podatkov, da se ugotovi prisotnost proxyja.

Za zaščito pred napadi prek zahtev za preverjanje strežnik outline-ss-server, ko prispejo napačni podatki, ne prekine povezave in ne prikaže napake, ampak nadaljuje s sprejemanjem informacij in deluje kot nekakšna črna luknja. Za zaščito pred ponovnim predvajanjem se podatki, prejeti od odjemalca, dodatno preverijo glede ponovitev s kontrolnimi vsotami, shranjenimi za zadnjih nekaj tisoč sekvenc rokovanja (največ 40 tisoč, velikost je nastavljena ob zagonu strežnika in porabi 20 bajtov pomnilnika na sekvenco). Za blokiranje ponavljajočih se odgovorov strežnika vsa zaporedja rokovanja strežnika uporabljajo kode za preverjanje pristnosti HMAC z 32-bitnimi oznakami.

Glede stopnje skrivanja prometa je protokol Shadowsocks v izvedbi outline-ss-server blizu vtičnega transporta Obfs4 v anonimnem omrežju Tor. Protokol je bil ustvarjen, da bi zaobšel kitajski sistem cenzuriranja prometa ("veliki kitajski požarni zid") in vam omogoča, da precej učinkovito skrijete promet, posredovan prek drugega strežnika (promet je problematično prepoznati zaradi pritrditve naključnega semena in simulacije neprekinjenega toka).

SOCKS5 se uporablja kot protokol za posredovanje zahtevkov - v lokalnem sistemu se zažene proxy s podporo za SOCKS5, ki tunelira promet do oddaljenega strežnika, s katerega se dejansko izvajajo zahteve. Promet med odjemalcem in strežnikom poteka v šifriranem tunelu (podprto je overjeno šifriranje AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM in AEAD_AES_256_GCM), prikrivanje dejstva, katerega ustvarjanje je primarna naloga Shadowsocks. Podprta je organizacija predorov TCP in UDP ter ustvarjanje poljubnih predorov, ki niso omejeni na SOCKS5, z uporabo vtičnikov, ki so podobni vtičnim transportom v Tor.

Vir: opennet.ru

Dodaj komentar