SSTP in SSL 3.0: oznaka proti dogovorjeni različici
Oznaka SSL ne dokazuje seje SSL 3.0. Primerjajte navedeni protokol s tistim, o katerem se storitev v resnici dogovarja, nato umaknite staro različico.
Dve osebi lahko gledata isto namestitev SSTP in prideta do nasprotnih sklepov. Eden bere dokumentacijo izdelka, vidi črke SSL in domneva, da tunel izvaja protokol, ki je bil umaknjen pred leti. Drugi pokaže na sodobno rokovanje in zaključi, da je vprašanje zaprto. Oba se prepirata o oznakah in ne o dogovorjeni različici, in samo eno od tega je dokaz. Primerjava, ki se je vredno lotiti, je med tem, kar obljublja ime, in tem, kar storitev v resnici izbere.
Dva odgovora na isto vprašanje
Argument oznake je lahko oblikovati: SSTP je opisan kot varen protokol tuneliranja prek vtičnic, zgodovinsko ime pravi SSL, zato mora biti povezava SSL 3.0. Drži se, ker ime res izhaja iz te linije in ker večina tistih, ki to ponavljajo, nikoli ni pogledala rokovanja. Drži se tudi zato, ker sklep zveni previdno, kot da bi bilo domnevanje najhujšega varna izbira. Domnevati najhujše in meriti dejansko različico sta dve različni dejavnosti in samo ena od njiju kaj spremeni.
Argument dokaza postavlja ožje vprašanje. O kateri različici protokola sta se ta odjemalec in ta strežnik dogovorila na tej končni točki, v tem trenutku? Odgovor prihaja od storitve, ki zaključi TLS, ne z marketinške strani ali iz brskalnika, ki je dosegel podobno imenovano spletno mesto.
Argumenta se razlikujeta v tem, kaj lahko dokažeta. Oznaka ne more ločiti stare namestitve od popravljene, rokovanje pa ne more povedati, kaj počne nepovezana storitev na istem gostitelju. Uporabite drugega in prenehajte uporabljati prvega.
Preberite različico, ki jo storitev v resnici izbere
Začnite z poimenovanjem komponent: odjemalska izvedba, strežniška izvedba, končna točka TLS in vse vmes, kar zaključi in znova vzpostavi TLS. Uravnavalnik obremenitve, ki zaključi TLS in z zaledjem govori navaden HTTP, spremeni, katero politiko naprave morate brati.
openssl s_client -connect vpn.example.com:443 -servername vpn.example.com </dev/null> | grep -E 'Protocol|Cipher' Get-WinEvent -LogName System -ProviderName Schannel -MaxEvents 20
Zapišite končno točko in čas ob rezultatu, ker poznejša sprememba politike naredi nedatirano opažanje neuporabno. Preizkus ponovite z odjemalca na isti omrežni poti kot uporabniki, ki so vam pomembni, saj lahko prestrezna naprava zaključi TLS s svojimi nastavitvami. Če se stališči ne ujemata, ste našli komponento, ki je pomembna. Če se ujemata, imate dokaz in ne slogan.
Ločite polje zapisa od pogajanj
Staromodna številka različice v enem polju ni isto dejstvo kot seja SSL 3.0. RFC 7568 obravnava različico zapisovnega sloja in dogovorjeni protokol kot ločeni vprašanji, in prav iz tega razlikovanja izhajajo samozavestni napačni odgovori. Preberite dogovorjeni protokol, nato šifro in šele nato sklepajte o seji.
Isti dokument je glede samega protokola nedvoumen: SSL 3.0 se ne sme uporabljati, pogajanja o njem ali vračanje nanj pa so prepovedana. Razlog je zlomljena zgradba CBC, ki jo je izrabil napad POODLE, in to je lastnost protokola, ne konfiguracija ene aplikacije.
Zato „to obremenitev je verjetno težko izrabiti“ ni argument za ohranitev vklopljenega SSL 3.0. Zahteva je odstraniti protokol, ne zmagati v razpravi o eni sami predstavitvi.
Umaknite SSL 3.0 s politiko, ki jo lahko zagovarjate
V sistemu Windows so nastavitve protokola Schannel pod ključem Protocols in se berejo ločeno za odjemalsko in strežniško vlogo, zato lahko sprememba, ki popravi eno smer, drugo pusti nedotaknjeno. Trenutne nastavitve in njihove zahteve po ponovnem zagonu dokumentira Microsoft, knjižnica TLS tretje strani na istem gostitelju pa jih povsem prezre.
Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' Get-ChildItem 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols'
Spremenite politiko po podprti poti upravljanja, potrdite, da lastniška storitev znova pridobi konfiguracijo, in ohranite odobreno pot nazaj. Lepljenje širokega skripta registra iz drugega okolja je način, kako popravek ene storitve postane izpad za vsakega odjemalca TLS na stroju. Obseg ponovnega zagona je tu pomemben: nastavitev, ki je videti uporabljena, lahko še vedno ostane v pomnilniku storitve, ki je ni znova naložila.
Partner, ki še vedno zahteva zastarelo različico, potrebuje posodobitev ali načrt selitve. Nedokumentirana izjema, ki tiho obnovi stari protokol, ni strategija združljivosti in ne bo prestala naslednje revizije.
Sprejmite spremembo z novimi povezavami
Po spremembi politike preizkusite z novimi sejami, ker povezava, vzpostavljena pred spremembo, ničesar ne dokazuje o konfiguraciji, ki zdaj velja. Potrdite, da dovoljeni protokol uspe in da prepovedani spodleti v pooblaščenem postopku preverjanja, nato pa pustite identiteto potrdila in preverjanja zaupanja natanko takšna, kot so bila.
Ne pozabite, česa rokovanje ne pokriva. SSTP po plasti TLS prenaša preverjanje pristnosti PPP, zato sodobna različica protokola ne pove ničesar o tem, kateri uporabnik je bil pooblaščen ali do katerih virov lahko seja dostopa. To so ločene kontrole z ločenimi dokazi.
Rezultat zapišite kot storitev, zaledje, dovoljeno politiko in opaženo različico. Tak zapis natančno odgovori na varnostno vprašanje, česar ne argument oznake ne argument o neprijetnosti nikoli ne storita.