Définition Que signifie 'iframe sandbox detected' ?
Cela signifie qu'une extension de navigateur, un scanner de sécurité ou un lecteur multimédia a détecté que l'iframe dans laquelle il est embarqué porte l'attribut sandbox HTML. L'attribut limite ce que l'iframe peut faire : exécuter des scripts, soumettre des formulaires, ouvrir des pop-ups, faire naviguer la page de premier niveau. La détection elle-même n'est pas une attaque ; c'est la confirmation que le sandboxing est actif. Que ce soit le comportement souhaité dépend du fait que l'embed a besoin des capacités bloquées pour fonctionner.
Définition Pourquoi les lecteurs vidéo demandent-ils de supprimer les attributs sandbox sur l'iframe ?
La plupart des embeds vidéo (YouTube, Vimeo, Dailymotion) ont besoin d'allow-scripts pour exécuter leur lecteur, généralement d'allow-same-origin pour que le lecteur accède à son propre stockage, et souvent d'allow-popups pour les liens de partage et de visionnage ultérieur. Un sandbox vide sans aucun de ces jetons empêche le lecteur d'exécuter le moindre JavaScript : il échoue silencieusement ou affiche l'avertissement 'sandbox detected'. La lecture automatique et le plein écran relèvent d'un autre mécanisme : ils sont délégués par l'attribut allow de l'iframe, par exemple allow="autoplay; fullscreen; picture-in-picture", qui est du Permissions Policy et non du sandbox. La solution est d'ajouter exactement les jetons documentés par le lecteur plutôt que de retirer sandbox, car c'est aussi sandbox qui empêche un lecteur d'une autre origine de soumettre des formulaires, d'ouvrir des pop-ups ou de faire naviguer votre page de premier niveau.
Définition Est-il sûr de supprimer les attributs sandbox d'une iframe ?
Le supprimer lève les restrictions que le navigateur impose à cette iframe : le document embarqué peut alors exécuter des scripts, soumettre des formulaires, ouvrir des pop-ups, utiliser des plugins et faire naviguer votre page de premier niveau ailleurs. Cela ne donne pas à un embed d'une autre origine l'accès à vos cookies ni à votre DOM : la politique de même origine l'interdit déjà, que sandbox soit présent ou non. Le cas qui compte vraiment est une iframe de même origine portant à la fois allow-scripts et allow-same-origin, car le document embarqué peut alors atteindre la page parente et supprimer son propre attribut sandbox. Conservez sandbox, n'ajoutez que les jetons spécifiques documentés par l'embed, et servez les embeds non fiables depuis une origine distincte et sans cookies dans la mesure du possible.
Définition L'attribut sandbox remplace-t-il une Content Security Policy ?
Non. L'attribut sandbox restreint ce qu'une iframe embarquée peut faire, tandis qu'une Content Security Policy régit ce que la page entière peut charger et exécuter. Ils couvrent des périmètres différents et fonctionnent mieux ensemble : le sandbox contient un embed non fiable, et la CSP restreint les scripts, les connexions et le framing sur l'ensemble du document.
Définition Pourquoi allow-scripts associé à allow-same-origin est-il considéré comme dangereux ?
Ensemble, ils permettent au document encadré d'exécuter des scripts ayant accès à sa véritable origine. Si cette origine est celle de l'intégrateur, l'iframe peut lire les mêmes données et même réécrire son propre balisage pour supprimer l'attribut sandbox, échappant ainsi aux restrictions que vous vouliez imposer.