Vlastnost SameSite
Od verze Chrome 51 byl do cookies prohlížeče přidán nový atribut SameSite, který zabraňuje útokům CSRF a sledování uživatelů (škodlivému získávání cookies třetími stranami) a omezuje cookies třetích stran, čímž snižuje bezpečnostní rizika.
SameSite definovaný v RFC6265bis:Přihlášení k hypertextovému odkazu je viditelné.
O CSRF Attack Rekapitulaci:
Vlastnost SameSite lze nastavit na tři hodnoty:Přísný、Lax、Žádný。
Striktní: Přísně zakazujte třetím stranám získávat cookies a za žádných okolností neposílejte cookies při cross-site; Cookies budou zahrnuty pouze tehdy, pokud URL aktuální stránky odpovídá cílovému požadavku. Toto pravidlo je příliš přísné a může způsobit velmi špatný uživatelský zážitek. Například pokud je na aktuální webové stránce odkaz na GitHub, uživatelé nebudou mít GitHub cookies při kliknutí na skok a skok byl vždy odhlášen.
Laxní: Zabránit křížovému přístupu přes web, ve většině případů je zakázáno získávat cookies, kromě požadavků GET (odkazy, přednačítání, formuláře GET), které směřují na cílovou URL; Jakmile je nastavena přísná nebo laxní, útoky CSRF jsou v podstatě eliminovány. Samozřejmě za předpokladu, že uživatelský prohlížeč podporuje vlastnost SameSite.
Atribut SameSiteVýchozí SameSite=Lax[Tato operace se vztahuje na verze po vydání stabilní verze Chrome 80 od Googlu dne 4. února 2019]
Žádný: Není žádný limit.
Atribut Secure musí být také nastaven (cookies lze posílat pouze přes protokol HTTPS), jinak nebude platný. [Tato operace se vztahuje na verze po vydání stabilní verze Chrome 80 od Googlu dne 4. února 2019]
Otestujte vlastnost SameSite
Dynamicky načtou obrázek místa A přes konzoli F12 na místě A, kód je následující:
Z síťového požadavku vidíme, že když site A požádá o obrázek doménového jména site A, tak to uděláNoste sušenky(SameSite nemá žádná nastavení, tj. Lax), jak je vidět na obrázku níže:
Náhodně najdeme stránku B a pak dynamicky načteme obrázek stránky A a najdeme jiNenosímJakákoli sušenka, jak je uvedeno níže:
(Konec)
|