Informatyka i programowanieKryptografia i bezpieczeństwo komputerowe

Kłódka HTTPS nie mówi, że strona jest uczciwa

HTTPS może chronić połączenie z domeną, a mimo to prowadzić do strony stworzonej do oszustwa. Publicznie zaufany certyfikat TLS potwierdza przede wszystkim określone powiązanie nazwy domeny z kluczem i przejście wymaganej procedury walidacji. Dla typowego certyfikatu domenowego urząd certyfikacji sprawdza kontrolę nad domeną; nie wykonuje uniwersalnego „audytu uczciwości” treści serwisu. Dlatego witryna phishingowa również może mieć prawidłowy certyfikat i zaszyfrowane połączenie. Kłódka odpowiada na pytanie o kanał i nazwę hosta, nie na pytanie, czy oferta, formularz albo osoba po drugiej stronie są godne zaufania.

HTTPS rozwiązuje konkretny problem

TLS ma zapewniać chroniony kanał pomiędzy klientem a serwerem. Certyfikat pozwala klientowi powiązać klucz publiczny z nazwą, do której próbuje się połączyć, a następnie protokół ustanawia klucze chroniące transmisję. To ogromnie ważne: ktoś podsłuchujący sieć nie powinien móc po prostu podmienić serwera ani czytać danych aplikacyjnych. Jednak z tego nie wynika, że operator prawidłowo uwierzytelnionej domeny ma dobre intencje.

Certyfikat domenowy sprawdza kontrolę nad domeną

CA/Browser Forum opisuje wymagania dla publicznie zaufanych certyfikatów serwerowych. W przypadku certyfikatów wydawanych dla samych nazw domen podstawowym celem jest potwierdzenie, że wnioskodawca kontroluje daną nazwę lub jest do niej uprawniony. To bardzo ważna własność techniczna, ale znacznie węższa niż „ta firma jest prawdziwa i godna zaufania”. Rejestracja domeny podobnej do nazwy znanej marki i uzyskanie dla niej poprawnego certyfikatu nie sprawiają automatycznie, że witryna staje się legalnym przedstawicielem tej marki.

Szyfrowanie może chronić także rozmowę z oszustem

Jeżeli użytkownik trafia na domenę kontrolowaną przez napastnika, TLS może perfekcyjnie zaszyfrować połączenie pomiędzy użytkownikiem a tym właśnie napastnikiem. Z punktu widzenia kryptografii wszystko działa: certyfikat pasuje do domeny, klucze są poprawne, transmisja jest poufna przed osobami trzecimi. Problem wystąpił wcześniej — użytkownik zaufał niewłaściwej nazwie albo został do niej przekierowany społecznie, np. wiadomością phishingową. Bezpieczny kanał nie naprawia błędnej decyzji o tym, z kim chcemy rozmawiać.

Interfejs przeglądarki jest tylko skrótem wielu testów

Przeglądarka sprawdza między innymi łańcuch certyfikatów, ważność, dopasowanie nazwy i reguły polityki zaufania. Użytkownik widzi z tego jedynie uproszczony komunikat. Dlatego symbol kłódki bywa błędnie interpretowany jak pieczęć jakości całej witryny. Bezpieczniejsza intuicja brzmi: „połączenie z tą nazwą jest chronione zgodnie z regułami TLS i zaufania certyfikatów”. To dużo precyzyjniejsze i nie przypisuje protokołowi gwarancji, których nigdy nie miał zapewniać.

To dobra lekcja o granicach mechanizmów bezpieczeństwa

System bezpieczeństwa odpowiada zawsze na określony model zagrożeń. TLS broni m.in. przed podsłuchem i podszywaniem się w kanale sieciowym, gdy klient poprawnie identyfikuje docelową nazwę i ufa właściwym korzeniom. Nie ocenia prawdziwości tekstu na stronie, jakości produktu ani intencji operatora. Rozróżnienie tych warstw jest ważne, bo „bezpieczne połączenie” i „bezpieczna decyzja użytkownika” to dwa osobne problemy.

Certyfikat domenowy odpowiada na pytanie o domenę, nie o reputację jej właściciela

Współczesna publiczna infrastruktura TLS jest w dużej mierze zorganizowana wokół potwierdzenia, że wnioskodawca kontroluje konkretną nazwę domenową. Baseline Requirements CA/Browser Forum opisują dozwolone metody weryfikacji kontroli nad domeną, a nie procedurę oceniania jakości usług, uczciwości sklepu czy prawdziwości treści. To istotne, bo użytkownik widzi jeden techniczny mechanizm w sytuacjach o bardzo różnym ryzyku biznesowym. Fałszywy sklep może poprawnie kontrolować własną domenę i poprawnie zestawić zaszyfrowane połączenie. HTTPS nadal wykonuje wtedy ważną pracę: utrudnia osobie po drodze podsłuchiwanie i podmianę transmisji. Po prostu nie odpowiada na pytania, do których nie został zaprojektowany. Bezpieczeństwo staje się czytelniejsze, gdy każdej ikonie przypisuje się dokładnie tę gwarancję, którą rzeczywiście zapewnia.

HTTPS nadal ma ogromną wartość, nawet gdy nie rozwiązuje problemu wiarygodności strony

Łatwo przesadzić w drugą stronę i uznać, że skoro certyfikat nie ocenia uczciwości właściciela domeny, to kłódka „nic nie znaczy”. Znaczy bardzo dużo dla kanału: przeglądarka może wykryć, że rozmawia z podmiotem kontrolującym odpowiednią nazwę i zestawić połączenie, którego treści nie powinien móc swobodnie czytać ani modyfikować pośrednik sieciowy. To chroni logowanie do prawdziwego banku, aktualizacje, formularze i zwykłe przeglądanie przed inną klasą zagrożeń niż oszustwo właściciela strony. Najlepsza interpretacja wskaźnika HTTPS brzmi więc nie „tej stronie można ufać”, lecz „połączenie z tą domeną otrzymało określone gwarancje kryptograficzne i certyfikatowe”. Precyzyjny komunikat jest mniej efektowny, ale znacznie użyteczniejszy.

#certyfikaty#HTTPS#phishing#PKI#TLS
Źródła i weryfikacja
Otrzymuj codzienne losowe ciekawostki