L-encryption tat-tunnel WSS tieqaf fit-terminatur TLS, mhux fl-app
URL wss:// tipprova TLS fuq hop wieħed. Jekk il-payload għandux encryption tiegħu jiddependi minn dak li l-klijent iqiegħed ġewwa u min itemm dak it-TLS.
Tunnel li jinġarr ġewwa WebSocket sigur għandu eżattament daqshekk encryption kemm qiegħed il-klijent fih, mhux aktar. L-iskema wss:// tgħid li TLS jipproteġi konnessjoni waħda fuq hop wieħed. Ma tgħid xejn dwar jekk il-bytes ġewwa l-messaġġi WebSocket humiex protetti b'mod separat, u din id-distinzjoni jiddeċiedi min jista' jaqra t-traffiku tiegħek meta xi ħaġa fin-nofs itemm it-TLS.
Żewġ saffi li jidhru bħallikieku wieħed
WebSocket sigur huwa TLS b'sħandshake WebSocket magħmul fuqu, kif RFC 6455 jiddeskrivi fit-taqsimiet tiegħu dwar il-konnessjoni u s-sigurtà. Is-saff TLS jawtentika s-server u jencryptja l-fluss, imbagħad is-saff WebSocket jagħmel frame ta' dak li l-applikazzjoni tiddeċiedi li tibgħat.
Dawn huma żewġ deċiżjonijiet indipendenti, u dijagramma li tpinġi katnazz wieħed fuq il-mogħdija kollha taħbi t-tieni. Staqsi min itemm il-konnessjoni TLS. Imbagħad staqsi x'iqiegħed il-klijent ġewwa kull messaġġ. Kull ħaġa oħra dwar l-iskjerament tiġi minn dawn iż-żewġ tweġibiet.
Disinn A: it-trasport huwa l-uniku encryption
Fid-disinn aktar sempliċi, il-klijent jieħu pakketti IP mhux ipproċessati u jgeżwirthom f'messaġġi WebSocket. Xejn ġewwa mhu encrypted, allura l-komponent li jżomm is-sessjoni TLS jaqra payloads ta' test ċar. Meta dak il-komponent huwa s-server tat-tunnel tiegħek stess, dan huwa l-punt aħħari maħsub u d-disinn huwa koerenti, għax is-server kien se jara t-traffiku xorta.
Isir arranġament ieħor meta proxy tal-ispezzjoni joqgħod fil-mogħdija u jtemm it-TLS b'ċertifikat li l-klijent jafdah. Dak il-proxy issa għandu l-istess test ċar li kien ikollu s-server, u l-ebda ammont ta' framing WebSocket ma jbiddel dan. Il-maħżen tal-fiduċja tal-klijent iddeċieda dan ir-riżultat ħafna qabel ma nfetah it-tunnel, għax għażel li jaċċetta dak iċ-ċertifikat għal dak l-isem. Il-proxy jara wkoll il-host mitlub u d-daqs ta' kull messaġġ, li biżżejjed biex jieħu marka tas-swaba' ta' ħafna attività mingħajr ma jiddekriptja xejn aktar.
Disinn B: il-payload iġorr il-keys tiegħu stess
Fit-tieni disinn, il-klijent jencryptja u jawtentika l-pakketti tiegħu bi protokoll VPN li għandu l-identità tal-peer u l-iskambju tal-keys tiegħu stess, imbagħad iġorr ir-riżultat ġewwa messaġġi WebSocket. It-temm tat-TLS ta' barra hawn jesponi test encrypted, mhux traffiku. Il-proxy jista' jara d-daqsijiet u l-ħin tal-messaġġi, u xejn ieħor fil-payload. Din hija espożizzjoni ħafna iżgħar, u xorta hija metadata li jixraq tissejjaħ f'reviżjoni minflok ma titwarrar.
Il-punti aħħarija tal-protokoll ta' ġewwa xorta jaraw test ċar, li huwa l-punt tal-arranġament u wkoll il-limitu tiegħu. Jekk komponent fil-punt aħħari huwa awtorizzat jaqra data qabel l-encryption jew wara d-dekriptaġġ, is-saff żejjed ma jillimitahx. Il-keys, u s-software li jittrattahom, jibqgħu l-konfini li jgħodd.
Tikketta VPN, ikona tal-klijent familjari jew paġna tal-marketing mhumiex prova li dan id-disinn jeżisti. Il-qari tal-format tal-payload hija l-prova.
Ittraċċa fejn fil-fatt jidher it-test ċar
L-iskema tal-URL tagħtik fatt wieħed, allura ġib il-bqija mill-interfaces. Mexxi l-kontrolli hawn taħt fl-ordni, għax kull wieħed jissikka li jmiss:
ss -tnp | grep -E ':(443|8443)\b' ip -br link show type tun openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -brief tcpdump -ni tun0 -c 5 -X
Ibda bil-konnessjoni ta' barra. Sessjoni TCP waħda ta' ħajja twila lejn il-port TLS hija kif jidher trasportatur WebSocket, u t-tieni sessjoni lejn host mhux relatat jixraqlha spjegazzjoni qabel ma tħares aktar fil-fond. Imbagħad sib l-interface tat-tunnel fuq il-klijent, għax apparat tun jew tap jgħidlek li l-klijent qed jittratta pakketti IP minflok ma jipproxja fluss wieħed tal-applikazzjoni.
Il-qabda fuq l-interface tat-tunnel normalment issolvi l-kwistjoni tal-payload. Headers li jinqraw hemmhekk ifissru li l-pakketti ta' ġewwa qatt ma ġew encrypted separatament, filwaqt li payloads b'entropija għolja ifissru li ġew. Errepeti l-qabda fuq l-interface ta' barra u qabbel it-tnejn: jekk it-tnejn jidhru każwali, is-saff ta' ġewwa qed jagħmel xogħol li s-saff ta' barra ma jistax iħassar.
Irrevedi l-fiduċja li tassew tajt
Ċertifikat tal-għerq korporattiv installat huwa fatt dwar il-maħżen tal-fiduċja tal-klijent, mhux dikjarazzjoni dwar x'jirrekordja jew jispezzjona xi proxy. Stabbilixxi l-politika skjerata u l-mogħdija reali tal-konnessjoni minflok ma tiddeduċi mġiba mill-preżenza ta' CA.
Fuq tagħmir ġestit, staqsi lill-amministratur liema komponent itemm it-TLS, jekk il-klijent jivvalida ċertifikat ippinnjat jew wieħed pubbliku, u x'inhu l-format tal-payload. Dawk it-tliet tweġibiet jipproduċu sejba li tista' tiddefendi aktar tard.
Ikteb ir-riżultat bħala konfini mhux bħala verdett. "It-TLS jintemm fil-proxy tal-ispezzjoni, u l-payload ta' ġewwa huwa encrypted separatament b'keys li għandhom biss il-punti aħħarija" hija dikjarazzjoni verifikabbli li tibqa' teżisti meta jinbidel il-fornitur. "WebSockets huma siguri" le.