8 Header Keamanan HTTP yang Harus Anda Gunakan Untuk Meningkatkan Keamanan

Diterbitkan: 2022-04-08

Header HTTP Security adalah salah satu bagian paling dasar namun kuat dari keamanan web. Dengan bantuan langkah-langkah keamanan ini, Anda akan dapat meningkatkan keamanan aplikasi web Anda ke tingkat berikutnya. Ini melindungi situs web Anda dari semua serangan yang mungkin harus dihadapi situs web Anda.

Header keamanan HTTP ini sangat kuat sehingga ketika Anda mengaktifkannya, mereka melindungi situs web Anda dari beberapa serangan umum seperti clickjacking, injeksi kode, skrip lintas situs, dan banyak lagi.

Jadi, dalam posting ini, kami akan menjelaskan kepada Anda semua tentang daftar header keamanan HTTP, bagaimana mereka dapat bermanfaat, dan bagaimana Anda dapat menerapkannya.

Tetap disini dan mari kita mulai!

Daftar isi
Apa itu Header Keamanan HTTP?
Mengapa Anda Perlu Menerapkan Header Keamanan HTTP?
Jalankan Pemeriksaan Header Keamanan
Daftar Tajuk Keamanan HTTP Paling Penting
Bagaimana cara menerapkan perbaikan Kerentanan Header Keamanan HTTP di situs web Anda?
Ringkasan
Pertanyaan yang Sering Diajukan

Apa itu Header Keamanan HTTP?

Pada dasarnya, header keamanan HTTP adalah seperangkat perintah atau arahan yang dipertukarkan antara browser web Anda (atau klien web apa pun) dan server web untuk menentukan detail komunikasi HTTP yang terkait dengan keamanan. Pertukaran atau berbagi informasi ini adalah bagian dari protokol HTTP. Perintah atau arahan ini memberi tahu browser Anda apa yang diizinkan untuk ditampilkan atau yang lainnya, untuk situs web Anda, untuk memastikan keamanannya dan tidak ada injeksi malware.

Perintah header keamanan HTTP ini membantu melindungi browser web dan situs web Anda dari ancaman keamanan apa pun seperti serangan peretas atau injeksi kode berbahaya . Jadi, strategi keamanan ini bertindak sebagai sistem pertahanan secara keseluruhan.

Mengapa Anda Perlu Menerapkan Header Keamanan HTTP?

Seperti yang telah Anda perhatikan, ada banyak artikel dan laporan yang beredar di internet tentang peningkatan puncak serangan siber dan kasus pelanggaran data dalam beberapa tahun terakhir. Dan salah satu penyebab utama dari semua kecelakaan ini adalah tindakan keamanan yang buruk dan kesalahan konfigurasi.

Header keamanan HTTP ini membantu menghentikan beberapa serangan peretas yang paling umum, injeksi malware, clickjacking, injeksi skrip berbahaya, dll. Header ini memberikan lapisan perlindungan ekstra dengan membatasi beberapa aktivitas antara server dan browser web, saat aplikasi web sedang berlari.

Meskipun sudah banyak HTTP header yang tersedia, intinya adalah mana yang harus Anda terapkan untuk mendapatkan perlindungan yang lebih baik. Sama seperti teknologi web apa pun yang berubah seiring waktu, header HTTP baru akan muncul dan pergi tergantung pada dukungan browser.

Jadi, penting bagi Anda untuk memutuskan header HTTP mana yang harus diterapkan dan mana yang tidak, tetapi untuk saat ini, Anda harus menerapkan 8 daftar header keamanan HTTP ini sehingga Anda bisa mendapatkan perlindungan dari beberapa ancaman paling umum.

Selain itu, header Keamanan HTTP juga dapat membantu meningkatkan skor SEO situs web Anda.

Jalankan Pemeriksaan Header Keamanan

Sebelum Anda melangkah lebih jauh, hal pertama yang harus Anda lakukan adalah menjalankan pemeriksaan header keamanan di situs web Anda. Dengan bantuan yang akan mudah bagi Anda untuk melihat header keamanan penting apa yang hilang di situs web Anda.

Untuk melakukannya, Anda perlu mengunjungi situs web header keamanan, dan memasukkan alamat situs web Anda seperti yang ditunjukkan pada gambar di bawah ini:

Run HTTP security headers check

Saat Anda memasukkan URL situs web dan menekan tombol Pindai, laporan komprehensif akan dibuat, menunjukkan semua header keamanan HTTP vital yang hilang jika ada dalam warna merah, dan Nilai yang menunjukkan, seberapa aman situs web Anda.

HTTP security header scan results

Dari gambar di atas, Anda dapat melihat header keamanan HTTP tidak terdeteksi. yang telah kami jelaskan dan cantumkan di bawah ini.

