Основно съдържание
Компютрите и интернет
Курс: Компютрите и интернет > Раздел 4
Урок 6: Закодиращ протокол (IPsec)Цифрови сертификати
Протоколът TLS разчита на криптиране с публичен ключ. Изпращащият компютър използва публичния ключ на получаващия компютър, когато криптира данни. Преди да се случи това обаче, TLS изисква стъпка, която е критична за сигурността: изпращащият трябва да потвърди самоличността зад публичния ключ.
Цифров сертификат, още познат като сертификат с публичен ключ или сертификат за самоличност, доказва собственост на криптиращ ключ.
Нуждата от сертификати
Какво щеше да се случи, ако TLS не включваше стъпка за проверка на сертификата?
Нападателите са открили начини за прихващане на интернет заявка от един компютър към друг, например чрез злонамерени точки за достъп.
След това те могат да стартират атака тип "мъж по средата" (MITM - man-in-the-middle). Въпреки че се нарича атака тип "мъж" по средата, нападателите са от всякакви възрасти и полове. Можеш да си ги представяш и като "маскирания по средата".
Първо, по време на установяването на сигурна връзка чрез TLS, нападател изпраща на клиента своя публичен ключ, вместо този на сървъра.
След това, всеки път, когато клиентът криптира данни с получения публичен ключ, той всъщност криптира данни с публичния ключ на нападателя. След това нападателят може да декриптира криптираното съобщение, да подмени както той пожелае и да го криптира отново с публичния ключ на сървъра, преди да прати данните към сървъра.
За да се предотврати атака "MiTM", клиентът трябва да провери идентичността зад публичния ключ. Цифров сертификат показва идентичността зад публичен ключ. Само че, ако всеки може да ги създава, как клиент да се довери на достоверността на цифров сертификат? В TLS клиентите се доверяват на цифров сертификат, ако е създаден от институции, познати като издатели на сертификати.
Издатели на сертификати (Certificate Authorities - CA)
Сървър, който иска да комуникира сигурно през TLS, се абонира за издател на сертифкати. Издателят на сертификати потвърждава собствеността на домейна, подписва сертификата със своето име и публичен ключ и предоставя подписания сертификат обратно на сървъра.
Когато клиентът проверява сертификата, той може да види, че издател на сертификати потвърждава автентичността на публичния ключ. Но все пак трябва да вземе решение: вярва ли на този издател на сертификати?
В общия случай клиентите вървят в комплект с доверени издатели на сертификати. Например Apple iPhone, работещ под iOS 10, вярва на следния списък с издатели на сертификати.
Слде това потребителите трябва да се доверят на Apple постоянно да наблюдава този списък и да подсигури, че всеки издател на сертификати проверява надлежно домейните.
Можеш да си представиш веригата на доверие от потребителя до сървъра:
На всеки етап доверието може да бъде развалено. Ако потребителят не вярва на клиента, той може да замени списъка с издатели на сертификати по подразбиране. Ако клиент повече не се доверява на издател на сертификати, той ще го отстрни от списъка. Ако издател на сертификати види подозрително поведение от даден сървър, той може да анулира сертификата му.
Междинни издатели на сертификати
Всъщност съществуват множество нива на издатели на сертификати: основният издател на сертификати и междинен издател на сертификати.
Основният CA всъщност не издава директно никакви цифрови сертификати за сървъри. Той издава само цифрови сертификати за междинни издатели, които действат от негово име. Междинните издатели могат или да издават цифрови сертификати за друг междинен CA, или директно за сървъри.
Следователно има още една верига на доверие, от основния CA към сървъра:
Нивата на издатели на сертификати увеличават сигурността на системата. Ако основен CA открие, че междинен CA е компрометиран от нападател, ще направи невалидни сертификатите от този CA, но ще продължи да вярва на сертификатите от другите междинни CA.
🔍 Можеш и ти да видиш веригата, ако провериш сертификата на сигурна интернет страница в браузъра. Ако щракнеш на катинара до URL-а, браузърът трябва да ти предложи начин да провериш сертификатите.
🙋🏽🙋🏻♀️🙋🏿♂️Имаш въпроси по тази тема? Ще се радваме да отговорим — само ни попитай, като използваш полето за въпроси по-долу!
Искаш ли да се присъединиш към разговора?
Все още няма публикации.