Две особе могу гледати исто распоређивање SSTP и доћи до супротних закључака. Једна чита документацију производа, види слова SSL и претпоставља да тунел ради на протоколу повученом пре годинама. Друга показује на савремено руковање и закључује да је питање затворено. Обе расправљају од ознака, а не од преговаране верзије, и само једно од тога је доказ. Поређење које вреди направити је између онога што име обећава и онога што услуга заиста бира.

Два одговора на исто питање

Аргумент од ознаке је лако формулисати: SSTP је описан као заштићени протокол за тунеловање преко сокета, историјско име каже SSL, дакле веза мора бити SSL 3.0. Држи се зато што име заиста потиче из те линије и зато што већина оних који то понављају никада није погледала руковање. Држи се и зато што закључак звучи опрезно, као да је претпоставка најгорег безбедан избор. Претпостављати најгоре и мерити стварну верзију су различите активности и само једна од њих нешто мења.

Аргумент од доказа поставља уже питање. О којој верзији протокола су се овај клијент и овај сервер сагласили, на овој крајњој тачки, у овом тренутку? Одговор долази од услуге која терминира TLS, а не са маркетиншке странице или из прегледача који је стигао на слично назван сајт.

Два аргумента се разликују по томе шта могу да докажу. Ознака не може да разликује старо распоређивање од исправљеног, а руковање не може да вам каже шта ради неповезана услуга на истом домаћину. Користите други и престаните да користите први.

Прочитајте верзију коју услуга заиста бира

Почните именовањем компоненти: клијентска имплементација, серверска имплементација, крајња тачка TLS и све између њих што терминира и поново успоставља TLS. Балансер оптерећења који терминира TLS и са бекендом говори обичан HTTP мења то чију политику треба да читате.

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

Запишите крајњу тачку и време поред резултата, јер каснија промена политике чини запажање без датума бескорисним. Поновите проверу са клијента на истом мрежном путу као корисници који вас занимају, пошто уређај за пресретање може да терминира TLS са сопственим подешавањима. Ако се две позиције разилазе, пронашли сте компоненту која је важна. Ако се поклапају, имате доказ уместо слогана.

Одвојите поље записа од преговарања

Старомодан број верзије у једном пољу није исти факт као сесија SSL 3.0. RFC 7568 третира верзију слоја записа и преговарани протокол као одвојена питања, и управо из тог разликовања долазе самоуверени погрешни одговори. Прочитајте преговарани протокол, затим шифру и тек онда изведите закључак о сесији.

Исти документ је недвосмислен о самом протоколу: SSL 3.0 не сме да се користи, а преговарање или враћање на њега су забрањени. Разлог је сломљена CBC конструкција коју је искористио напад POODLE, а то је својство протокола, не конфигурација једне апликације.

Зато „ово оптерећење је вероватно тешко искористити“ није аргумент да оставите SSL 3.0 укључен. Захтев је да уклоните протокол, а не да победите дебату о једној демонстрацији.

Повуците SSL 3.0 са политиком коју можете да подржите

У Windows-у подешавања протокола Schannel налазе се под кључем Protocols и читају се посебно за клијентску и серверску улогу, због чега промена која поправља један смер може оставити други нетакнут. Тренутна подешавања и њихови захтеви за поновно покретање документовани су од Microsoft-а, а библиотека TLS треће стране на истом домаћину их потпуно игнорише.

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

Промените политику преко подржаног административног пута, потврдите да услуга власник поново учитава конфигурацију и задржите одобрен пут за повратак. Уметање широке скрипте регистра из другог окружења је начин на који исправка једне услуге постаје прекид за сваки TLS клијент на машини. Обим поновног покретања је овде важан: подешавање које изгледа примењено може још да се држи у меморији услуге која га није поново учитала.

Партнеру који још захтева застарелу верзију потребна је надоградња или план миграције. Недокументован изузетак који тихо враћа стари протокол није стратегија компатибилности и неће преживети следећу ревизију.

Прихватите промену са новим везама

Тестирајте новим сесијама после промене политике, јер веза успостављена пре промене ништа не доказује о конфигурацији која сада важи. Потврдите да одобрени протокол успева и да забрањени не пролази кроз овлашћени процес валидације, па затим оставите идентитет сертификата и провере поверења тачно онаквима какви су били.

Запамтите шта руковање не покрива. SSTP преноси PPP аутентикацију после TLS слоја, тако да савремена верзија протокола ништа не говори о томе који је корисник овлашћен или до којих ресурса сесија може да стигне. То су одвојене контроле са одвојеним доказима.

Запишите резултат као услуга, бекенд, дозвољена политика и запажена верзија. Такав запис тачно одговара на безбедносно питање, што не чини ни аргумент од ознаке, ни аргумент од непријатности.

Повезани чланци