Přeskočit na obsah
_CORE
AI & Agentic Systems Core Informační Systémy Cloud & Platform Engineering Data Platforma & Integrace Security & Compliance QA, Testing & Observability IoT, Automatizace & Robotika Mobile & Digital Banky & Finance Pojišťovnictví Veřejná správa Obrana & Bezpečnost Zdravotnictví Energetika & Utility Telco & Média Průmysl & Výroba Logistika & E-commerce Retail & Loyalty
Reference Technologie Blog Knowledge Base O nás Spolupráce Kariéra
Pojďme to probrat

CSRF ochrana — Cross-Site Request Forgery

01. 01. 2024 1 min čtení intermediate

CSRF útok přinutí přihlášeného uživatele provést nechtěnou akci. Prohlížeč automaticky přiloží cookies, útočník toho využívá.

Jak CSRF funguje

Uživatel přihlášen na bank.com. Navštíví evil.com se skrytým formulářem, který odešle POST na bank.com/transfer. Prohlížeč přiloží session cookie.

Obrana: CSRF Token + SameSite

Django — vestavěná ochrana:

Express.js

const csrf = require(‘csurf’); app.use(csrf({ cookie: true }));

SameSite Cookie

Set-Cookie: session=abc; SameSite=Lax; Secure; HttpOnly

Moderní přístup

  • SameSite=Lax je default v moderních prohlížečích
  • CSRF token pro state-changing operace
  • API s Bearer token v Authorization headeru je imunní vůči CSRF

Klíčový takeaway

SameSite=Lax + CSRF tokeny pro formuláře. API s Bearer tokenem je proti CSRF imunní.

securitycsrfweb