Digital Transformation

HttpOnly Cookie (Atribut Cookie Anti-XSS)

Vito Atmo
Vito Atmo·4 Mei 2026·3 kali dibaca·2 min baca

TL;DR: HttpOnly adalah flag pada cookie yang mencegah JavaScript di browser membaca isi cookie melalui document.cookie. Dengan HttpOnly aktif, cookie sesi tetap aman walaupun halaman berhasil di-inject skrip jahat (XSS). Atribut ini wajib di setiap cookie sesi, sering dilewatkan saat tim memakai library auth lama atau implementasi custom.

HttpOnly adalah atribut yang ditambahkan pada header Set-Cookie agar cookie hanya dapat dibaca dan dikirim oleh browser pada request HTTP, bukan oleh skrip klien. Tanpa HttpOnly, cookie bisa diambil dengan satu baris JavaScript dan dikirim ke server attacker. Atribut ini bekerja paling efektif saat dipasang berdampingan dengan SameSite dan [CSP](/glosarium/csp-content-security-policy) sebagai bagian dari cookie security stack modern.

HttpOnly vs Secure vs SameSite

AtributTujuan
HttpOnlyTutup akses dari JavaScript
SecureHanya kirim cookie via HTTPS
SameSiteAtur pengiriman lintas situs

Ketiganya melindungi vektor serangan berbeda dan idealnya selalu diaktifkan bersama untuk cookie sesi.

Kenapa Penting?

Insiden pencurian sesi via XSS masih jadi top OWASP setiap tahun. Saat audit klien, Vito Atmo beberapa kali menemukan cookie sesi tanpa HttpOnly di proyek lawas yang dipindahkan tanpa modernisasi. Memasang HttpOnly tidak menambah biaya dan tidak merusak UX, tapi dampaknya besar: token sesi tidak bisa diekspos sekalipun ada celah XSS yang belum ketahuan.

Pertanyaan Umum

Apakah HttpOnly mencegah semua serangan XSS?

Tidak. HttpOnly hanya mencegah pencurian cookie via skrip. XSS tetap bisa melakukan aksi atas nama user lewat fetch request berbasis cookie.

Lebih aman dibandingkan localStorage untuk token sensitif. Pasangkan dengan SameSite=Lax dan Secure agar perlindungan lengkap.

Bagikan