Komunikaty dotyczące certyfikatów SSL nie zawsze są zrozumiałe. Gdy dochodzą do tego zmiany wprowadzane wraz z każdą nową wersją przeglądarki nietrudno jest się w tym wszystkim pogubić.
Poniższy tekst ma za zadanie pomóc odnaleźć się w gąszczu komunikatów związanych z certyfikatami SSL w przeglądarce Chrome, które w ostatnim czasie mogły zdezorientować wielu użytkowników.
Kłódka…
Niestety, mimo ciągle rosnącej świadomości użytkowników, wielu nie wie czym jest certyfikat SSL i przed czym chroni nas protokół TLS. Trudno się oczywiście temu dziwić – nie można wymagać przecież od wszystkich znajomości każdej dziedziny informatyki. Jeżeli zapytam jednak: czy widziałeś kiedyś taką zieloną kłódkę, gdy logujesz się do swojego banku? to myślę, że wielu z Was odpowie twierdząco. Na tym jednak świadomość większości się kończy: wiem tylko tyle, że kłódka ma być zielona – inaczej coś jest nie tak…. No właśnie, co jeżeli kłódka jednak nie jest zielona, jest przekreślona lub nie ma jej wcale? Najczęstszy powód to po prostu brak zainstalowanego certyfikatu SSL, co oznacza korzystanie z nieszyfrowanej transmisji danych. Ta kwestia nie będzie jednak tematem tego wpisu.
Obecnie wiele stron mimo poprawnie zainstalowanego certyfikatu SSL (pomijam przypadki nieprawidłowej instalacji certyfikatu z którą opisywane dalej kwestie nie mają nic wspólnego) wyświetlanych jest w przeglądarkach z mniej lub bardziej odstraszającymi komunikatami tekstowymi lub symbolami graficznymi. W ostatnim czasie prym wiedzie tutaj Chrome i to właśnie wybrane ostrzeżenia dotyczące tej przeglądarki, posiadającej około 50% udziałów w polskim rynku, chciałbym omówić. Jej komunikaty nie zawsze są do końca jasne dla użytkowników czy nawet administratorów witryn. Co więcej, niektóre z symbole graficzne mogą skutecznie zniechęcić użytkowników nawet do zaprzestania odwiedzania naszej strony.
W tym wpisie przedstawię dwie główne przyczyny powodujące wyświetlanie niepożądanych ostrzeżeń oraz sposoby radzenie sobie z nimi. Tym przyczynami są certyfikaty oparte na funkcji skrótu SHA-1 oraz certyfikaty wydane bez wsparcia dla mechanizmu Certificate Transparency.
Komunikaty związane z wycofywaniem SHA-1
Być może część z Was wie, a mogła dowiedzieć się między innymi z tego wpisu, że jakiś czas temu Google opracowało strategię, postępujących z wersji na wersję, ostrzeżeń w przeglądarce Chrome mających za zadanie przyśpieszyć proces wycofywania certyfikatów SSL opartych o, coraz mniej bezpieczną, funkcję skrótu SHA-1. Zmiany weszły w życie wraz z wydaniem Chrome 39. Podsumujmy jak sytuacja wygląda dziś, w połowie marca 2015.
Uwaga: wszystkie poniższe wskazówki dotyczą tylko certyfikatów korzystających z SHA-1 (jeżeli nie jesteś pewny jaką funkcję skrótu wykorzystuje Twój certyfikat SSL sprawdź wartość pola Algorytm podpisu – signatureAlgorithm).
Poniższe zestawienie zawiera warunki wraz z identyfikatorem graficznym, który wyświetla Chrome w przypadku ich spełnienia. Pierwszy z nich to, jak już wspomniałem, posiadanie certyfikatu opartego na funkcji skrótu SHA-1. Tutaj warto zaznaczyć, że sprawdzane są zarówno certyfikaty końcowe (serwera) oraz pośrednie będące w ścieżce certyfikacji. Pod uwagę nie są brane jedynie certyfikaty główne – Root CA. Drugi warunek związany jest z datą jego końca ważności.
Chrome 39:
- jeżeli certyfikat SHA-1 wygasa pomiędzy 1 stycznia a 31 grudnia 2016 (włącznie):
- jeżeli certyfikat SHA-1 wygasa po 2016:
Chrome 40 i 41*:
- jeżeli certyfikat SHA-1 wygasa pomiędzy 1 stycznia 2016 a 31 maja 2016 (włącznie):
- jeżeli certyfikat SHA-1 wygasa pomiędzy 1 czerwca 2016 a 31 grudnia 2016 (włącznie):
- jeżeli certyfikat SHA-1 wygasa po 2016:
Chrome 42*:
- jeżeli certyfikat SHA-1 wygasa pomiędzy 1 stycznia 2016 a 31 grudnia 2016 (włącznie):
- jeżeli certyfikat SHA-1 wygasa po 2016:
* Ostrzeżenia przeznaczone początkowo dla Chrome 41 zostały przeniesione do Chrome 42, którego wydanie zaplanowane jest w połowie kwietnia 2015.
Oprócz symboli graficznych w szczegółach połączenia SSL wyświetlany jest komunikat:
Ta witryna korzysta z nieaktualnych ustawień zabezpieczeń, które mogą uniemożliwić przyszłym wersjom Chrome bezpieczne jej otwieranie.
Rozwiązaniem, które pozwoli na pozbycie się zarówno niechcianych komunikatów jak i ostrzeżeń graficznych jest wymiana certyfikatu SSL na taki, który wykorzystywał będzie funkcję skrótu SHA-2. Zdecydowana większość Urzędów Certyfikacji (CAs) oferuje takie certyfikaty.
Komunikaty związane z Certificate Transparency
O tym czym jest Certificate Transparency (CT) – przejrzystość certyfikatów, wspominałem już wcześniej. Google, będące głównym pomysłodawcą i twórcą CT, zdecydowało się na informowanie użytkowników przeglądarki Chrome o tym czy dany certyfikat został poddany audytowi przejrzystości. Jeżeli nie – technicznie można ująć to tak, że połączenie zostało zestawione bez wykorzystania tzw. znacznika SCT (signed certificate timestamp) – to Chrome wyświetla następujący komunikat w szczegółach połączenia HTTPS:
Tożsamość tej witryny zostało potwierdzona przez [tutaj nazwa wystawcy certyfikatu], ale nie ma jej danych o audycie publicznym.
Audyt publiczny, czyli właśnie Certificate Transparency.
Głównym problemem w tym przypadku jest to, że mechanizm Certificate Transparency – póki co – przeznaczony jest jedynie dla certyfikatów o rozszerzonej weryfikacji – Extended Validation SSL (EV SSL), a Chrome wyświetla powyższe ostrzeżenia dla wszystkich rodzajów certyfikatów SSL.
Rozwiązanie tego problemu lub jego brak uzależnione jest zatem o typu certyfikatu, którzy wykorzystujesz:
- Jeżeli posiadasz certyfikat EV SSL to musisz wymienić go na taki, który będzie wydany zgodnie z założeniami Certificate Transparency. Większość CA wspiera już CT, więc jego wymiana nie powinna być problemem.
- Jeżeli posiadasz certyfikat SSL innego typu niż EV np. Domain Validation (DV) lub Organization Validation (OV) nic nie możesz zrobić… Na tę chwilę żaden Urząd Certyfikacji nie obsługuje CT dla certyfikatów SSL innych niż EV. Można oczywiście rozważyć wymianę certyfikatu na EV SSL, ale czy warto?
Z mechanizmem Certificate Transparency związana jest jeszcze jedna istotna kwestia, która może wpłynąć na poczucie bezpieczeństwa użytkowników Twojej strony. Certyfikaty EV SSL dają m.in. tę przewagę nad innymi, że pozwalają na wyświetlanie w przęglądarkach tzw. zielonego paska. Tutaj także Chrome nie daje taryfy ulgowej w pewnych przypadkach. Mianowicie, wszystkie certyfikaty EV SSL wydane po 1 stycznia 2016 roku nie posiadające SCTs, odebranych z tzw. serwerów logów CT, będą pozbawione przywileju zielonego paska. Rozwiązaniem także jest uzyskanie certyfikatu wydanego zgodnie z CT. Warto wiedzieć, że w przypadku certyfikatów ważnych 1 rok wymagane jest dołączenie dwóch SCTs, podczas gdy dla certyfikatów 2-letnich konieczne jest dołączenie trzech SCTs. W obu przypadkach muszą pochodzić one z niezależnych serwerów logów.
Na koniec, krótka porada jak sprawdzić czy nasz certyfikat EV SSL wspiera Certificate Transparency. SCT można przedstawić przeglądarce na trzy różne sposoby, ale obecnie najpopularniejszy to umieszczenie w strukturze certyfikatu specjalnego rozszerzenia nazwanego SignedCertificateTimestampList, które w certyfikacie może być wyświetlane nie po nazwie, ale po identyfikatorze OID: 1.3.6.1.4.1.11129.2.4.5. Jeżeli posiadamy takie rozszerzenie w certyfikacie, oznacza to, że zawiera on przynajmniej jeden znacznik SCT.
Podsumowanie
Jak widać, nadążanie za zmianami jakie serwują nam twórcy przeglądarek – w tym przypadku Chrome – nie jest łatwe. Okazuje się, że w niektórych przypadkach wskazanie przyczyny danego ostrzeżenia może nie być do końca oczywiste.
Nie daję gwarancji, że wpis ten będzie aktualny dłużej niż do kolejnego wydania Chrome. Mam jednak nadzieję, że pomógł on Wam zrozumieć przyczyny wyświetlania przynajmniej części ostrzeżeń związanych z certyfikatami SSL w przeglądarce Chrome oraz, że pomoże Wam w skutecznym pozbyciu się ich.
Ciekawe bo używam Windows 7 64bits Professional a moja zona ma Windows Home, oboje korzystamy z Kasperskiego, tego samego oprogramowania ale jak chciałem przetestować nowego Firefoxa to u mnie ciągłe zapytania o to czy jestem pewien, ze chce odwiedzić te stronę a małżonka ma święty spokój. Oczywiście wywaliłem Firefoxa po kilku próbach bo jestem od lat fanem Opery!
Czy może tu być jakiś inny problem którego nie dostrzegam?
Podeślij na adres podany na stronie Kontakt szczegóły błędu, który uniemożliwia Ci bezproblemowe załadowanie strony.
Jutro zaczynam urlop – pozostane w kontakcie!
Czes, jestem laikem, więc wybacz jesli moje pytanie jest glupie, zy kozystanie ze strony z tą szarą kłódka jest bezpieczne czy nie?
Na to pytanie ciężko jest odpowiedzieć jednoznacznie. Jeżeli masz na myśli szarą kłódkę przeglądarki Firefox oraz to, że mówimy tylko o certyfikacie i konfiguracji SSL to tak, można przyjąć, że połączenie jest bezpiecznie. Szara kłódka w Firefoxie przeznaczona jest dla certyfikatów SSL niebędących certyfikatami SSL o rozszerzonej weryfikacji (Extended Validation) i jeżeli nie jest w jakiś sposób przekreślona lub szczegóły połączenia nie mówią inaczej to można założyć, że połączenie jest bezpieczne.
To tak bardzo ogólnie, jeżeli chciałbyś bardziej szczegółówych wyjaśnień to zapraszam do kontaktu poprzez adres mailowy podany w zakładce Kontakt :-)