Каб браўзэр мог аўтэнтыфікаваць вэб-сайт, той уяўляе сябе сапраўдным ланцужком сертыфікатаў. Тыповы ланцужок паказаны зверху, у ім можа быць больш за адзін прамежкавы сертыфікат. Мінімальная колькасць сертыфікатаў у сапраўдным ланцужку роўна тром.
Каранёвы сертыфікат - сэрца цэнтра сертыфікацыі. Ён літаральна ўбудаваны ў вашу АС ці браўзэр, ён фізічна прысутнічае на вашым прыладзе. Яго не памяняеш са боку сервера. Трэба прымусовае абнаўленне АС ці ўбудаванага ПЗ на прыладзе.
Спецыяліст па бяспецы Скот Хельме (Scott Helme)
Канчатковыя і прамежкавыя сертыфікаты які сведчыць цэнтра (CA) дастаўляюцца кліенту з сервера, а каранёвы сертыфікат у кліента ўжо ёсць, таму з дапамогай гэтай калекцыі сертыфікатаў можна пабудаваць ланцужок і аўтэнтыфікаваць вэб-сайт.
Праблема заключаецца ў тым, што ў кожнага сертыфіката ёсць тэрмін дзеяння, пасля чаго ён мае патрэбу ў замене. Напрыклад, з 1 верасня 2020 гады ў браўзэры Safari плануюць увесці абмежаванне на тэрмін дзеяння серверных TLS-сертыфікатаў.
Гэта значыць, што ўсім нам давядзецца замяняць серверныя сертыфікаты прынамсі кожныя 12 месяцаў. Гэтае абмежаванне распаўсюджваецца толькі на сертыфікаты сервера, яно ня распаўсюджваецца на каранёвыя сертыфікаты CA.
Сертыфікаты CA рэгулююцца іншым наборам правіл, таму маюць розныя абмежаванні на тэрмін дзеяння. Вельмі часта сустракаюцца прамежкавыя сертыфікаты са тэрмінам дзеяння 5 гадоў і каранёвыя сертыфікаты са тэрмінам службы нават 25 гадоў!
З прамежкавымі сертыфікатамі звычайна няма праблем, таму што яны пастаўляюцца кліенту серверам, які сам значна часцей мяняе свой уласны сертыфікат, так што проста падчас гэтай працэдуры замяняе і прамежкавы. Яго даволі лёгка замяніць разам з сертыфікатам сервера, у адрозненне ад каранёвага сертыфіката CA.
Як мы ўжо казалі, каранёвы CA убудаваны непасрэдна ў саму кліенцкую прыладу, у АС, у браўзэр ці іншае праграмнае забеспячэнне. Змяненне каранёвага CA вэб-сайт не можа кантраляваць. Тут патрабуецца абнаўленне на кліенце, няхай гэта будзе абнаўленне АС або софту.
Некаторыя каранёвыя CA існуюць ужо вельмі даўно, прамова аб 20-25 гадах. Хутка некаторыя з самых старых каранёвых CA наблізяцца да канца свайго натуральнага жыцця, іх час амаль скончыўся. Для большасці з нас гэта ўвогуле не будзе праблемай, таму што CA стварылі новыя каранёвыя сертыфікаты, і яны ўжо шмат гадоў распаўсюджваюцца па ўсім свеце ў абнаўленнях АС і браўзэраў. Але калі хтосьці вельмі даўно не абнаўляў АС ці браўзэр, гэта свайго роду праблема.
Такая сітуацыя ўзнікла 30 мая 2020 года ў 10:48:38 GMT. Гэта дакладны час, калі
Ён выкарыстоўваўся для перакрыжаванага подпісу, каб забяспечыць сумяшчальнасць з састарэлымі прыладамі, у сховішча якіх няма новага каранёвага сертыфіката USERTrust.
Нажаль, праблемы паўсталі не толькі ў састарэлых браўзэрах, але і ў небраузерных кліентах на базе OpenSSL 1.0.x, LibreSSL і
Меркавалася, што праблема закране толькі састарэлыя сістэмы (Android 2.3, Windows XP, Mac OS X 10.11, iOS 9 і да т.п.), паколькі сучасныя браўзэры могуць задзейнічаць другі каранёвы сертыфікат USERTRust. Але па факце пачаліся збоі ў сотнях вэб-сэрвісаў, якія выкарыстоўвалі вольныя бібліятэкі OpenSSL 1.0.x і GnuTLS. Бяспечнае злучэнне перастала ўсталёўвацца з высновай памылкі аб састарэнні сертыфіката.
Наступны - Let's Encrypt
Яшчэ адзін добры прыклад маючай адбыцца змены каранёвага CA - цэнтр сертыфікацыі Let's Encrypt. Яшчэ
"З-за асцярог з нагоды недастатковага распаўсюджвання кораня ISRG на прыладах Android мы вырашылі перанесці дату пераходу да ўласнага кораня з 8 ліпеня 2019 года на 8 ліпеня 2020 года", – сказана ў афіцыйным паведамленні Let's Encrypt.
Дату прыйшлося перанесці з-за праблемы, якую завуць "распаўсюджваннем кораня" (root propagation), а дакладней, адсутнасцю распаўсюджвання кораня, калі каранёвы CA не занадта шырока распаўсюджаны на ўсіх кліентах.
Цяпер Let's Encrypt выкарыстоўвае перакрыжавана падпісаны прамежкавы сертыфікат з ланцужком да кораня IdenTrust DST Root CA X3. Гэты каранёвы сертыфікат быў выдадзены яшчэ ў верасні 2000 года і заканчваецца 30 верасня 2021 года. Да гэтага часу Let's Encrypt плануе перайсці на ўласны самападпісаны корань ISRG Root X1.
Корань ISRG выпушчаны 4 чэрвеня 2015 года. Пасля гэтага пачаўся працэс яго зацвярджэння ў якасці цэнтра сертыфікацыі, які завяршыўся.
Але ў гэтым праблема.
Калі ваш мабільны тэлефон, тэлевізар ці іншая прылада не абнаўлялася два гады – як яна даведаецца аб новым каранёвым сертыфікаце ISRG Root X1? А калі яго не ўсталяваць у сістэме, то ўсе серверныя сертыфікаты Let's Encrypt ваша прылада прызнае несапраўднымі, як толькі Let's Encrypt пяройдзе на новы корань. А ў экасістэме Android шмат састарэлых прылад, якія даўно не абнаўляліся.
Экасістэма Android
Вось чаму Let's Encrypt адклаў пераход да ўласнага кораня ISRG і ўсё яшчэ выкарыстоўвае прамежкавае звяно, якое спускаецца да кораня IdenTrust. Але пераход у любым выпадку давядзецца зрабіць. І датай змены кораня прызначанае
Для праверкі, што на вашай прыладзе (тэлевізар, прыстаўка ці іншы кліент) усталяваны корань ISRG X1, адкрыйце тэставы сайт
Let's Encrypt не адзіны, каму трэба будзе вырашыць праблему з пераходам на новы корань. Крыптаграфію ў інтэрнэце пачалі выкарыстоўваць крыху больш за 20 гадоў таму, так што якраз зараз надыходзіць момант заканчэння дзеяння многіх каранёвых сертыфікатаў.
З такой праблемай могуць сутыкнуцца ўладальнікі разумных тэлевізараў, якія шмат гадоў не абнаўлялі праграмнае забеспячэнне Smart TV. Напрыклад, новы корань GlobalSign
www.bbc.co.uk (Leaf) GlobalSign ECC OV SSL CA 2018 (Intermediate) GlobalSign Root CA - R5 (Intermediate) GlobalSign Root CA - R3 (Intermediate)
Гэтае часовае рашэнне. Праблема нікуды не сыдзе, калі не абнавіць кліенцкае ПЗ. Разумны тэлевізар - гэта па ісце абмежаваны ў функцыянальнасці кампутар пад Linux. І без абнаўленняў яго каранёвыя сертыфікаты непазбежна пратухнуць.
Гэта датычыцца ўсіх прылад, не толькі тэлевізараў. Калі ў вас любая прылада, якое падлучанае да інтэрнэту і якое рэкламавалі як «разумны» девайс, то праблема з пратухлымі сертыфікатамі амаль напэўна дакранаецца яго. Калі прылада не абнаўляецца, тое каранёвае сховішча CA са часам састарэе, і ў канчатковым выніку праблема ўсплыве на паверхню. Калі паўстане праблема, залежыць ад часу апошняга абнаўлення каранёвага сховішча. Гэта можа быць за некалькі гадоў да даты рэальнага выпуску прылады.
Дарэчы, у гэтым праблема, чаму некаторыя буйныя медыяплатформы не могуць выкарыстоўваць сучасныя аўтаматызаваныя цэнтры сертыфікацыі тыпу Let's Encrypt, піша Скот Хельме. Для разумных ТБ яны не падыходзяць, і колькасць каранёў занадта мала, каб гарантаваць падтрымку сертыфіката на састарэлых прыладах. У адваротным выпадку ТБ проста не зможа запусціць сучасныя стрымінгавыя сэрвісы.
Апошні інцыдэнт з AddTrust паказаў, што нават буйныя IT-кампаніі бываюць не гатовы да таго, што ў каранёвага сертыфіката заканчваецца тэрмін дзеяння.
Рашэнне праблемы толькі адно - абнаўленне. Распрацоўнікі разумных прылад павінны загадзя забяспечыць механізм абнаўлення праграмнага забеспячэння і каранёвых сертыфікатаў. З іншага боку, вытворцам нявыгадна забяспечваць працу сваіх прылад пасля заканчэння тэрміну гарантыі.
Крыніца: habr.com