25. července 2018 (aktualizováno 13. září 2023)

Včera, na moje narozeniny, vyšla nová verze Chrome 68, která začala označovat všechny weby na HTTP jako Not secure, česky Nezabezpečeno (pěknej dárek, díky!). Zatím teda jen s šedým (i) v kroužku, bez červeného vykřičníku. Spousta hojně navštěvovaných českých webů ale není připravena. A jak jsme se vlastně dostali až sem a co nás čeká?

Not secure | www.ceskatelevize.cz/moje-ct/

Web České televize v Chrome 68

Zatímco Chrome již označuje weby na HTTP vcelku viditelně, tak ostatní prohlížeče to mají stále na kliknutí, jako např. Firefox. Ten bude v agresivnějším označování stránek načtených nezabezpečeným protokolem HTTP pravděpodobně brzy Chrome následovat (o konkrétním datumu ale nevím), podobně jako Safari.

www.ceskatelevize.cz Connection Is Not Secure

Web České televize ve Firefoxu 61

Mezi „velkými“ českými weby, které neumí HTTPS nebo na něj uživatele nepřesměrují, najdete např.:

Seznam dalších padesáti českých webů, kterým je nějaké Not secure šumák (a jejich návštěvníci je taky moc nezajímají) sestavil Troy Hunt a Scott Helme a najdete ho na webu Why No HTTPS?. Najdete tam samozřejmě i jiné země, třeba Slovensko. Předpokládám, že ty weby na HTTPS nakonec dřív nebo později přejdou, ale je k tomu potřeba nemalého úsilí celého odvětví.

Jaká byla cesta?

Popravdě řečeno, měli na to docela dost času, když se podíváme na to, jak přechod na „HTTPS všude“ vypadal z pohledu Google:

Srpen 2014: Google oznamuje, že HTTPS přidává nějaké (v podstatě zanedbatelné) bodíky pro jejich vyhledávač – dobrej tah, šli na to od lesa. Trochu víc se tomu věnuje Pavel Ungr ve svém aktualizovaném článku.

Září 2016: Google píše, že od ledna 2017 bude Chrome zobrazovat Not secure na stránkách načtených přes HTTP s políčkem pro zadání hesla nebo platební karty.

Přihlašovací stránky v Chrome 53: login.example.com; v Chrome 56: (i) Not secure | login.example.com

Chrome zobrazuje Not secure na HTTP stránkách s políčkem pro zadání hesla nebo platební karty od ledna 2017 (zdroj)

Duben 2017: vychází zpráva, že od října 2017 bude Chrome označovat jako Not secure všechny stránky načtené po HTTP, pokud na nich uživatel začne cokoliv vyplňovat. Stránky načtené přes HTTP v Incognito režimu budou jako Not secure označené všechny.

HTTP stránky v Chrome 58: example.com; v Chrome 62 při zadávání dat nebo v Incognito režimu: (i) Not secure | example.com

Od října 2017 jste mohli vidět Not secure na HTTP stránkách při zadávání dat nebo v Incognito režimu (zdroj)

Únor 2018: dozvídáme se, že od července bude Chrome označovat všechny stránky načtené přes HTTP jako Not secure, zatím jen s šedým (i).

HTTP stránky v Chrome 64: example.com; v Chrome 68: (i) Not secure | example.com

Od včerejška zobrazuje Chrome text Not secure na všech HTTP stránkách (zdroj)

No a tak jsme tu, v červenci roku 2018. Dobrá práce a díky všem, kteří nás až sem dostali! Před pár lety jsem si to nedokázal představit a myslel jsem, že se toho nedožiju. Když o tom mluvím na školení HTTPS (nejbližší termín: termín zatím nevypsán), tak normálně dostávám husí kůži.

Mimochodem, Google si ty datumy necucá z prstu, ale sledují počty načtených stránek na HTTPS a podle toho změny dělají. V USA je 84 % všech stránek v Chrome načtených přes HTTPS, v Japonsku 66 %. Kdyby ta procenta byla nižší, tak by takové změny nedělali, protože by to znamenalo, že uživatel uvidí Not secure příliš často a začne to ignorovat. Ve Firefoxu jsou procenta načtených stránek po HTTPS podobná.

