Az outline-ss-server 1.4 kiadása, a Shadowsocks proxy megvalósítása az Outline projektből

Megjelent az outline-ss-server 1.4 proxyszerver, amely a Shadowsocks protokollt használja a forgalom természetének elrejtésére, a tűzfalak megkerülésére és a csomagvizsgáló rendszerek megtévesztésére. A szervert az Outline projekt fejleszti, amely emellett kliens alkalmazások keretrendszerét és vezérlőfelületét is biztosítja, amely lehetővé teszi az outline-ss-szerveren alapuló többfelhasználós Shadowsocks szerverek gyors üzembe helyezését nyilvános felhőkörnyezetekben vagy saját berendezésein, webes felületen keresztül kezelheti őket, és kulcsokkal szervezheti meg a felhasználói hozzáférést. A kódot a Jigsaw fejleszti és tartja karban, a Google azon részlege, amely a cenzúra megkerülésére és a szabad információcsere megszervezésére szolgáló eszközök fejlesztésére jött létre.

Az Outline-ss-server Go nyelven íródott, és az Apache 2.0 licenc alatt kerül terjesztésre. A proxy kódon alapul.szerver A Shadowsocks fejlesztői közösség által létrehozott go-shadowsocks2. A Shadowsocks projekt fő tevékenysége az utóbbi időben egy új Rust szerver fejlesztésére összpontosult, miközben a Go implementáció több mint egy éve nem frissült, és funkcionalitásban is észrevehetően lemarad.

Az outline-ss-server és a go-shadowsocks2 közötti különbség abban rejlik, hogy támogatja több felhasználó egyetlen hálózati porton keresztül történő összekapcsolását, több hálózati port megnyitásának lehetőségét a kapcsolatok fogadásához, a gyors újraindítás támogatásában és a konfigurációs frissítésekben a kapcsolatok megszakítása nélkül, beépített a prometheus .io platformon alapuló figyelő és forgalommódosító eszközök.

 Az outline-ss-server 1.4 kiadása, a Shadowsocks proxy megvalósítása az Outline projektből

Az Outline-ss-server védelmet nyújt a próbakérések küldésével és a forgalom visszajátszásával járó támadások ellen is. A próbakérések támadása egy proxy jelenlétének észlelésére irányul. Például egy támadó különböző méretű adathalmazokat küldhet egy célzott Shadowsocks szerverre, és elemezheti, hogy a szerver mennyi adatot olvas be, mielőtt hibát észlelne és lezárná a kapcsolatot. A forgalom visszajátszási támadása a kliens és a szerver közötti munkamenet eltérítésén alapul. szerver majd egy kísérlet az elfogott adatok újraküldésére a proxy jelenlétének megállapítása érdekében.

A tesztkéréseken keresztüli támadások elleni védelem érdekében az outline-ss-server szerver hibás adatok érkezésekor nem szakítja meg a kapcsolatot és nem jelenít meg hibát, hanem egyfajta fekete lyukként működik tovább az információk fogadásában. A visszajátszás elleni védelem érdekében a klienstől kapott adatok ismétlődésének ellenőrzése is megtörténik az utolsó több ezer kézfogási sorozathoz tárolt ellenőrzőösszegekkel (maximum 40 ezer, a méret a szerver indulásakor kerül beállításra, és sorozatonként 20 bájt memóriát fogyaszt). A szervertől érkező ismétlődő válaszok blokkolása érdekében az összes szerver kézfogási sorozata 32 bites címkékkel ellátott HMAC hitelesítési kódokat használ.

A forgalom elrejtésének szintjét tekintve a Shadowsocks protokoll az outline-ss-server implementációban közel áll az Obfs4 plug-in szállításához a Tor névtelen hálózatban. A protokollt úgy hozták létre, hogy megkerülje a kínai forgalom cenzúrázó rendszert („Kína nagy tűzfala”), és lehetővé teszi a másik szerveren keresztül továbbított forgalom elég hatékony elrejtését (a forgalmat nehéz azonosítani a véletlen mag csatolása és a szimuláció miatt). folyamatos áramlás).

A SOCKS5-öt protokollként használják a proxy kérésekhez - a helyi rendszeren elindul egy SOCKS5 támogatással rendelkező proxy, amely a forgalmat egy távoli kiszolgálóhoz irányítja, amelyről a kérések ténylegesen végrehajtásra kerülnek. A kliens és a szerver közötti forgalom egy titkosított alagútba kerül (a hitelesített titkosítás támogatott AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM és AEAD_AES_256_GCM), létrejöttének elrejtése a Shadowsocks elsődleges feladata. A TCP- és UDP-alagutak szervezése támogatott, valamint tetszőleges alagutak létrehozása, amelyeket a SOCKS5 nem korlátoz, a Tor-ban lévő plug-in-transzportokra emlékeztető bővítmények használatával.

Forrás: opennet.ru

Hozzászólás