Defaults.Exposed

Defaults.ExposedPerbaikan › Header isolasi lintas-origin (COOP / CORP / COEP)

Cara memperbaiki Header isolasi lintas-origin (COOP / CORP / COEP)

Tiga instruksi browser opsional yang mengontrol bagaimana website lain diizinkan untuk berinteraksi dengan milik Anda — membukanya di popup, menyematkan gambar dan skripnya, atau menarik sumber dayanya ke halaman mereka sendiri. Ini adalah penguatan modern, bukan keharusan dasar, dan dalam penilaian kami ketiganya bersifat informatif: ketidakhadiran mereka tidak menurunkan nilai Anda. Tapi dua yang aman menutup celah phishing popup dan pencurian bandwidth yang diam-diam, dan tim IT pembeli yang teliti akan memperhatikan ketika mereka ada.

Intinya bagi bisnis Anda: Dua dari tiga header ini menutup phishing popup yang canggih dan menghentikan website lain dari hotlinking gambar dan skrip Anda (yang memakan bandwidth Anda dan bisa membocorkan data). Keduanya gratis, butuh pengembang sekitar 15 menit, dan tidak akan merusak apa pun. Yang ketiga adalah lanjutan dan bisa merusak analitik, font dan embed — kebanyakan bisnis sebaiknya meninggalkannya. Tidak satu pun dari mereka mempengaruhi nilai Anda, jadi perlakukan mereka sebagai poles, bukan panik: lakukan dua yang aman, lewati yang berisiko kecuali Anda secara khusus membutuhkannya.

Kerugian yang dapat ditimbulkan

Mengapa ini penting. Ini adalah header penguatan browser yang berorientasi ke depan. Dalam metodologi kami ketiganya bersifat informatif — terdaftar dengan nol poin dan tidak pernah mengubah nilai Anda — karena mereka adalah kontrol lanjutan yang bisa dioperasikan website secara sah tanpanya, dan salah satunya bisa merugikan jika diterapkan salah. Kami melaporkan tentang mereka sehingga Anda bisa melihat posisi Anda. Dua yang aman (COOP dan CORP) benar-benar layak ditambahkan: gratis, cepat, dan mereka menutup celah phishing popup dan pencurian sumber daya yang nyata tanpa merusak apa pun.

Apa ini, dalam bahasa sederhana

Ketika seseorang mengunjungi website Anda, browser mereka tidak hanya memuat halaman Anda secara terpisah — ia juga memutuskan bagaimana website lain diizinkan untuk berinteraksi dengan milik Anda. Bisakah website lain membuka website Anda di popup dan memegangnya? Bisakah website lain menjangkau dan menyematkan gambar dan skrip Anda di halaman mereka sendiri? Bisakah website Anda sendiri dengan aman menggunakan fitur browser tertentu yang dikunci?

Tiga header ini adalah instruksi pendek dan tak terlihat yang dikirimkan website Anda kepada browser setiap pengunjung untuk menjawab pertanyaan-pertanyaan itu dengan tepat. Mereka dikenal dengan inisialnya:

Dua di antaranya (COOP dan CORP) aman untuk ditambahkan dan benar-benar berguna. Yang ketiga (COEP) adalah lanjutan dan bisa merusak hal jika diaktifkan sembarangan.

Hal terpenting yang harus diketahui di depan: dalam penilaian kami, ketiganya bersifat informatif. Mereka tidak mempengaruhi nilai Anda. Yang hilang tidak mengorbankan apa pun. Kami melaporkan tentang mereka sehingga Anda bisa melihat posisi Anda dan merapikan kemenangan mudah — bukan agar Anda panik tentang angka.

Dampak finansial yang perlu diketahui

Ini adalah risiko tersegmentasi, bukan yang utama — tapi nyata, dan perbaikannya gratis.

Apa sebenarnya masing-masing itu

COOP — Cross-Origin-Opener-Policy (aman, direkomendasikan)

Ketika website lain membuka website Anda menggunakan popup atau window.open, dua jendela biasanya bisa saling menyimpan referensi. Tautan itu bisa disalahgunakan: pembuka bisa memanipulasi atau mengalihkan jendela Anda, membaca fragmen URL-nya, dan melakukan phishing yang meyakinkan menggunakan domain asli Anda. COOP: same-origin memutus hubungan itu — jendela Anda menjadi terisolasi dari apa pun yang membukanya dari origin berbeda. Penjelajahan normal, tautan internal Anda sendiri, dan navigasi biasa sama sekali tidak terpengaruh.

Seperti apa “baik” itu: Cross-Origin-Opener-Policy: same-origin.

CORP — Cross-Origin-Resource-Policy (aman, direkomendasikan)

