Maison  >  Article  >  interface Web  >  Html5 postMessage implémente les compétences du didacticiel de messagerie inter-domaines_html5

Html5 postMessage implémente les compétences du didacticiel de messagerie inter-domaines_html5

WBOY
WBOYoriginal
2016-05-16 15:51:401303parcourir

1. Stratégie de même origine

Pour comprendre le cross-domain, nous devons d'abord savoir ce qu'est la politique de même origine. L'Encyclopédie Baidu définit la même politique d'origine comme suit : La même politique d'origine est une convention. Il s'agit de la fonction de sécurité principale et la plus élémentaire du navigateur. Si la même politique d'origine est manquante, les fonctions normales du navigateur peuvent être affectées. On peut dire que le Web est construit sur la base de la politique de même origine, et que le navigateur n'est qu'une implémentation de cette politique.

Quelle est la même origine : Si le nom de domaine, le protocole et le port de deux URL sont identiques, cela signifie qu'elles ont la même origine.

La politique de même origine du navigateur empêche les « documents » ou les scripts provenant de différentes sources de lire ou de définir certains attributs sur le « document » actuel. (White Hat parle de sécurité Web[1]). Selon cette politique, JavaScript sous le nom de domaine a.com ne peut pas exploiter des objets sous le nom de domaine b.com sur plusieurs domaines. Par exemple, le code JavaScript contenu dans la page sous le nom de domaine baidu.com ne peut pas accéder au contenu de la page sous le nom de domaine google.com.

JavaScript doit suivre strictement la politique de même origine du navigateur, y compris Ajax (en fait, Ajax est également composé de JavaScript). Les requêtes Ajax implémentées via l'objet XMLHttpRequest ne peuvent pas être soumises à des domaines différents. Par exemple, les pages sous abc.test.com ne peuvent pas soumettre de requêtes Ajax à def.test.com. En appliquant la politique de même origine, les utilisateurs peuvent s'assurer que la page qu'ils consultent provient bien du domaine qu'ils parcourent.

La stratégie de même origine est très importante dans les applications réelles. Supposons que l'attaquant utilise Iframe pour intégrer la véritable page de connexion bancaire sur sa page. Lorsque l'utilisateur se connecte avec le vrai nom d'utilisateur et le mot de passe, la page peut lire le contenu du formulaire utilisateur via JavaScript, de sorte que les informations de nom d'utilisateur et de mot de passe soient saisies. a été divulgué.

Dans le navigateur,