Daftar Tajuk Keamanan HTTP Paling Penting

Mari kita periksa beberapa header keamanan HTTP terpenting yang harus Anda terapkan pada aplikasi web Anda untuk meningkatkan keamanan dan mengaktifkan lapisan perlindungan ekstra.

1. Opsi Bingkai-X

Untuk pertama kalinya, Microsoft telah memperkenalkan Opsi X-Frame di penjelajah internet Microsoft mereka, yang membantu melindungi dari injeksi skrip berbahaya atau serangan skrip lintas situs. Header keamanan HTTP ini melindungi iFrame situs web Anda dengan menginstruksikan browser untuk menanyakan apakah akan memproses iFrame ke situs web atau tidak.

Ini terutama melindungi dari semua serangan clickjacking di mana penyerang mengimplementasikan beberapa lapisan pada tautan atau tombol untuk mengarahkan pengguna ke halaman lain dan mencuri informasi penting mereka.

Sintaks yang harus diikuti:

Instruksi Penjelasan:

DENY : Arahan ini tidak akan mengizinkan iFrame untuk merender

SAMAORIGIN: Arahan ini akan memungkinkan rendering iFrames hanya dengan Asal yang sama.

ALLOW- FROM: Arahan ini akan mengizinkan rendering iFrame hanya dari URL tertentu.

2. Ketat-Transportasi-Keamanan

Header Strict-Transport-Security atau HTTPS Strict Transport Security membantu melindungi dari serangan MIM dan pembajakan cookie saat diaktifkan. Arahan ini memaksa browser untuk menggunakan HTTPS daripada komunikasi HTTP.

Biarkan kami memahami cara kerjanya jika Anda menjalankan situs web apa pun di HTTP dan bermigrasi ke sana di HTTPS. Pengunjung lama Anda akan tetap mencoba mengakses URL lama dengan HTTP. Karena Anda telah memigrasikan situs web Anda ke HTTPS, URL lama akan mengalihkannya ke yang baru.

Tapi intinya adalah, pengunjung Anda masih dapat mengakses versi situs web Anda yang tidak terenkripsi sebelum dialihkan ke URL terenkripsi yang baru. Di sela-sela proses tersebut, para peretas mendapat kesempatan untuk melakukan serangan MIM atau Man in the middle.

Tetapi ketika Anda mengaktifkan Strict-Transport-Security, browser akan mendapatkan instruksi untuk tidak memuat situs web HTTP, melainkan memaksa browser untuk berkomunikasi melalui HTTPS.

Sintaks yang harus diikuti:

Instruksi Penjelasan

max-age=<expire-time> : Direktif ini memungkinkan Anda untuk memutuskan berapa lama (dalam detik) browser dapat mengaksesnya melalui HTTPS.

max-age=<waktu-kedaluwarsa>; includeSubDomains : Jika direktif ini disebutkan, berarti aturan di atas juga berlaku untuk semua subdomain situs web.

max-age=<waktu-kedaluwarsa>; preload : Arahan ini menunjukkan situs web telah terdaftar dalam daftar situs HTTPS global.

3. Kebijakan Keamanan Konten

Header keamanan HTTP ini menginstruksikan browser untuk memuat hanya konten yang disebutkan dalam kebijakan. Ini berarti Anda akan memiliki kekuatan untuk mengontrol sumber daya situs web Anda dan mengizinkan browser memuat hanya sumber daya konten yang telah Anda masukkan ke daftar putih.

Ini membantu browser untuk memutuskan dari mana memuat sumber konten seperti skrip, gambar, atau CSS. Jika Anda dapat menerapkan header keamanan HTTP ini dengan sukses, itu akan melindungi situs web Anda dari Clickjacking, Cross-Site Scripting (XSS), dan injeksi kode berbahaya apa pun.

Meskipun tidak 100% menjamin perlindungan, ini membantu mencegah dan membatasi kemungkinan kerusakan. Bahkan, sebagian besar browser sekarang mengidentifikasi masalah serius ini dan mulai mendukungnya.

Sintaks yang harus diikuti:

Penjelasan Instruksi

<policy-directive> : Anda dapat memasukkan semua policy directive seperti script-src(CSS) , img-src (Images), atau style-src (stylesheet) dan mengizinkannya untuk memuat.

4. X-konten-Jenis-Opsi

Jenis header ini memungkinkan Anda membatasi atau mencegah sniffing tipe MIME dengan memberi tahu browser bahwa tipe MIME sengaja dikonfigurasi di server. Pada dasarnya, dalam sniffing MIME, ini memberikan kesempatan bagi penyerang untuk menyuntikkan skrip berbahaya yang dapat dieksekusi.

