Definition ¿Qué significa 'iframe sandbox detected'?
Significa que una extensión del navegador, un escáner de seguridad o un reproductor multimedia ha encontrado que el iframe en el que está incrustado lleva el atributo sandbox de HTML. El atributo limita lo que el frame puede hacer: ejecutar scripts, enviar formularios, abrir ventanas emergentes, navegar la página de nivel superior. La detección en sí no es un ataque; es la confirmación de que el sandboxing está activo. Si ese es el comportamiento deseado depende de si el elemento incrustado necesita las capacidades bloqueadas para funcionar.
Definition ¿Por qué los reproductores de vídeo piden eliminar los atributos sandbox del iframe?
La mayoría de los reproductores de vídeo incrustados (YouTube, Vimeo, Dailymotion) necesitan allow-scripts para poder ejecutar su reproductor, normalmente allow-same-origin para que el reproductor acceda a su propio almacenamiento, y a menudo allow-popups para los enlaces de compartir y de ver más tarde. Un sandbox vacío sin ninguno de esos tokens impide que el reproductor ejecute JavaScript, por lo que falla silenciosamente o muestra la advertencia 'sandbox detected'. La reproducción automática y la pantalla completa vienen de otro mecanismo: se delegan mediante el atributo allow del iframe, por ejemplo allow="autoplay; fullscreen; picture-in-picture", que es Permissions Policy y no sandbox. La solución es añadir exactamente los tokens que documenta el reproductor en lugar de quitar sandbox, porque sandbox es también lo que impide que un reproductor de otro origen envíe formularios, abra ventanas emergentes o saque tu página de nivel superior a otra URL.
Definition ¿Es seguro eliminar los atributos sandbox de un iframe?
Eliminarlo levanta las restricciones que el navegador impone a ese frame: el documento incrustado puede entonces ejecutar scripts, enviar formularios, abrir ventanas emergentes, usar plugins y sacar tu página de nivel superior a otra URL. No le da a un elemento incrustado de otro origen acceso a tus cookies ni a tu DOM, porque la política del mismo origen ya lo impide, exista o no el atributo sandbox. El caso que de verdad importa es un frame del mismo origen que lleva allow-scripts y allow-same-origin a la vez, ya que entonces el documento incrustado puede alcanzar la página padre y eliminar su propio atributo sandbox. Mantén sandbox, añade solo los tokens específicos que el elemento incrustado documente y sirve los elementos incrustados no confiables desde un origen separado y sin cookies siempre que sea posible.
Definition ¿El atributo sandbox reemplaza a una Content Security Policy?
No. El atributo sandbox restringe lo que un iframe incrustado puede hacer, mientras que una Content Security Policy gobierna lo que toda la página puede cargar y ejecutar. Cubren ámbitos distintos y funcionan mejor juntos: el sandbox contiene un elemento incrustado no confiable, y la CSP restringe los scripts, las conexiones y el framing en todo el documento.
Definition ¿Por qué se considera peligroso combinar allow-scripts con allow-same-origin?
Juntos permiten que el documento enmarcado ejecute scripts con acceso a su origen real. Si ese origen es el del incrustador, el frame puede leer los mismos datos e incluso reescribir su propio marcado para descartar el atributo sandbox, escapando efectivamente de las restricciones que pretendías imponer.