Нехта паведамляе, што ключ VPN стаў публічным, і гэты сказ хавае тры цалкам розныя сітуацыі. Гэта можа быць сертыфікат CA, які павінен быць у кожнага кліента, прыватны ключ ідэнтычнасці, які ніколі не павінен быў пакідаць адну машыну, або агульны сакрэт канала кіравання, які павінны трымаць абодва бакі. Рамант, тэрміновасць і маштаб наступстваў у кожным выпадку розныя, таму першая задача — класіфікацыя, а не дзеянне. Памыліцеся з катэгорыяй — і кожны наступны крок будзе дарэмнай працай.

Пачынайце з дырэктывы, а не з імя файла

Прачытайце актыўную канфігурацыю і знайдзіце, якая дырэктыва паказвае на матэрыял, пра які ідзе гаворка. Опцыі TLS у OpenVPN выкарыстоўваюць ca для даверанага матэрыялу сертыфіката, cert для сертыфіката лакальнага партнёра і key для прыватнага ключа, які да яго належыць.

Імёны файлаў нічога не даказваюць. Файл з назвай key.pem можа змяшчаць сертыфікат, а ўбудаваны блок у профілі можа ўтрымліваць абсалютна той жа аб’ект, што і асобны файл на дыску. Адкрыйце файл і паглядзіце на яго загаловак замест таго, каб давяраць назве. Гэтая адна праверка здымае большую частку нявызначанасці ў справаздачы.

Калі профіль — гэта пакет PKCS#12, распакуйце яго ў кантраляваным месцы, каб убачыць, што ён насамрэч змяшчае. Адзін пакет можа несці сертыфікат, яго ланцуг і прыватны ключ, а значыць, уцечка пакета — гэта ўцечка ўсіх трох.

Запішыце класіфікацыю да таго, як хтосьці зменіць файл: аб’ект, дырэктыва, якія партнёры яго трымаюць і хто можа яго чытаць. Менавіта ад гэтага сказа залежыць усё астатняе ў адказе.

Сертыфікат CA створаны для сумеснага выкарыстання

Публічны сертыфікат CA — гэта матэрыял даверу. Кліентам ён патрэбны для праверкі сервера, і яго распаўсюджванне — гэта звычайная справа, а не інцыдэнт. Яго публікацыя не публікуе прыватны ключ подпісу CA, а менавіта гэты аб’ект дазволіў бы зламысніку ствараць новыя ідэнтычнасці.

Гэтае размежаванне варта яўна зафіксаваць у заяўцы, бо гэтыя дзве рэчы пастаянна блытаюць. Пытанне, на якое трэба адказаць, — ці зліты файл з’яўляецца сертыфікатам, ці ключом подпісу, і хуткі позірк на змест файла гэта вырашае. Сертыфікат змяшчае публічны ключ і подпіс; ключ подпісу ў ім зусім не з’яўляецца.

Распаўсюджванне ўсё яшчэ патрабуе асцярожнасці. Кліенты павінны атрымліваць сертыфікат праз зацверджаны шлях дастаўкі профілю, а не з сайта для ўстаўкі, і сертыфікат, які прыйшоў недавераным маршрутам, можа быць заменены ў шляху.

Ключ партнёра і сакрэт tls-auth — гэта не

Прыватны ключ партнёра — гэта матэрыял ідэнтычнасці. Пасля яго капіравання сервер больш не можа адрозніць прызначаную прыладу ад любога, хто трымае копію, бо выключнае валоданне і было той уласцівасцю, якая дэманстравалася. Працяг аўтарызацыі і замену вырашае ўладальнік VPN, а не той, хто знайшоў файл.

Сакрэт tls-auth — гэта трэцяе. Ён дадае аўтэнтыфікацыю HMAC вакол пакетаў канала кіравання, каб няправільна аўтэнтыфікаваныя пакеты адкідаліся да абмену TLS, і ён не з’яўляецца ні прыватным ключом партнёра, ні ключом, які шыфруе даныя праграм.

Калі гэты агульны сакрэт публічны, бар’ер, які ён даваў, знік для ўсіх, хто яго мае. З гэтага не вынікае, што кожны ўладальнік праходзіць праверкі сертыфіката і карыстальніка за ім, і менавіта таму класіфікацыя важнейшая за ўзровень трывогі. Скажыце, які бар’ер упаў, і скажыце, якія засталіся.

Рамантуйце тую ролю, што ўцякла, а не суседнюю

Агульны сакрэт нельга зноў зрабіць прыватным, перайменаваўшы файл або схаваўшы спасылку на спампоўку. Замена азначае генерацыю новага значэння і яго размеркаванне ўсім партнёрам ва ўзгодненай змене, а замена толькі аднаго боку ламае ўсю дамоўленасць для ўсіх, хто яшчэ трымае старое значэнне.

Калі ідэнтычнасць партнёра была выкрыта, выкарыстоўвайце працэс адклікання і перарэгістрацыі аператара для гэтай ідэнтычнасці. Змена пароля незвязанага ўліковага запісу не анулюе скапіяваны сертыфікат, і замена файла tls-auth таксама.

Пацвердзіце, што разгорнуты сервер насамрэч забяспечвае, перш чым спадзявацца на што-небудзь з гэтага. Спіс адклікання, які не абнаўляецца, або праверка ролі, адключаная падчас збою, цалкам змяняюць адказ. Чытайце працоўную канфігурацыю, а не копію са сховішча.

Ацэньвайце мінулы трафік на яго ўласных умовах

Выкрыты файл сам па сабе не кажа, ці можна расшыфраваць раней перахопленыя сесіі. Гэта залежыць ад метаду ўсталявання ключа, выкрытага матэрыялу і таго, якія запісы існуюць, і абедзве думкі — «увесь трафік страчаны» і «нічога не здарылася» — здагадкі без гэтых фактаў.

Не публікуйце чарговую копію ўліковых даных, пытаючыся, да якой катэгорыі яна належыць. Замест гэтага перадайце назвы дырэктыў і несякрэтныя метаданыя праз зацверджаны шлях падтрымкі.

Карысная выснова называе аб’ект, яго ролю, страчаную абарону і неабходнае ўзгодненае дзеянне. Усё карацейшае — гэта загаловак, а не ацэнка.

Падобныя артыкулы