Cookie dan sesi untuk Alpine.js
high5 titik pemeriksaan
Cookie sesi adalah kunci akun. Atribut yang hilang mengubah satu celah XSS menjadi pengambilalihan akun penuh.
Yang harus ada di Alpine.js
- Atribut Secure pada setiap cookie
- HttpOnly pada cookie sesi
- SameSite=Lax atau Strict pada cookie sesi
- Tidak ada ID sesi di URL atau localStorage
- Rotasi sesi setelah login dan invalidasi saat logout
Cara memperbaiki
- 1Set atribut cookie di level framework agar semua cookie mewarisinya
- 2Pindahkan token dari localStorage ke cookie HttpOnly
Konteks Alpine.js
Lightweight reactive attributes for markup-driven interactivity.
x-html bypasses escaping. Keep CSP strict because Alpine evaluates expressions in the page.