domaine abc.com a une page avec 2 iframes. Les deux sont chargés de domaine xyz.com. Will XSS Security Block JavaScript Access / Communication / Interaction entre ces deux iframes? p>
4 Réponses :
Oui, car pour obtenir une référence au document dans l'autre image, vous devez utiliser le document parent. Accéder aux cadres de fromage pourrait également vous permettre de déterminer quels autres domaines le Le document parent a chargé, qui pourrait être interprété comme une vulnérabilité. p> p>
Un fichier CrossDomain.xml serait-il sur le domaine ABC.com qui permet à ZXY.com résoudre le problème?
Je ne sais pas beaucoup sur les fichiers de stratégie de crossomain, mais je suppose que c'est possible si le navigateur le supporte.
Nan. crossdomain.xml code> est pour Flash, cela n'affecte pas la même stratégie d'origine JS. Ps. C'est
fenêtre.parent code>.
Les iframes ne pourront obtenir aucun contenu de la page principale par JavaScript par la même stratégie d'origine (SOP). P>
Cependant, ils seront capables de faire des appels (d'arriver à des extensions) à votre serveur à l'aide de vos cookies (ceci s'appelle CSRF). Donc, ne reposez pas seulement pour session des cookies pour votre sécurité. P>
Un bon moyen d'éviter cela, c'est avoir un jeton dans votre page principale (invisible aux iframes) que vous passez à chaque appel à votre serveur. P>
Comme Joel dit, le La même stratégie d'origine bloquera l'accès à la fenêtre parente. p>
vous peut em> Configurer un canal de communication entre les scripts côté client sur les documents / cadres / fenêtres distinctifs du même domaine en utilisant des cookies. Un document définit C'est vraiment plutôt ennuyeux, car vous devez obtenir chaque document pour s'identifier et signaler quand et à qui il envoie des messages. Méthode de la dernière revue seulement, vraiment. P> document.cookie code> pour écrire un cookie, puis l'autre, sur un pollier d'intervalle, lit
document.cookie code>, trouve quelque chose de nouveau à celui-ci et traite cela comme une message. p>
Nope, il vous suffit de continuer à regarder sur une boucle de sondage (seinterval).
N'oubliez pas que si les cookies deviennent grands, ils briseront des demandes (il y a des limites de la taille d'un ensemble d'en-têtes de demande).
Je recommanderais d'utiliser localStorage ou SessionStorage au lieu de cookies.
Eh bien, cela dépend de ce que vous entendez par communiquer. Il semble que certains types de communication sont possibles. Voici un exemple: HTML sur www.abc.com:
<a href="javascript:alert(document.body.innerHTML)" target="test1">click me</a>
PeCeuce Les iframes sont nommés Nous pouvons le faire dans cadre2: p> donc nous cliquons sur le Lien dans le cadre 2, mais le contenu du cadre 1 est affiché. p> p>