Misalnya, penyerang telah menyuntikkan sumber daya berbahaya apa pun yang telah mengubah respons sumber daya lain yang tidak bersalah, katakanlah gambar. Karena sniffing MIME, browser akan berhenti merender jenis konten gambar daripada mulai mengeksekusi sumber daya berbahaya yang telah disuntikkan.

Saat Anda mengaktifkan header ini, itu akan mempercayakan dan memaksa browser untuk hanya mengikuti tipe MIME yang telah ditentukan di header tipe Konten. Dengan cara ini Anda dapat dengan mudah melindungi dan mencegah injeksi skrip berbahaya atau serangan skrip lintas situs.

Sintaks yang harus diikuti:

Penjelasan Instruksi:

Arahan nosniff akan segera memblokir permintaan jika tujuan dari permintaan jenis:

  • gaya
  • Tipe MIME bukan teks/CSS atau ketik Script
  • Tipe MIME bukan tipe JavaScript MIME

5. Kebijakan Perujuk

Keamanan tajuk ini akan memungkinkan Anda untuk mengontrol apakah informasi perujuk harus diungkapkan? Jika ya maka berapa.

Namun, untuk permintaan lain, browser hanya akan membagikan informasi tentang asal.

Sintaks yang harus diikuti:

penjelasan instruksi:

origin-when-cross-origin: Browser akan membagikan informasi rujukan lengkap untuk permintaan asal yang sama dan permintaan lainnya, browser hanya akan membagikan tentang asal.

no-referrer-when-downgrade: Browser tidak akan membagikan informasi rujukan saat mengirim tajuk Referrer untuk permintaan ke tujuan yang kurang aman.

6. Fitur atau Izin-Kebijakan

Header keamanan ini memungkinkan situs web memutuskan apakah akan menyediakan akses ke fitur atau API tertentu di browser atau tidak. Dengan bantuan tajuk ini, Anda dapat dengan mudah mengontrol fungsionalitas aplikasi apa pun di browser Anda, yang dapat merusak privasi Anda dan mengizinkannya hanya jika Anda menganggapnya sah dan perlu.

Misalnya, jika Anda tidak ingin situs web mengakses mikrofon, webcam, atau lokasi Anda dan ingin membatasi fungsinya dengan mengikuti sintaks yang diberikan di bawah ini:

sintaks untuk mengikuti:

Penjelasan Instruksi:

<directive> dapat berupa apa saja, seperti Accelerometer, autoplay, sensor cahaya sekitar, baterai, kamera, mikrofon, atau geolokasi.

sedangkan <allowlist> adalah daftar asal, yang dapat mengambil satu atau lebih nilai seperti 'none', 'self', dll. diletakkan secara terpisah. Untuk referensi Anda, Anda dapat melihat daftar lengkap arahan dan daftar yang diizinkan dari sini.

7. Lintas Domain yang Diizinkan X

Dengan bantuan Header keamanan HTTP ini, Anda dapat memberikan instruksi ke browser dan memiliki kendali atas semua permintaan yang datang dari lintas domain. Saat Anda mengaktifkan tajuk ini, Anda akan membatasi situs web Anda untuk memuat aset situs web yang tidak perlu yang berasal dari domain lain. Sehingga sumber daya website dapat digunakan secara efisien.

Header keamanan ini opsional dan tidak perlu memilikinya, tetapi ada baiknya untuk menginstal dan mengaktifkannya.

Sintaks yang harus diikuti:

8. Perlindungan XSS

Perlindungan XSS atau header perlindungan skrip lintas situs diperkenalkan untuk melindungi dari serangan skrip lintas situs. Serangan ini dianggap sangat umum dan efektif, oleh karena itu sebagian besar browser web mengaktifkan perlindungan XSS di dalamnya secara default.

Ketika penyerang mencoba menginfeksi situs web dengan menyuntikkan kode javascript berbahaya selama permintaan HTTP untuk mencuri informasi rahasia seperti data transaksi, data pribadi, dll. Saat terdeteksi adanya serangan skrip lintas situs, header perlindungan XSS akan menyaring dan berhenti mereka segera.

Namun, filter ini hanya tersedia di browser lama, dan sekarang tidak diperlukan lagi untuk browser modern. Terutama jika Anda telah menerapkan kebijakan keamanan yang sangat baik dan ada baiknya untuk melanjutkan dan memilikinya jika pengunjung Anda masih menggunakan browser lama, yang tidak memahami kebijakan keamanan konten.

Sintaks yang harus diikuti:

Penjelasan:

0 – ini akan menonaktifkan perlindungan XSS

1 – Aktifkan perlindungan XSS

1; mode=block – Menghentikan browser untuk memuat halaman web sepenuhnya, ketika serangan skrip lintas situs terdeteksi.

1; report=<reporting-uri> – Ketika serangan XSS terdeteksi, bagian yang tidak aman akan diblokir oleh browser dan melaporkannya

