Kesan
Ketiadaan pengepala keselamatan membolehkan penyerang melakukan clickjacking, mencuri kuki sesi atau melaksanakan skrip merentas tapak (XSS) [S1]. Tanpa arahan ini, penyemak imbas tidak boleh menguatkuasakan sempadan keselamatan, yang membawa kepada potensi exfiltration data dan tindakan pengguna yang tidak dibenarkan [S2].
Punca Punca
Isu ini berpunca daripada kegagalan untuk mengkonfigurasi pelayan web atau rangka kerja aplikasi untuk memasukkan pengepala keselamatan HTTP standard. Walaupun pembangunan sering mengutamakan HTML berfungsi dan CSS [S1], konfigurasi keselamatan sering ditinggalkan. Alat pengauditan seperti Balai Cerap MDN direka untuk mengesan lapisan pertahanan yang hilang ini dan memastikan interaksi antara penyemak imbas dan pelayan selamat [S2].
Butiran Teknikal
Pengepala keselamatan menyediakan penyemak imbas arahan keselamatan khusus untuk mengurangkan kelemahan biasa:
- Dasar Keselamatan Kandungan (CSP): Mengawal sumber yang boleh dimuatkan, menghalang pelaksanaan skrip tanpa kebenaran dan suntikan data [S1].
- Keselamatan Pengangkutan Ketat (HSTS): Memastikan penyemak imbas hanya berkomunikasi melalui sambungan HTTPS selamat [S2].
- X-Frame-Options: Menghalang aplikasi daripada dipaparkan dalam iframe, yang merupakan pertahanan utama terhadap clickjacking [S1].
- X-Content-Type-Options: Menghalang pelayar daripada mentafsir fail sebagai jenis MIME yang berbeza daripada yang ditentukan, menghentikan serangan menghidu MIME [S2].
Bagaimana FixVibe mengujinya
FixVibe boleh mengesan ini dengan menganalisis pengepala respons HTTP aplikasi web. Dengan menanda aras keputusan terhadap piawaian Balai Cerap MDN [S2], FixVibe boleh membenderakan pengepala yang hilang atau tersalah konfigurasi seperti CSP, HSTS dan- XXCV.
Betulkan
Kemas kini pelayan web (cth., Nginx, Apache) atau perisian tengah aplikasi untuk memasukkan pengepala berikut dalam semua respons sebagai sebahagian daripada postur keselamatan standard [S1]:
- Polisi-Keselamatan-Kandungan: Hadkan sumber sumber kepada domain yang dipercayai.
- Keselamatan-Pengangkutan-Ketat: Kuatkuasakan HTTPS dengan
max-ageyang panjang. - X-Content-Type-Options: Tetapkan kepada
nosniff[S2]. - X-Frame-Options: Tetapkan kepada
DENYatauSAMEORIGINuntuk mengelakkan clickjacking [S1].
