Divi cilvēki var apskatīt vienu un to pašu SSTP izvietojumu un nonākt pie pretējiem secinājumiem. Viens lasa produkta dokumentāciju, ierauga burtus SSL un pieņem, ka tunelis izmanto pirms gadiem izņemtu protokolu. Otrs norāda uz mūsdienīgu rokasspiedienu un pasaka, ka jautājums ir slēgts. Abi strīdas par etiķetēm, nevis par sarunāto versiju, un tikai viens no tiem ir pierādījums. Salīdzinājums, ko ir vērts veikt, ir starp to, ko sola nosaukums, un to, ko pakalpojums patiešām izvēlas.

Divas atbildes uz vienu jautājumu

Etiķetes argumentu ir viegli formulēt: SSTP tiek aprakstīts kā drošs ligzdu tuneļa protokols, vēsturiskais nosaukums saka SSL, tāpēc savienojumam jābūt SSL 3.0. Tas pastāv tāpēc, ka nosaukums patiešām nāk no šīs līnijas, un tāpēc, ka lielākā daļa to atkārtojošo nekad nav apskatījuši rokasspiedienu. Tas pastāv arī tāpēc, ka secinājums izklausās piesardzīgs, it kā sliktākā pieņemšana būtu drošā izvēle. Sliktākā pieņemšana un faktiskās versijas mērīšana ir divas dažādas nodarbes, un tikai viena no tām kaut ko maina.

Pierādījuma arguments uzdod šaurāku jautājumu. Par kuru protokola versiju šis klients un šis serveris vienojās šajā galapunktā, šajā laikā? Atbilde nāk no pakalpojuma, kas pārtrauc TLS, nevis no mārketinga lapas vai pārlūka, kas nonāca līdzīgi nosauktā vietnē.

Šie divi argumenti atšķiras ar to, ko tie spēj pierādīt. Etiķete nevar atšķirt vecu izvietojumu no labota, un rokasspiediens nevar pateikt, ko dara nesaistīts pakalpojums tajā pašā resursdatorā. Izmantojiet otro un pārtrauciet izmantot pirmo.

Lasiet versiju, ko pakalpojums patiešām izvēlas

Sāciet ar komponentu nosaukšanu: klienta ieviešana, servera ieviešana, TLS galapunkts un viss starp tiem, kas pārtrauc un no jauna izveido TLS. Slodzes līdzsvarotājs, kas pārtrauc TLS un ar aizmuguri runā vienkāršu HTTP, maina to, kuras ierīces politika jums jālasa.

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

Ierakstiet galapunktu un laiku blakus rezultātam, jo vēlāka politikas maiņa padara bez datuma novērojumu nevērtīgu. Atkārtojiet pārbaudi no klienta tajā pašā tīkla ceļā kā jums svarīgie lietotāji, jo pārtveršanas ierīce var pārtraukt TLS ar saviem iestatījumiem. Ja abas pozīcijas nesakrīt, jūs atradāt komponentu, kam ir nozīme. Ja tās sakrīt, jums ir pierādījums, nevis sauklis.

Atdaliet ieraksta lauku no sarunām

Vecmodīgi izskatošs versijas numurs vienā laukā nav tas pats fakts kā SSL 3.0 sesija. RFC 7568 ierakstu slāņa versiju un sarunāto protokolu uzskata par atsevišķiem jautājumiem, un tieši no šīs atšķirības rodas pārliecinātas nepareizas atbildes. Izlasiet sarunāto protokolu, pēc tam šifru un tikai tad izdariet secinājumu par sesiju.

Tas pats dokuments ir viennozīmīgs par pašu protokolu: SSL 3.0 nedrīkst izmantot, un sarunas par to vai atkāpšanās uz to ir aizliegtas. Iemesls ir salauztā CBC konstrukcija, ko izmantoja POODLE uzbrukums, un tā ir protokola īpašība, nevis vienas lietotnes konfigurācija.

Tāpēc „šo slodzi droši vien ir grūti izmantot“ nav arguments atstāt SSL 3.0 ieslēgtu. Prasība ir noņemt protokolu, nevis uzvarēt strīdu par vienu demonstrējumu.

Izņemiet SSL 3.0 no aprites ar politiku, ko varat pamatot

Windows Schannel protokola iestatījumi atrodas zem Protocols atslēgas un tiek lasīti atsevišķi klienta un servera lomai, tāpēc vienu virzienu labojoša izmaiņa var atstāt otru neskartu. Pašreizējos iestatījumus un to restartēšanas prasības ir dokumentējusi Microsoft, un trešās puses TLS bibliotēka tajā pašā resursdatorā tos pilnībā ignorē.

Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server'
Get-ChildItem 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols'

Mainiet politiku atbalstītajā administrēšanas ceļā, apstipriniet, ka īpašnieks pakalpojums no jauna iegūst konfigurāciju, un saglabājiet apstiprinātu atgriešanās ceļu. Plaša reģistra skripta ielīmēšana no citas vides ir veids, kā viena pakalpojuma labojums kļūst par pārtraukumu ikvienam mašīnas TLS klientam. Restartēšanas apjoms šeit ir svarīgs: iestatījums, kas izskatās piemērots, var joprojām atrasties tā pakalpojuma atmiņā, kas to nav pārlādējis.

Partnerim, kas joprojām pieprasa novecojušu versiju, nepieciešams atjauninājums vai migrācijas plāns. Nedokumentēts izņēmums, kas klusi atjauno veco protokolu, nav saderības stratēģija un neizturēs nākamo auditu.

Pieņemiet izmaiņas ar jauniem savienojumiem

Pēc politikas maiņas testējiet ar jaunām sesijām, jo pirms izmaiņas izveidots savienojums neko nepierāda par konfigurāciju, kas tagad ir spēkā. Apstipriniet, ka atļautais protokols izdodas un aizliegtais neizdodas autorizētajā validācijas procesā, un pēc tam atstājiet sertifikāta identitāti un uzticības pārbaudes tieši tādas, kādas tās bija.

Atcerieties, ko rokasspiediens neaptver. SSTP pēc TLS slāņa pārnēsā PPP autentifikāciju, tāpēc mūsdienīga protokola versija neko nepasaka par to, kurš lietotājs tika autorizēts vai kurus resursus sesija var sasniegt. Tie ir atsevišķi kontroles līdzekļi ar atsevišķiem pierādījumiem.

Ierakstiet rezultātu kā pakalpojums, aizmugure, atļautā politika un novērotā versija. Šāds ieraksts precīzi atbild uz drošības jautājumu, ko nekad neizdara ne etiķetes arguments, ne neērtības arguments.

Saistītie raksti