È risaputo che caricare il tuo sito all'interno di un frame su un altro sito può potenzialmente esporre il tuo sito a tutti i tipi di problemi e, in generale, non è una buona idea se hai dei dati sensibili da proteggere.
Pertanto, gli script di FrameBusting si sono verificati, in genere uno script semplice che viene eseguito mentre il sito viene caricato; se è in un frame si ricarica da solo senza frame.
Di solito qualcosa di semplice su queste linee:
if (top != self)
top.location.replace(location);
Ora, se sei su un sito pubblico, come forum o sito di social network, dove è comune pubblicare link e visualizzarli in una cornice, potresti voler creare framebust del tuo sito (se hai qualsiasi cosa sensibile lì, sono utenti che accedono, ecc.) fuori dai frame del social networking. Ma anche tu non vuoi interrompere l'esperienza dell'utente e fargli pensare che il sito a cui sono collegati sia sospetto ... Quindi potresti essere tentato di dare loro un popup per informarli su cosa sta succedendo - ma che potrebbe spaventarli ancora di più ....
Quindi - quale pensi che sarebbe la soluzione migliore COMPLETA, considerando l'insieme di contesto, rischi e conseguenze ed evitando il "teatro della sicurezza"?
- Lascia il sito all'interno di una cornice
- Framebust in silenzio
- Fornisci un popup, solo per notificare all'utente cosa sta succedendo
- Fornisci un popup all'utente con l'opzione per annullare
P.S. Il sito era QUESTO sito, e l'ho scoperto pubblicando il sito su numerosi gruppi relativi alla sicurezza su LinkedIn dopo l'avvio della beta pubblica ( perché non lo sei?;)), avendo ricevuto risposte negative negative ... Si scopre che SE va per l'opzione 3 - popup con l'opzione no da cancellare. Crosspost come bug alla meta ....