Defaults.Exposed › Correzioni › Header di isolamento cross-origin (COOP / CORP / COEP)
Come correggere Header di isolamento cross-origin (COOP / CORP / COEP)
Tre istruzioni opzionali per il browser che controllano come gli altri siti possono interagire con il tuo: aprirlo in finestre popup, incorporare le sue immagini e i suoi script, o tirare le sue risorse dentro le proprie pagine. Sono rafforzamenti moderni, non un requisito di base, e nel nostro punteggio sono informativi: la loro assenza non abbassa il tuo voto. Ma i due sicuri chiudono una silenziosa falla di phishing e di furto di banda, e il team IT di un compratore attento noterà quando sono presenti.
In sintesi per la tua attività: Due di questi tre header bloccano il phishing sofisticato via popup e impediscono ad altri siti di prelevare direttamente (hotlinking) le tue immagini e i tuoi script (cosa che ti costa banda e può far trapelare dati). Sono gratuiti, richiedono a uno sviluppatore circa 15 minuti e non rompono nulla. Il terzo è avanzato e può rompere analisi, caratteri e contenuti incorporati: la maggior parte delle imprese dovrebbe lasciarlo disattivato. Nessuno di loro influisce sul tuo voto, quindi trattali come rifinitura, non come allarme: fai i due sicuri, salta quello rischioso a meno che non ti serva davvero.
Cosa può costarti
- Un truffatore apre il tuo sito reale in una finestra popup e ne mantiene il controllo da remoto, reindirizzando in silenzio il tuo cliente a un accesso falso nell'istante in cui distoglie lo sguardo. L'header sicuro (COOP) recide del tutto quel collegamento di controllo.
- Altri siti incorporano le tue foto di prodotto, i tuoi loghi e i tuoi script direttamente dal tuo server (hotlinking): paghi tu la banda ogni volta che i loro visitatori caricano la pagina, e le tue risorse compaiono su siti che non approveresti mai.
- Il team di sicurezza di un potenziale cliente esegue una scansione degli header prima di firmare e vede che hai aggiunto un moderno rafforzamento cross-origin: segnale piccolo, ma ti colloca nella colonna «questa gente lo prende sul serio» invece che in quella del «minimo indispensabile».
- Uno sviluppatore, per essere meticoloso, attiva l'header di isolamento avanzato (COEP) senza testare, e da un giorno all'altro rompe Google Analytics, i tuoi caratteri web e il widget di prenotazione incorporato. Sapere quale header è sicuro e quale è rischioso evita un'interruzione autoinflitta.
- La checklist di un revisore menziona l'isolamento cross-origin; preferisci mostrare «presente e corretto» sui due sicuri piuttosto che spiegare perché non c'è nulla.
Perché è importante. Sono header di rafforzamento del browser orientati al futuro. Nella nostra metodologia tutti e tre sono informativi — sono registrati con zero punti e non spostano mai il tuo voto — perché sono controlli avanzati di cui un sito può legittimamente fare a meno, e uno di essi può fare danni se applicato male. Li riportiamo così puoi vedere a che punto sei. I due sicuri (COOP e CORP) vale davvero la pena aggiungerli: gratuiti, veloci, e chiudono reali falle di phishing via popup e di furto di risorse senza rompere nulla.
Cosa sono, in parole semplici
Quando qualcuno visita il tuo sito, il suo browser non si limita a caricare le tue pagine in isolamento: decide anche come gli altri siti possono interagire con il tuo. Può un altro sito aprire il tuo in un popup e tenerlo sotto controllo? Può un altro sito allungarsi e incorporare le tue immagini e i tuoi script nelle proprie pagine? Può il tuo stesso sito usare in sicurezza certe funzionalità potenti e blindate del browser?
Questi tre header sono brevi istruzioni invisibili che il tuo sito invia al browser di ogni visitatore per rispondere esattamente a queste domande. Sono noti con le loro sigle:
- COOP — Cross-Origin-Opener-Policy. Controlla se altri siti che aprono il tuo in una finestra popup possono mantenerne il controllo da remoto.
- CORP — Cross-Origin-Resource-Policy. Controlla se altri siti possono incorporare le tue immagini, i tuoi script e altri file nelle proprie pagine.
- COEP — Cross-Origin-Embedder-Policy. Un controllo avanzato che, combinato con COOP, «isola» la tua pagina così da poter usare in sicurezza certe funzionalità potenti del browser.
Due di essi (COOP e CORP) sono sicuri da aggiungere e davvero utili. Il terzo (COEP) è avanzato e può rompere cose se attivato con leggerezza.
La cosa più importante da sapere subito: nel nostro punteggio, tutti e tre sono informativi. Non influiscono sul tuo voto. Uno mancante non ti costa nulla. Li riportiamo così puoi vedere a che punto sei e raccogliere le vittorie facili, non perché tu debba allarmarti per un numero.
Quanto può costarti
Sono rischi di nicchia, non da prima pagina, ma reali, e le correzioni sono gratuite.
-
Phishing via popup che mantiene il controllo remoto del tuo sito reale. Senza COOP, la pagina di un truffatore può aprire il tuo sito reale in una finestra popup e conservarne un riferimento attivo. Mentre l’attenzione del tuo cliente è sulla pagina del truffatore, l’aggressore può reindirizzare quel popup — il tuo dominio reale nella barra degli indirizzi — verso un accesso o un pagamento falso nell’esatto momento in cui il cliente vi ritorna. COOP impostato su «same-origin» recide quel collegamento di controllo così che il popup non possa essere manovrato.
-
Altri siti che rubano la tua banda (e mettono le tue risorse dove non vuoi). Senza CORP, qualsiasi sito su internet può incorporare le tue foto di prodotto, i loghi, gli script e altri file direttamente dal tuo server: l’«hotlinking». Ogni visitatore della loro pagina scarica il file da te, sulla tua bolletta della banda, con la tua risorsa che compare in un contesto mai approvato. CORP impostato su «same-origin» impedisce ai siti esterni di incorporare le tue risorse.
-
Una silenziosa via di fuga di dati per attacchi avanzati al browser. Lo stesso incorporamento cross-origin che abilita l’hotlinking è anche una delle vie usate dagli attacchi sofisticati al browser per canale laterale (la famiglia Spectre) per leggere dati a cui non dovrebbero accedere. COOP e CORP insieme chiudono quella via a livello di browser. Per la maggior parte delle piccole imprese è cintura-e-bretelle, ma è cintura-e-bretelle gratuita.
-
Un’interruzione autoinflitta dall’header sbagliato. Quello avanzato, COEP, esige che ogni risorsa caricata dal tuo sito aderisca esplicitamente. Attivalo senza testare e le tue analisi, i caratteri web, le mappe incorporate, i widget di prenotazione e gli script di terze parti possono smettere tutti di caricarsi, perché a nessuno è stato chiesto di aderire. È l’unico modo in cui questi header possono davvero farti male, ed è del tutto evitabile: non attivare COEP senza testare.
-
Un facile segnale mancato verso i compratori attenti. Quando il team IT di un potenziale cliente scansiona i tuoi header prima di firmare, trovare in atto un moderno rafforzamento cross-origin è un piccolo ma reale segnale «questa gente prende la sicurezza sul serio». Non vincerà una trattativa da solo, ma è gratis averlo dalla parte giusta del registro.
Cos’è davvero ciascuno
COOP — Cross-Origin-Opener-Policy (sicuro, consigliato)
Quando un altro sito apre il tuo usando un popup o window.open, le due finestre possono normalmente mantenere un riferimento reciproco. Quel collegamento può essere abusato: chi apre può manipolare o reindirizzare la tua finestra, leggere frammenti del suo URL e mettere in scena un phishing convincente usando il tuo dominio reale. COOP: same-origin interrompe quella relazione: la tua finestra diventa isolata da qualunque cosa l’abbia aperta da un’origine diversa. La navigazione normale, i tuoi collegamenti interni e la navigazione ordinaria non ne risentono affatto.
Come si presenta una configurazione corretta: Cross-Origin-Opener-Policy: same-origin.
CORP — Cross-Origin-Resource-Policy (sicuro, consigliato)
Per impostazione predefinita, le tue immagini, i tuoi script e altri file possono essere incorporati da qualsiasi sito ovunque. CORP: same-origin dice ai browser di rifiutare l’incorporamento cross-origin delle tue risorse, così altri siti non possono prelevare (hotlink) le tue risorse né tirarle nelle loro pagine. Il tuo stesso sito carica le proprie risorse esattamente come prima; solo i siti esterni sono bloccati.
Come si presenta una configurazione corretta: Cross-Origin-Resource-Policy: same-origin. (Se pubblichi intenzionalmente risorse perché altri le incorporino — un logo pubblico, un’API aperta — il tuo sviluppatore può allentarlo su quelle risposte specifiche.)
COEP — Cross-Origin-Embedder-Policy (avanzato, di solito lascialo disattivato)
COEP completa l’«isolamento cross-origin»: combinato con COOP, richiede che ogni risorsa caricata dalla tua pagina aderisca esplicitamente (tramite CORS o CORP). Fatto bene, sblocca certe funzionalità potenti del browser (come SharedArrayBuffer) e aggiunge un ulteriore strato contro gli attacchi della classe Spectre. Ma poiché esige l’adesione da tutto ciò che carichi, rompe facilmente strumenti di terze parti — analisi, caratteri, widget incorporati — che non erano stati costruiti per aderire. La maggior parte dei siti non ha bisogno delle funzionalità che sblocca e non dovrebbe accollarsi il rischio di rotture.
Come si presenta una configurazione corretta: per il raro sito che ne ha bisogno, Cross-Origin-Embedder-Policy: credentialless — il valore più sicuro, meno propenso a rompere le risorse esterne rispetto a require-corp. Per tutti gli altri, assente va bene, e il nostro report non ti penalizzerà.
Come correggerlo (gratis, circa 15 minuti)
Passa questo al tuo referente IT o sviluppatore web: la correzione è gratuita. Aggiungere COOP e CORP è un paio di impostazioni di una riga sul tuo server o CDN; non c’è licenza né costo ricorrente. L’unica istruzione per il titolare è: fai i due sicuri, e non attivare COEP senza testare.
Sono header di risposta, impostati dove vengono prodotte le risposte del tuo sito — più facilmente sulla tua CDN (per esempio Cloudflare) se ne hai una, altrimenti nella configurazione del tuo server web.
I due header sicuri (consigliati a tutti)
Cloudflare — Rules → Transform Rules → Modify Response Headers → Set:
Cross-Origin-Opener-Policy=same-originCross-Origin-Resource-Policy=same-origin
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"
Sono sicuri da aggiungere e non romperanno il normale funzionamento. Dopo la pubblicazione, ricarica qualche pagina e conferma che il sito si comporti esattamente come prima (così dovrebbe essere).
L’header avanzato (solo se ti serve davvero)
Non attivarlo senza prima testare in staging. COEP può rompere analisi, caratteri e widget incorporati.
Cloudflare: Transform Rules → imposta Cross-Origin-Embedder-Policy = credentialless.
Nginx:
add_header Cross-Origin-Embedder-Policy "credentialless" always;
Usa credentialless invece di require-corp: è meno propenso a rompere le risorse esterne. Testa a fondo in staging; sorveglia ogni script, carattere o contenuto incorporato di terze parti che smetta di caricarsi. Se qualcosa si rompe e non ti servono davvero le funzionalità che COEP sblocca, rimuovi semplicemente l’header: non c’è penalità per non averlo.
Note per piattaforma
- Google Workspace / Microsoft 365: questi gestiscono la tua email, non il tuo sito web, quindi qui non c’è nulla da impostare. Questi header appartengono a ciò che ospita il tuo sito (la tua CDN, host o server).
- Host gestiti comuni / costruttori di siti (Wix, Squarespace, Shopify, ecc.): gli header di risposta personalizzati potrebbero non essere configurabili sui piani più bassi. Se non puoi aggiungerli, va bene: sono informativi e non influiscono sul tuo voto. Mettere il tuo sito dietro una CDN come Cloudflare è il modo abituale per ottenere il controllo degli header.
- WordPress sul tuo hosting: impostali nella configurazione del tuo server web (Nginx/Apache sopra) o tramite la tua CDN, non in un plugin dove possibile — il livello server/CDN è più pulito e si applica a ogni risposta.
Errori comuni
- Attivare COEP «per essere meticoloso» e rompere il sito. Questo è il grosso. COEP esige l’adesione da tutto ciò che carichi; attivalo senza testare e le tue analisi, i caratteri e i contenuti incorporati possono sparire. Se non ti servono le funzionalità del browser che sblocca, non impostarlo.
- Trattarli come urgenti perché uno scanner li ha menzionati. Sono informativi. Gli header web a punteggio (HTTPS, HSTS, CSP, clickjacking, MIME-sniffing) vengono prima: correggi quelli prima di spendere energie qui.
- Impostare CORP troppo rigido quando pubblichi davvero risorse incorporabili. Se servi deliberatamente un logo, un distintivo o un’API perché altri siti li usino, un CORP
same-origingeneralizzato li bloccherà. Allentalo solo su quelle risposte invece di abbandonare l’header ovunque. - Aggiungere l’header a livello di pagina/app e mancare alcune risposte. Impostali a livello di server o CDN così si applicano a ogni risposta (immagini, script, endpoint API), non solo alle pagine HTML.
- Confonderli con il lucchetto SSL. HTTPS cifra la connessione; questi controllano l’interazione tra siti. Non sono collegati, e ti servono entrambi.
Una nota sul voto
Per essere del tutto chiari: nessuno di questi tre controlli influisce sul tuo voto. Sono registrati nella nostra metodologia come informativi, con zero punti, e uno mancante non ti costa mai nulla. Li facciamo emergere perché i due sicuri sono miglioramenti economici e autentici e perché vedere il quadro completo è utile, non perché ci sia un numero da difendere. Se qui non fai nulla, il tuo voto è esattamente lo stesso. Se aggiungi COOP e CORP, hai chiuso un paio di falle reali (anche se di nicchia) gratis. È il modo giusto di pensare a questa pagina: rifinitura facoltativa, con una sola trappola chiaramente etichettata da evitare.
FAQ
Questi non influiscono sul mio voto: devo proprio occuparmene?
Di due sì; di uno, probabilmente no. COOP e CORP sono gratuiti, richiedono pochi minuti e non romperanno il tuo sito: chiudono percorsi d'attacco reali (anche se di nicchia), quindi vale la pena farli come igiene economica. COEP è avanzato e può rompere strumenti di terze parti, quindi la maggior parte delle imprese dovrebbe lasciarlo disattivato a meno che non servano le funzionalità del browser che sblocca. Nessuno dei tre cambia il tuo punteggio in un senso o nell'altro, quindi non c'è urgenza: tratta i due sicuri come un riordino alla prossima volta che il tuo sviluppatore mette mano al sito.
Non sono una persona tecnica: è qualcosa che devo per forza affrontare?
Non di persona, e non con urgenza. Poiché sono informativi, al tuo voto non succede nulla di male se li salti. Se vuoi aggiungere i due sicuri, passa la sezione «Come correggerlo» a chi gestisce il tuo sito o la tua CDN: sono un paio di impostazioni di una riga e la correzione è gratuita. L'unico da segnalare esplicitamente è COEP: digli di non attivarlo senza testare, perché può rompere le analisi e i widget incorporati.
Qual è la differenza tra questi e gli header che SÌ influiscono sul mio voto?
Gli header di sicurezza web a punteggio — redirect HTTPS, HSTS, Content-Security-Policy, protezione dal clickjacking (X-Frame-Options) e protezione dal MIME-sniffing — difendono da attacchi comuni e ampiamente sfruttati, quindi la loro assenza costa punti. I tre di questa pagina (COOP, CORP, COEP) sono controlli di isolamento del browser più recenti e specialistici. Sono buona pratica ma non ancora un'aspettativa di base, quindi li riportiamo senza assegnare punti. Fai prima quelli a punteggio; questi sono la rifinitura sopra.
Aggiungere COOP o CORP romperà il mio sito o le integrazioni dei miei partner?
Le impostazioni consigliate (entrambe «same-origin») sono pensate per essere sicure. COOP recide solo il collegamento con le finestre che il tuo sito apre in popup: la navigazione normale, le tue pagine e i collegamenti ordinari non ne risentono. CORP impedisce solo ad *altri* siti di incorporare le tue immagini e i tuoi script; il tuo sito carica le proprie risorse esattamente come prima. Se servi davvero risorse (come un logo pubblico o un'API) che altri siti devono incorporare, il tuo sviluppatore può usare un'impostazione più permissiva su quelle risposte specifiche. Quello che rischia davvero di rompere è COEP: tienilo disattivato a meno che non sia testato.
Cosa mi costa davvero l'«hotlinking»?
Quando un altro sito incorpora la tua immagine o il tuo script direttamente dal tuo server invece di ospitarne una copia propria, ogni visitatore della sua pagina la scarica da te — sulla tua bolletta della banda, e mostrando la tua risorsa in un contesto che non hai approvato. Per una piccola impresa raramente è catastrofico, ma sono soldi che escono dalla porta, e CORP («same-origin») lo blocca a livello di browser. Chiude anche una sottile via di fuga di dati su cui fanno leva attacchi avanzati al browser (della classe Spectre).
Come si presenta una configurazione corretta per ciascuno di questi?
COOP: un header Cross-Origin-Opener-Policy impostato su «same-origin». CORP: un header Cross-Origin-Resource-Policy impostato su «same-origin». COEP: un header Cross-Origin-Embedder-Policy; e se proprio lo imposti, «credentialless» è il valore più sicuro rispetto a «require-corp». Il nostro report annota semplicemente se ciascuno è presente e su cosa è impostato; non ti penalizza mai per uno mancante. Punta ad avere COOP e CORP presenti; lascia COEP assente a meno che tu non l'abbia testato.