Виджет Google +1 - это JavaScript, который работает на вашем веб-сайте, который создает iframe
. Этот виджет JavaScript работает в контексте вашего веб-сайта и поэтому не ограничен Правилами происхождения наследования для фреймов . Поэтому этот виджет JavaScript может устанавливать любые события DOM, которые он хочет на родительском сайте, даже если он кажется простым iframe
.
Другое дело, почему Google использует iframe
? Почему бы просто не сгенерировать div
на странице? Хорошо, потому что ссылка происходит от iframe
, токен CSRF (подделка межсайтового запроса) может быть встроен в запрос, и родительский сайт не может прочитать этот токен и подделать запрос. Таким образом, iframe
это мера против CSRF, которая основывается на правилах происхождения наследования, чтобы защитить себя от злонамеренного родителя.
С точки зрения атаки это больше похоже на XSS (межсайтовый скриптинг), чем на UI-Redress. Вы предоставляете Google доступ к своему веб-сайту, и они могут захватить файлы cookie ваших пользователей или использовать их XmlHttpRequests
против вашего веб-сайта, если они того пожелают (но тогда люди будут судиться с ними за то, что они злонамеренные и богатые).
В этой ситуации вы ДОЛЖНЫ доверять Google, но Google не доверяет вам.
Существуют способы смягчения влияния этих веб-ошибок на конфиденциальность .
<iframe>
, что, по вашему мнению, может быть правдой (и объясните, как это возможно) Но, похоже, дело не в проверке DOM. И это представило бы мое имя и адрес Gmail злым родителям (если не обернуть за секундуiframe
)!