Belajar mengenal Content Security Policy (CSP) terutama untuk website UKM
Content Security Policy (CSP) adalah header keamanan yang memberi tahu browser konten apa yang diizinkan untuk dimuat. CSP dapat digunakan untuk mencegah serangan terhadap pengunjung situs web seperti Cross Site Scripting (XSS) dan Clickjacking

Di era digital yang semakin kompleks, keamanan website menjadi prioritas utama bagi pengembang web. Salah satu mekanisme keamanan yang efektif dan penting adalah Content Security Policy (CSP). Melalui artikel ini, kita akan memahami lebih dalam tentang CSP, pentingnya dalam keamanan website, dan contoh penerapannya.
Apa Itu Content Security Policy (CSP)?
Content Security Policy (CSP) adalah suatu standar keamanan yang bertujuan untuk mencegah serangan Cross-Site Scripting (XSS) dan serangan injeksi kode lainnya. Dengan menentukan sumber-sumber mana saja yang aman, CSP mengontrol dari mana skrip dan konten lainnya dapat dimuat dan dijalankan pada halaman web.
CSP diimplementasikan melalui header HTTP yang dikirim dari server ke browser. Header ini berisi aturan yang menentukan sumber-sumber yang diizinkan untuk memuat skrip, gambar, stylesheet, dan jenis konten lainnya. Contoh header CSP sederhana adalah:
Content-Security-Policy: default-src 'self'; script-src 'self' example.com;
Dalam contoh di atas, default-src 'self'
mengizinkan konten hanya dari domain yang sama, sementara script-src 'self' example.com;
mengizinkan skrip dari domain yang sama dan example.com.
Manfaat Content Security Policy:
-
Pencegahan Serangan XSS:
- Dengan membatasi dari mana skrip dapat dimuat, CSP membantu mencegah serangan XSS, salah satu serangan keamanan web yang paling umum.
-
Mengurangi Risiko Injeksi Kode:
- CSP dapat membantu mengurangi risiko injeksi kode dengan menolak konten yang tidak berasal dari sumber yang diizinkan.
-
Pengendalian Konten Eksternal:
- CSP memberikan kontrol lebih atas konten eksternal yang dapat dimuat, membantu mengurangi ketergantungan pada pihak ketiga yang mungkin tidak aman.
Dengan CSP, Anda dapat mencegah browser memuat skrip, gambar, CSS, dll. dari sumber yang tidak tepercaya seperti situs pihak ketiga atau koneksi yang tidak aman. CSP juga dapat membatasi fungsi tertentu dalam skrip, membatasi tempat browser dapat mengirim data dari formulir yang telah diisi, dan mencegah situs Anda dimuat dalam iframe.
CSP dapat sulit untuk diatur dan beberapa fungsinya tidak dapat diterapkan ke situs WordPress tanpa merusaknya. Mengatur CSP harus dilakukan dengan pengujian yang cermat dalam mode report-only terlebih dahulu untuk menentukan masalah potensial. Really Simple SSL Pro memiliki mode pembelajaran unik yang akan mendeteksi sumber daya yang digunakan oleh pengunjung situs web Anda dan kemudian memungkinkan Anda untuk menyetujuinya untuk membuat CSP dengan mudah tanpa merusak situs web Anda.
CSP dapat digunakan untuk mencegah serangan terhadap pengunjung situs web seperti Cross Site Scripting (XSS) dan Clickjacking.
XSS adalah serangan di mana penyerang menyuntikkan kode berbahaya ke situs web yang dapat dieksekusi oleh browser pengunjung situs web. Clickjacking adalah serangan di mana penyerang mencoba menipu pengguna untuk mengklik elemen di halaman web yang tidak mereka maksudkan untuk diklik.
CSP bekerja dengan memberi tahu browser sumber daya apa yang diizinkan untuk dimuat. Misalnya, CSP dapat digunakan untuk membatasi browser hanya memuat skrip dari domain situs web Anda sendiri. Ini dapat membantu mencegah serangan XSS di mana penyerang mencoba menyuntikkan kode berbahaya ke situs web Anda dari domain lain.
CSP dapat diterapkan ke situs web dengan menambahkan header HTTP Content-Security-Policy ke respons HTTP. Header ini berisi daftar sumber daya yang diizinkan untuk dimuat oleh browser.
CSP adalah alat keamanan yang sangat efektif untuk melindungi situs web dari serangan. Namun, CSP dapat sulit untuk diatur dan jika tidak dilakukan dengan benar, dapat merusak situs web Anda.
Oleh karena itu, penting untuk menguji CSP secara menyeluruh dalam mode report-only sebelum menerapkannya dalam mode enforce. Mode report-only akan memungkinkan Anda untuk melihat sumber daya mana yang diblokir oleh CSP dan melakukan penyesuaian yang diperlukan.
Berikut adalah beberapa contoh penerapan CSP dalam dunia digital:
- Situs web bank menggunakan CSP untuk membatasi browser hanya memuat sumber daya dari domain situs web bank itu sendiri. Ini membantu mencegah serangan XSS di mana penyerang mencoba menyuntikkan kode berbahaya ke situs web bank dari domain lain.
- Situs web e-commerce menggunakan CSP untuk membatasi browser hanya memuat sumber daya dari domain situs web e-commerce itu sendiri dan dari domain tepercaya lainnya seperti penyedia pembayaran. Ini membantu mencegah serangan XSS dan Clickjacking.
- Situs web berita menggunakan CSP untuk membatasi browser hanya memuat sumber daya dari domain situs web berita itu sendiri dan dari domain tepercaya lainnya seperti situs web penyedia layanan konten. Ini membantu mencegah serangan XSS dan Clickjacking.
Secara keseluruhan, CSP adalah alat keamanan yang sangat efektif untuk melindungi situs web dari serangan. Namun, penting untuk menguji CSP secara menyeluruh dalam mode report-only sebelum menerapkannya dalam mode enforce.