Keamanan web modern bukan hanya soal memperkuat backend dan menambal bug aplikasi. Salah satu cara paling efektif untuk menambah lapisan perlindungan adalah dengan mengatur HTTP Security Headers di server Anda.
Headers ini bagaikan perintah langsung kepada browser: “Apa yang boleh dan tidak boleh dilakukan saat memuat situs ini.” Mereka bekerja sebagai pengatur perilaku, pencegah serangan, dan penjaga interaksi antara user dan website Anda.
Mengapa HTTP Security Headers Penting?
Security headers memberi kontrol tambahan yang sangat penting bagi keamanan aplikasi Anda. Mereka:
- Melindungi dari clickjacking, XSS, MIME sniffing, dan injeksi konten
- Memberi petunjuk ke browser untuk berperilaku aman
- Tidak memengaruhi performa karena hanya berupa metadata HTTP
Dengan konfigurasi yang tepat, Anda dapat mencegah berbagai jenis serangan siber hanya dari sisi server—tanpa mengubah satu baris pun dari kode aplikasi.
Daftar HTTP Security Headers yang Harus Anda Gunakan
1. Content-Security-Policy
(CSP)
Fungsi: Membatasi sumber daya eksternal yang bisa dimuat di halaman (script, style, font, dll).
Contoh:
httpCopyEditContent-Security-Policy: default-src 'self'; script-src 'self' https://trusted.com
CSP mencegah XSS dengan hanya mengizinkan script dari sumber tepercaya.
2. Strict-Transport-Security
(HSTS)
Fungsi: Memaksa penggunaan HTTPS secara eksklusif.
Contoh:
httpCopyEditStrict-Transport-Security: max-age=31536000; includeSubDomains; preload
Header ini penting untuk mencegah downgrade attack dan cookie hijacking di koneksi tidak aman.
3. X-Frame-Options
Fungsi: Mencegah halaman Anda ditampilkan dalam iframe situs lain (proteksi terhadap clickjacking).
Contoh:
httpCopyEditX-Frame-Options: DENY
Atau:
httpCopyEditX-Frame-Options: SAMEORIGIN
4. X-Content-Type-Options
Fungsi: Mencegah browser menebak jenis konten dari file, sehingga menghindari eksekusi file berbahaya.
Contoh:
httpCopyEditX-Content-Type-Options: nosniff
5. Referrer-Policy
Fungsi: Mengatur informasi referer apa yang dikirim saat pengguna berpindah halaman.
Contoh:
httpCopyEditReferrer-Policy: no-referrer
Atau gunakan:
hCopyEditReferrer-Policy: strict-origin-when-cross-origin
6. Permissions-Policy
(sebelumnya Feature-Policy)
Fungsi: Mengatur akses ke fitur-fitur seperti kamera, mikrofon, lokasi, dan lainnya.
Contoh:
httpCopyEditPermissions-Policy: geolocation=(), microphone=()
Cara Mengatur di Server
Apache (via .htaccess
):
apacheCopyEditHeader set Content-Security-Policy "default-src 'self';"
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
Header set X-Frame-Options "DENY"
Header set X-Content-Type-Options "nosniff"
Header set Referrer-Policy "no-referrer"
Header set Permissions-Policy "geolocation=(), microphone=()"
Nginx (di blok server
):
nginxCopyEditadd_header Content-Security-Policy "default-src 'self';";
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
add_header X-Frame-Options "DENY";
add_header X-Content-Type-Options "nosniff";
add_header Referrer-Policy "no-referrer";
add_header Permissions-Policy "geolocation=(), microphone=()";
Kesimpulan
HTTP Security Headers adalah salah satu metode paling ringan namun sangat powerful dalam meningkatkan keamanan website. Dengan beberapa baris konfigurasi, Anda bisa melindungi pengguna dari banyak jenis serangan tanpa perlu modifikasi besar-besaran pada aplikasi.
Untuk implementasi header keamanan dan infrastruktur web yang lebih kokoh, Webklik hadir sebagai partner teknologi Anda. Kami tidak hanya membangun website kami merancangnya untuk tahan terhadap ancaman siber modern.