Es comúnmente conocido que cargar su sitio dentro de un marco en otro sitio, puede exponer su sitio a todo tipo de males, y en general no es una buena idea si tiene datos confidenciales para proteger.
Por lo tanto, surgieron los scripts FrameBusting, generalmente un script simple que se ejecuta cuando el sitio se está cargando; Si está en un marco, se vuelve a cargar sin marcos.
Por lo general, algo simple en este sentido:
if (top != self)
top.location.replace(location);
Ahora, si se encuentra en un sitio público, como un foro o un sitio de redes sociales, donde es común publicar enlaces y mostrarlos en un marco, es posible que desee crear un marco para su sitio (si tiene) cualquier cosa sensible allí, hay usuarios que inician sesión, etc.), fuera de los marcos de las redes sociales. Pero tampoco desea interrumpir la experiencia del usuario, y hacer que piensen que el sitio al que están vinculados es sospechoso ... Por lo tanto, podría tener la tentación de mostrarles una ventana emergente para informarles qué sucede, pero eso podría asustarlos aún más ...
Entonces, ¿cuál crees que sería la mejor solución TOTAL, teniendo en cuenta la totalidad del contexto, los riesgos y las consecuencias, y evitar el "teatro de seguridad"?
- Deja el sitio dentro de un marco
- Framebust en silencio
- Proporcionar una ventana emergente, solo para notificar al usuario lo que está pasando
- Proporcionar una ventana emergente al usuario con la opción de cancelar
P.S. El sitio era el sitio ESTE , y lo descubrí al publicar el sitio en numerosos grupos relacionados con la seguridad en LinkedIn después del inicio de la versión beta pública ( ¿por qué no lo hace?;)), después de haber recibido algunas respuestas negativas ... Resulta que, SE elige la opción 3 - emergente con la opción no para cancelar. Colocó como un error para el meta ....