Chrome phishingové domény ověřuje online v reálném čase. Předchozí model nestačil

před 4 týdny 28

Začátkem podzimu, když Chrome slavil 15. narozeniny, Google neurčitě mluvil o tom, že jeho prohlížeč zdokonaluje ochranu proti phishingu. Vágně v tom smyslu, že neprozradil přesné datum uvedení. O půl roku později příslib naplnil. Už loni prozradil, že až 60 % phishingových domén existuje méně než 10 minut.

Dle dosavadního modelu Safe Browsing – vznikl v roce 2005 – kontroloval, zda se doména nachází na lokálním seznamu phishingových stránek. Ten byl aktualizován každých 30–60 minut. V současnosti tudíž tento model ochrany nedostačuje. Rychle bobtnající seznam navíc začíná být pro některá zařízení příliš náročný, tvrdí Google.

Stál před výzvou, jak zajistit ochranu v reálném čase, aniž by významně ohrozil soukromí a výkon. Představil následující řešení:

  1. Při navštívení stránky Chrome zkontroluje místní mezipaměť, jestli už daná stránka nebyla označena za bezpečnou.
  2. Pokud adresa v mezipaměti není, může být nebezpečná. Chrome přikročí ke kontrole v databázi na serveru služby Safe Browsing.
  3. Chrome adresu stránky skryje tím, že ji převede do 32bajtového hashe.
  4. Chrome hash vždy rozdělí tak, že vznikne prefix o délce čtyř bajtů.
  5. Tento prefix Chrome zašifruje veřejným klíčem služby Safe Browsing a odešle na server určený k anonymizaci dat.
  6. Tento server odstraní potenciální uživatelské identifikátory a zašifrovaný prefix přepošle na server služby Safe Browsing. (Sám klíč k dešifrování nezná.) Použije k tomu spojení šifrované protokolem TLS, které mísí požadavky z různých zařízení.
  7. Server služby Safe Browsing dešifruje prefix a identifikuje všechny hashe se shodným prefixem.
  8. Chrome tyto kompletní hashe získá a na lokální úrovni je porovná s kompletním hashem stránky, kterou navštěvujete.
  9. Pokud je nalezena shoda, Chrome vás upozorní na to, že vstupujete na známý phishingový web.

Aby server Googlu neviděl vaši adresu IP nebo jiné identifikátory, projde požadavek přes prostředníka v podobě anonymizačního serveru. Tyto servery používají protokol Oblivious HTTP a jejich provoz pro Google zajistí firma Fastly.

Databáze na výkonných serverech může růst tempem, jakým potřebuje, přičemž je vždycky aktuální. Respektive neexistuje žádný aktuálnější prostředek. I přes všechny optimalizace ovšem každá online kontrola zvyšuje prodlevu při načítání stránky. Proto lokální seznamy neskončí.

Safe Browsing novinky (2).png
Diagram kontroly online v reálném čase

Google na každém zařízení do mezipaměti uloží seznam hashů známých bezpečných domén a Chrome ho zkontroluje jako první. Seznam se bude stahovat na pozadí. Není jasné, jak bude velký ani jak dynamicky se bude měnit.

Současně si prohlížeč zapamatuje stránky, které jste už navštívili. Položky v mezipaměti nebudou mít nekonečnou platnost, v případě lokální shody ovšem nebude odeslán požadavek na ověření adresy stránky směrem ke službě Safe Browsing.

Lokální ověření se dále použije, pokud kontrola oproti serverové databázi selže, případně bude pomalá. Pak se budou adresy lokálně kontrolovat po blíže nespecifikovanou dobu. Chystá se také asynchronní kontrola, kdy se stránka začne načítat a souběžně bude vyslán kontrolní požadavek.

Kontrola v reálném čase by v tuto chvíli již měla být aktivní v posledních verzích Chromu napříč podporovanými platformami. Není třeba ji ručně zapínat.

Zdroje: Google Security Blog

Přečtěte celý článek