Proxyserveren outline-ss-server 1.4 er blevet udgivet og bruger protokollen Shadowsocks at skjule trafikmønstre, omgå firewalls og bedrage pakkeinspektionssystemer. Serveren udvikles af Outline-projektet, som desuden leverer et framework af klientapplikationer og en administrationsgrænseflade, der muliggør hurtig implementering af flerbrugersystemer. Shadowsocks-servere baseret på outline-ss-server i offentlige cloud-miljøer eller on-premise hardware, administrere dem via en webgrænseflade og organisere brugeradgang ved hjælp af 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 fremme fri udveksling af information.
Outline-ss-server er skrevet i Go og distribueret under Apache 2.0-licensen. Den er baseret på proxykoden.server go-shadowsocks2, skabt af udviklerfællesskabet ShadowsocksFor nylig har projektets hovedaktivitet Shadowsocks fokuserer på at udvikle en ny server i Rust-sproget, mens Go-implementeringen ikke er blevet opdateret i over et år og halter mærkbart bagud 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.

Outline-ss-server tilføjer også beskyttelse mod angreb, der involverer afsendelse af verifikationsanmodninger og afspilning af trafik. Et verifikationsanmodningsangreb har til formål at detektere tilstedeværelsen af en proxy; for eksempel kan en angriber sende en anmodning til målet. Shadowsocks-serverdatasæt af varierende størrelser og analyserer, hvor meget data serveren vil læse, før den registrerer en fejl og lukker forbindelsen. Et trafikgentagelsesangreb er baseret på kapring af sessionen mellem klienten og server efterfulgt af et forsøg på at sende de opfangede data igen 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.
Efter niveauet af trafikskjulningsprotokol Shadowsocks I sin implementering ligner outline-ss-server den pluggbare Obfs4-transport i Tor-anonymitetsnetværket. Protokollen blev oprettet for at omgå Kinas Great Firewall og muliggør en forholdsvis effektiv tilsløring af trafik, der dirigeres gennem en anden server (trafikken er vanskelig at identificere takket være inkluderingen af et tilfældigt seed og simuleringen af et kontinuerligt flow).
SOCKS5 bruges som proxyprotokol for anmodninger. En SOCKS5-aktiveret proxy startes på det lokale system, som tunnelerer trafik til den eksterne server, hvorfra anmodningerne rent faktisk udføres. Trafik mellem klienten og serveren placeres i en krypteret tunnel (AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM og AEAD_AES_256_GCM-godkendt kryptering understøttes), hvilket er det primære mål at skjule det faktum, at tunnelen oprettes. ShadowsocksTCP- og UDP-tunneling understøttes, såvel som oprettelsen af brugerdefinerede tunneler, ikke begrænset til SOCKS5, ved hjælp af plugins svarende til Tors pluggbare transporter.
Kilde: opennet.ru