Bagaimana cara menerapkan perbaikan Kerentanan Header Keamanan HTTP di situs web Anda?

Jika penyedia layanan hosting web Anda mengizinkan Anda untuk memiliki akses ke salah satu dari dua file .htaccess atau file wp-config.php. Maka akan mudah untuk menerapkan perbaikan Kerentanan Header Keamanan HTTP di situs web Anda dengan menambahkan header keamanan HTTP di mana saja.

Di WPOven Anda akan menyediakan akses SSH, yang melaluinya Anda dapat dengan mudah mengakses File Manager dan mengedit file .htaccess Anda.

Langkah 1 : Pertama, Anda harus mengaktifkan akses SSH untuk situs tersebut. Untuk melakukan ini, Anda perlu mengakses situs dari dasbor WPOven .

ssh 1 8 HTTP Security Headers You Must Use To Enhance Security

Navigasikan ke bagian 'Alat' .

ssh 2 8 HTTP Security Headers You Must Use To Enhance Security

Kemudian dari bagian 'Alat' , Anda perlu menekan tombol 'Aktifkan akses SSH' di bagian bawah halaman.

ssh 3 8 HTTP Security Headers You Must Use To Enhance Security

Langkah 2 : Setelah akses SSH diaktifkan untuk situs tersebut, Anda kemudian dapat masuk melalui aplikasi pihak ketiga seperti Putty atau PenguiNet menggunakan kredensial masuk SFTP situs Anda

Namun, Anda juga bisa mendapatkan akses ke file .htaccess atau wp-config.php Anda, langsung melalui klien FTP yang dikenal sebagai File Zilla.

Yang perlu Anda lakukan hanyalah mengikuti langkah-langkah yang diberikan di bawah ini:

  1. Pertama, Anda perlu terhubung ke situs WordPress Anda menggunakan klien FTP. Ini akan memungkinkan Anda untuk mengedit file .htaccess Anda. File ini dapat ditemukan di direktori root situs WordPress Anda.
  2. Jika file .htaccess tidak terlihat, Anda mungkin ingin memeriksa file tersembunyi.
  3. Tidak perlu memiliki editor khusus, Anda dapat menulis kode di editor teks apa pun seperti Notepad.
  4. Anda harus menulis kode ini dan menambahkannya ke file .htaccess. Disarankan untuk menambahkannya di akhir file .htaccess.
  5. Ketika Anda menemukan situs tersebut, unduh ke drive lokal Anda dan kemudian buka di editor teks apa pun. Opsi paling sederhana adalah Notepad standar. Tambahkan kode berikut di bagian bawah file:

Ubah atribut, arahan, dan nilai sesuai kebutuhan, simpan dan unggah.

Atau, Anda juga dapat mengakses file konfigurasi server web Anda dan menerapkan header keamanan ini. Namun, jika Anda tidak ingin membuat perubahan sendiri dan Anda adalah klien WPOven, Anda dapat membuka tiket dukungan dan kami dapat melakukannya dengan cepat untuk Anda.

Ringkasan

Dari posting di atas, Anda dapat melihat betapa pentingnya mengaktifkan header keamanan HTTP di situs web Anda. Dan sejauh mana mereka memberikan pengerasan keamanan situs web. Namun, sekuritas ini telah diterapkan secara default di browser terbaru dan canggih yang tersedia. Tapi tetap saja, tidak ada alasan saya menemukan bahwa Anda tidak boleh menggunakannya.

Jika Anda tidak memiliki akses ke server situs web Anda, Anda merasa kesulitan. Itu selalu lebih baik untuk meminta bantuan dari para profesional. Lebih baik Anda menghubungi penyedia hosting web Anda dan meminta mereka untuk menerapkan header keamanan HTTP di situs web Anda.

Pertanyaan yang Sering Diajukan

Apakah header HTTP aman?

Ya, header keamanan HTTP adalah salah satu arahan pengerasan keamanan siber yang paling penting. Seluruh informasi di header HTTP dienkripsi.

Apa saja tajuk yang menambah keamanan?

Beberapa Header yang menambah keamanan pada website adalah:
1. Opsi Bingkai-X
2. Ketat-Transportasi-Keamanan
3. Kebijakan Keamanan Konten
4. X-konten-Jenis-Opsi
5. Kebijakan Perujuk
6. Fitur atau Izin-Kebijakan
7. Lintas Domain yang Diizinkan X
8. Perlindungan XSS

Apa itu header CSP?

CSP atau header Kebijakan Keamanan Konten menginstruksikan browser untuk memuat hanya konten yang disebutkan dalam kebijakan. Ini berarti Anda akan memiliki kekuatan untuk mengontrol sumber daya situs web Anda dan mengizinkan browser memuat hanya sumber daya konten yang telah Anda masukkan ke daftar putih.