Вассал моего вассала мой вассал. Смутно помню что значит вассал но звучит круто, поэтому и перевожу свою статейку о неправильной работе с фреймами во всех браузерах. (читать в оригинале чтобы получить больше лулзов от borat-english)
Суть такова, когда вы вставляете фрейм чужого сайта в свой сайт вы имеете доступ к внутренним фреймам этого фрейма. Реклама, крос доменные рисиверы, «Like» кнопки и прочее. А также к фреймом этих фреймов. Любая глубина.
Также вы можете менять их адреса. Выглядит это так:
Но это лишь дефейс. Проблема в том что фреймы используют и для cross domain interaction. Те сайты шлют в свои фреймы данные и получают их назад. Если заменить такой компонент системы то можно воровать данные от главного сайта посланные во фрейм.
Работает на read/write транспорта через window.name — это довольно старый трюк когда фрейм ставит себе name и редиректит назад на главный origin. А можно и читать postMessage инфорацию если владелец сайта установил получателя сообщения как '*'
Самая изюминка что это поведение считается нормой и работает в IE, Chrome, FF, Safari etc.
Вот приложение на синатре демонстрирующее векторы.
Не доверяйте своим фреймам.
Автор: Chikey