Je důležité si uvědomit, že stránka není web, takže když někdo používá celej den jeden web, např. Facebook nebo Gmail, tak všechny načtené stránky budou po HTTPS, ale pořád je to jen pár webů. Nedávno jsem zkusil odhadnout kolik českých webů je na HTTPS a vyšlo mi 20–30 %.

Co nás čeká dál?

září tohoto roku uvidíte na HTTPS stránkách v Chrome šedý rámeček místo zeleného a zmizí nápis Secure. No a nakonec zmizí i ten šedý zámek.

HTTPS stránky v Chrome 69: 🔒 example.com; finální stav: example.com

Od září zmizí Secure a zámeček zešedne a nakonec zmizí taky (zdroj)

říjnu se v Chrome změní šedé (i) v kroužku před Not secure na červený trojúhelník s vykřičníkem, když uživatel začne na stránce načtené přes nezabezpečený protokol HTTP něco vyplňovat.

HTTP stránky finální stav: ⚠ Not secure | example.com

Ve finále budou všechny stránky na HTTP označené červeným ⚠ Not secure (zdroj)

Chrome 117 vydaný v září 2023 začne místo zámečku zobrazovat ikonu Tune (Poladit), která vypadá tak trochu jako vařečky, lžíce nebo lízátka. Ta by vám měla napovědět, že se na ni dá kliknout a pak něco nastavit:

HTTPS stránky v Chrome 117: žádný zámeček, místo toho něj je ikona Tune

Chrome 117 bude zobrazovat novou ikonu jako součást vylepšení designu Chrome

Stránky načtené po HTTP budou mít Not secure s výstražným trojúhelníkem. A tak to má být, HTTPS je normální a je potřeba všude, i na obyčejném statickém webu. A co vy, už máte web na HTTPS?

březnu 2020 Chrome a další browsery odstraní podporu pro zastaralé protokoly TLS 1.0 a 1.1 (na serveru je můžete vypnout už nyní) a někdy v budoucnu bude i automaticky upgradovat požadavky na tzv. mixed content, tedy na obrázky a další zdroje načtené po HTTP do stránky načtené po HTTPS.

Budoucnost je tu

Některé změny uvedené výše si můžete vyzkoušet již dnes.

Chcete vidět finální červené ⚠ Not secure? Změňte nastavení chrome://flags/#enable-mark-http-as na „actively dangerous“.

Od verze 77 se přesunula informace z EV certifikátu z omniboxu do panelu, který se zobrazí až po kliknutí na zámeček.

Chrome rovněž též skrývá protokol (např. https://) a části domén jako např. www a m, pokud byste je chtěli mít zpátky a vidět je pořád, klikněte pravým tlačítkem na řádku s adresou a zvolte Always show full URLs a zas uvidíte celou URL. Nebo si nainstalujte rozšíření Suspicious Site Reporter a jako bonus dostanete jednoduchou možnost nahlásit podezřelý weby).

Podobná nastavení najdete i ve Firefoxu v about:config: přeškrtnutý zámeček pro všechny stránky na HTTP nastavíte pomocí security.insecure_connection_icon.enabled (a pomocí security.insecure_connection_icon.pbmode.enabled jen pro privátní okno), nápis Not Secure pro takové stránky pak povolíte zapnutím security.insecure_connection_text.enabled (Not Secure jen v privátním okně zapnete pomocí security.insecure_connection_text.pbmode.enabled).

Pamatujte, že tato nastavení se mohou změnit nebo mohou být zcela odstraněna bez předchozího varování.


Mohlo by vás také zajímat

Aktualizace článku

13. září 2023 Ikona zámečku definitivně zmizí v Chrome 117

5. listopadu 2019 V budoucnu Chrome odstraní podporu TLS 1.0 a 1.1 a začne automaticky upgradovat požadavky na tzv. mixed content

5. listopadu 2019 Informace o rozšíření Suspicious Site Reporter, které mj. vrátí zpátky protokol a www do adresního řádku

Michal Špaček

Michal Špaček

Vyvíjím webové aplikace, zajímá mě jejich bezpečnost. Nebojím se o tom mluvit veřejně, hledám hranice tak, že je posouvám. Chci naučit webové vývojáře stavět bezpečnější a výkonnější weby a aplikace.

Veřejná školení

Zvu vás na následující školení, která pořádám a vedu: