Apa itu Cross-Site Scripting?
XSS adalah celah keamanan yang memungkinkan penyerang menyisipkan script berbahaya ke halaman web yang dilihat pengguna lain. Ini terjadi ketika aplikasi menampilkan input pengguna tanpa sanitasi yang tepat.
Tipe-tipe XSS
1. Stored XSS
Script disimpan di server (misalnya di komentar atau postingan forum).
2. Reflected XSS
Script ada di URL dan dikirim ke korban melalui phishing.
3. DOM-based XSS
Eksploitasi terjadi sepenuhnya di sisi klien melalui manipulasi DOM.
Pencegahan
// Di Laravel — Blade otomatis escape output
{{ $comment->content }} // Aman
// Jangan gunakan ini untuk konten tidak tepercaya
{!! $comment->content !!} // Berbahaya!
Kesimpulan
XSS bisa dicegah dengan: (1) selalu escape output, (2) Content Security Policy headers, (3) validasi dan sanitasi input, (4) HTTP-only cookies untuk session.