Outline-ss-server 1.4, Shadowsocksi puhverserveri juurutamine Outline'i projektist

Välja on antud outline-ss-server 1.4 puhverserver, mis kasutab Shadowsocksi protokolli liikluse olemuse varjamiseks, tulemüüridest möödahiilimiseks ja pakettide kontrollisüsteemide petmiseks. Serverit arendab Outline projekt, mis pakub lisaks kliendirakenduste raamistikku ja juhtimisliidese, mis võimaldab kiiresti juurutada mitme kasutajaga Shadowsocksi servereid, mis põhinevad outline-ss-serveril avalikes pilvekeskkondades või oma seadmetes, hallata neid veebiliidese kaudu ja korraldada kasutajate juurdepääsu võtmete abil. Koodi töötab välja ja haldab Jigsaw, Google'i osakond, mis on loodud tsensuurist kõrvalehoidmise ja vaba teabevahetuse korraldamise tööriistade väljatöötamiseks.

Outline-ss-server on kirjutatud Go-s ja seda levitatakse Apache 2.0 litsentsi all. Aluseks kasutatav kood on Shadowsocksi arendajate kogukonna loodud puhverserver go-shadowsocks2. Viimasel ajal on Shadowsocksi projekti põhitegevus keskendunud uue Rust-keelse serveri arendamisele ning Go-keeles juurutamist pole uuendatud juba üle aasta ning see on funktsionaalsuses tuntavalt maha jäänud.

Erinevused outline-ss-serveri ja go-shadowsocks2 vahel taanduvad toele mitme kasutaja ühendamiseks ühe võrgupordi kaudu, võimaluses avada ühenduste vastuvõtmiseks mitu võrguporti, kuuma taaskäivitamise toes ja konfiguratsioonivärskendustes ilma ühendust katkestamata, sisseehitatud jälgimise ja liikluse muutmise tööriistad, mis põhinevad prometheuse platvormil .io.

Outline-ss-server 1.4, Shadowsocksi puhverserveri juurutamine Outline'i projektist

outline-ss-server lisab kaitset ka uurimistaotluste ja liikluse kordusrünnakute eest. Testpäringute kaudu rünnak on suunatud puhverserveri olemasolu kindlakstegemisele, näiteks saab ründaja saata sihtmärgiks olevale Shadowsocksi serverile erineva suurusega andmekogumeid ja analüüsida, kui palju andmeid server loeb enne vea tuvastamist ja ühenduse sulgemist. Liikluse kordusrünnak põhineb kliendi ja serveri vahelise seansi pealtkuulamisel ja seejärel pealtkuulatud andmete uuesti edastamisel, et teha kindlaks puhverserveri olemasolu.

Testpäringute kaudu rünnete eest kaitsmiseks ei katkesta outline-ss-server valede andmete saabumisel ühendust ega kuva tõrget, vaid jätkab teabe vastuvõtmist, toimides omamoodi musta auguna. Taasesituse eest kaitsmiseks kontrollitakse kliendilt saadud andmeid täiendavalt korduste suhtes, kasutades viimase mitme tuhande käepigistuse jada jaoks salvestatud kontrollsummasid (maksimaalselt 40 tuhat, suurus määratakse serveri käivitumisel ja see kulutab 20 baiti mälu jada kohta). Serveri korduvate vastuste blokeerimiseks kasutavad kõik serveri käepigistuse jadad 32-bitiste siltidega HMAC autentimiskoode.

Liikluse peitmise taseme poolest on Shadowsocksi protokoll outline-ss-serveri juurutamisel lähedane Obfs4 pistikprogrammi transpordile Tor anonüümses võrgus. Protokoll loodi Hiina liiklustsenseerimissüsteemist möödahiilimiseks (“Hiina suur tulemüür”) ja võimaldab üsna tõhusalt varjata teise serveri kaudu edastatavat liiklust (liiklust on keeruline tuvastada juhusliku seemne manuse ja selle simulatsiooni tõttu pidev vool).

SOCKS5 kasutatakse päringute puhverserveri protokollina – kohalikus süsteemis käivitatakse SOCKS5 toega puhverserver, mis tunnelib liikluse kaugserverisse, kust päringuid tegelikult täidetakse. Kliendi ja serveri vaheline liiklus paigutatakse krüpteeritud tunnelisse (autentitud krüptimist toetavad AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM ja AEAD_AES_256_GCM), selle loomise fakti varjamine on Shadowsocksi esmane ülesanne. Toetatakse TCP- ja UDP-tunnelite organiseerimist, aga ka suvaliste tunnelite loomist, mida SOCKS5 ei piira, kasutades pistikprogrammide transportimist Toris meenutavaid pluginaid.

Allikas: opennet.ru

Lisa kommentaar