Secara default, gambar, skrip, dan file lain Anda bisa disematkan oleh website mana pun di mana saja. CORP: same-origin memberi tahu browser untuk menolak penyematan lintas-origin sumber daya Anda — sehingga website lain tidak bisa hotlink aset Anda atau menariknya ke halaman mereka. Website Anda sendiri masih memuat sumber dayanya sendiri persis seperti sebelumnya; hanya website luar yang diblokir.

Seperti apa “baik” itu: Cross-Origin-Resource-Policy: same-origin. (Jika Anda sengaja menerbitkan aset untuk disematkan orang lain — logo publik, API terbuka — pengembang Anda bisa melonggarkan ini pada respons spesifik tersebut.)

COEP — Cross-Origin-Embedder-Policy (lanjutan, biasanya tinggalkan tidak aktif)

COEP melengkapi “isolasi lintas-origin”: dikombinasikan dengan COOP, ini mengharuskan bahwa setiap sumber daya yang dimuat halaman Anda secara eksplisit ikut serta (melalui CORS atau CORP). Jika dilakukan dengan benar, ini membuka fitur browser tertentu yang kuat (seperti SharedArrayBuffer) dan menambahkan lapisan lain terhadap serangan Spectre-class. Tapi karena mengharuskan opt-in dari semua yang Anda muat, ini dengan mudah merusak alat pihak ketiga — analitik, font, widget tertanam — yang tidak dibangun untuk ikut serta. Kebanyakan website tidak membutuhkan fitur yang dibukanya dan tidak seharusnya menanggung risiko kerusakan.

Seperti apa “baik” itu: untuk website langka yang membutuhkannya, Cross-Origin-Embedder-Policy: credentialless — nilai yang lebih aman, lebih kecil kemungkinan merusak sumber daya eksternal daripada require-corp. Untuk semua orang, tidak ada itu baik-baik saja, dan laporan kami tidak akan menghukum Anda karenanya.

Cara memperbaikinya (gratis, ~15 menit)

Berikan ini kepada orang IT atau pengembang web Anda — perbaikannya gratis. Menambahkan COOP dan CORP adalah beberapa pengaturan satu baris di server atau CDN Anda; tidak ada lisensi dan tidak ada biaya berkelanjutan. Satu-satunya instruksi untuk pemilik adalah: lakukan dua yang aman, dan jangan aktifkan COEP tanpa pengujian.

Ini adalah response header, diatur di mana pun respons website Anda diproduksi — paling mudah di CDN Anda (misalnya Cloudflare) jika Anda memilikinya, atau di konfigurasi server web Anda.

Dua header yang aman (direkomendasikan untuk semua orang)

Cloudflare — Rules → Transform Rules → Modify Response Headers → Set:

Nginx:

add_header Cross-Origin-Opener-Policy   "same-origin" always;
add_header Cross-Origin-Resource-Policy "same-origin" always;

Apache:

Header always set Cross-Origin-Opener-Policy   "same-origin"
Header always set Cross-Origin-Resource-Policy "same-origin"

Ini aman untuk ditambahkan dan tidak akan merusak fungsionalitas normal. Setelah men-deploy, muat ulang beberapa halaman dan konfirmasi website berperilaku persis seperti sebelumnya (seharusnya).

Header lanjutan (hanya jika Anda secara khusus membutuhkannya)

Jangan aktifkan ini tanpa pengujian di staging terlebih dahulu. COEP bisa merusak analitik, font, dan widget tertanam.

Cloudflare: Transform Rules → Set Cross-Origin-Embedder-Policy = credentialless.

Nginx:

add_header Cross-Origin-Embedder-Policy "credentialless" always;

Gunakan credentialless alih-alih require-corp — lebih kecil kemungkinan merusak sumber daya eksternal. Uji secara menyeluruh di staging; perhatikan skrip, font, atau embed pihak ketiga mana pun yang berhenti memuat. Jika sesuatu rusak dan Anda sebenarnya tidak membutuhkan fitur yang dibuka COEP, cukup hapus header — tidak ada penalti untuk tidak memilikinya.

Catatan platform

Kesalahan umum

Catatan tentang nilai

Untuk benar-benar jelas: tidak satu pun dari tiga pemeriksaan ini mempengaruhi nilai Anda. Mereka terdaftar dalam metodologi kami sebagai informatif, dengan nol poin, dan yang hilang tidak pernah merugikan Anda. Kami menampilkan mereka karena dua yang aman adalah peningkatan murah dan nyata, dan karena melihat gambaran penuh berguna — bukan karena ada angka yang harus dipertahankan. Jika Anda tidak melakukan apa pun di sini, nilai Anda persis sama. Jika Anda menambahkan COOP dan CORP, Anda telah menutup beberapa celah nyata (meski tersegmentasi) secara gratis. Itulah cara yang tepat untuk memikirkan halaman ini: poles opsional, dengan satu jebakan yang berlabel jelas untuk dihindari.

