Memperkuat auth di sisi frontend
Token, konten pengguna, dan cookie adalah celah serangan di frontend. Saya menganggapnya tanggung jawab saya dan menutup tiga jalur serangan yang umum.
Tiga jalur serangan, masing-masing ditutup dengan kontrol yang jelas.
01 · Masalahnya
Auth dan konten buatan user adalah tempat bug frontend berubah jadi bug keamanan. Tidak ada yang meminta pekerjaan ini. Saya melihat risikonya dan memulainya sendiri.
02 · Batasan
Sesi yang sudah ada harus tetap jalan, jadi tidak ada user yang ter-logout. Embed pihak ketiga juga harus tetap bisa dimuat.
03 · Yang saya lakukan
Rotasi refresh token
Access token berumur pendek; setiap refresh token hanya berlaku sekali, jadi token curian langsung ketahuan saat dipakai ulang.
Sanitasi sebelum render
DOMPurify di setiap jalur yang merender HTML dari user, jadi script sisipan tidak pernah sampai ke DOM.
Cookie dan CORS dikunci
Flag SameSite dan Secure ditambah kebijakan CORS yang ketat untuk menahan request lintas situs.
04 · Hasil
- 3jalur serangan ditutup: XSS, CSRF, token replay
05 · Kalau diulang, ini yang saya ubah
Lain kali saya akan menambahkan handshake dan menyimpan fingerprint di cookie untuk semua user, baik yang sudah login maupun belum.