FAQ

Ini tidak mempengaruhi nilai saya — haruskah saya repot-repot sama sekali?

Dua di antaranya, ya; satu, mungkin tidak. COOP dan CORP gratis, butuh menit, dan tidak akan merusak website Anda — mereka menutup jalur serangan yang nyata (meski tersegmentasi), jadi layak dilakukan sebagai higienitas murah. COEP adalah lanjutan dan bisa merusak alat pihak ketiga, jadi kebanyakan bisnis sebaiknya meninggalkannya kecuali mereka secara khusus membutuhkan fitur browser yang dibukanya. Tidak satu pun dari tiga perubahan nilai Anda ke sana kemari, jadi tidak ada urgensi — perlakukan dua yang aman sebagai perapian berikutnya saat pengembang Anda ada di website.

Saya tidak teknis — apakah ini sesuatu yang harus saya tindak lanjuti?

Tidak secara pribadi, dan tidak mendesak. Karena ini bersifat informatif, tidak ada yang buruk terjadi pada nilai Anda jika Anda melewatinya. Jika Anda ingin menambahkan dua yang aman, berikan bagian 'Cara memperbaikinya' kepada siapa pun yang mengelola website atau CDN Anda — ini adalah pengaturan satu baris dan perbaikannya gratis. Satu yang harus ditandai secara eksplisit adalah COEP: beritahu mereka untuk tidak mengaktifkannya tanpa pengujian, karena bisa merusak analitik dan widget tertanam.

Apa perbedaan antara ini dan header yang MEMPENGARUHI nilai saya?

Header keamanan web yang dinilai — pengalihan HTTPS, HSTS, Content-Security-Policy, perlindungan clickjacking (X-Frame-Options), dan perlindungan MIME-sniffing — mempertahankan terhadap serangan umum yang banyak dieksploitasi, sehingga kehilangannya mengorbankan poin. Tiga di halaman ini (COOP, CORP, COEP) adalah kontrol isolasi browser yang lebih baru dan lebih terspesialisasi. Ini adalah praktik baik tapi belum ekspektasi baseline, jadi kami melaporkannya tanpa menilainya. Lakukan yang dinilai terlebih dahulu; ini adalah poles di atas.

Apakah menambahkan COOP atau CORP akan merusak website atau integrasi mitra saya?

Pengaturan yang direkomendasikan (keduanya 'same-origin') dirancang untuk aman. COOP hanya memutuskan tautan ke jendela yang dibuka website Anda di popup — penjelajahan normal, halaman Anda sendiri, dan tautan biasa tidak terpengaruh. CORP hanya menghentikan website *lain* dari menyematkan gambar dan skrip Anda; website Anda sendiri memuat sumber dayanya sendiri persis seperti sebelumnya. Jika mitra sejati perlu menyematkan satu halaman spesifik milik Anda, pengembang Anda bisa menggunakan pengaturan yang lebih permisif pada respons spesifik tersebut. Yang benar-benar berisiko rusak adalah COEP — pertahankan yang satu itu agar tidak aktif kecuali sudah diuji.

Apa sebenarnya biaya 'hotlinking' bagi saya?

Ketika website lain menyematkan gambar atau skrip Anda langsung dari server Anda alih-alih meng-host salinan mereka sendiri, setiap pengunjung halaman mereka mengunduhnya dari Anda — pada tagihan bandwidth Anda, dan menampilkan aset Anda dalam konteks yang tidak Anda setujui. Untuk bisnis kecil jarang bencana, tapi itu adalah uang gratis yang keluar, dan CORP ('same-origin') menghentikannya di tingkat browser. Ini juga menutup jalur kebocoran data halus yang mengandalkan serangan browser Spectre-class tingkat lanjut.

Seperti apa 'baik' untuk masing-masing ini?

COOP: header Cross-Origin-Opener-Policy diatur ke 'same-origin'. CORP: header Cross-Origin-Resource-Policy diatur ke 'same-origin'. COEP: header Cross-Origin-Embedder-Policy — dan jika Anda mengaturnya sama sekali, 'credentialless' adalah nilai yang lebih aman daripada 'require-corp'. Laporan kami hanya mencatat apakah masing-masing ada dan apa pengaturannya; tidak pernah menghukum Anda untuk yang hilang. Targetkan COOP dan CORP ada; biarkan COEP tidak ada kecuali sudah diuji.