Widget Google +1 adalah JavaScript yang berjalan di situs web Anda yang sedang membangun iframe
. Widget JavaScript ini berjalan dalam konteks situs web Anda dan karenanya tidak dibatasi oleh Aturan Warisan Asal untuk iframe . Oleh karena itu widget JavaScript ini dapat mengatur acara DOM apa pun yang diinginkannya di situs induk meskipun tampaknya hanya sederhana iframe
.
Hal lain, mengapa Google menggunakan iframe
? Mengapa tidak hanya menghasilkan div
di halaman? Ya karena tautan berasal dari iframe
token, CSRF (pemalsuan permintaan lintas situs) dapat disematkan dalam permintaan dan situs induk tidak dapat membaca token ini dan memalsukan permintaan. Jadi iframe
ini adalah tindakan anti-CSRF yang mengandalkan aturan Origin Inheritance untuk melindungi dirinya dari orangtua yang jahat.
Dari perspektif serangan, ini lebih mirip XSS (cross-site scripting) daripada UI-Redress. Anda memberi Google akses ke situs web Anda dan mereka dapat membajak cookie pengguna Anda atau tampil XmlHttpRequests
melawan situs web Anda jika mereka memilihnya (tetapi kemudian orang-orang akan menuntut mereka karena jahat dan kaya).
Dalam situasi ini Anda HARUS mempercayai Google, tetapi Google tidak mempercayai Anda.
Ada beberapa cara untuk mengurangi dampak privasi dari bug-web ini .
<iframe>
, yang Anda sarankan mungkin benar (dan jelaskan bagaimana itu mungkin). Tapi sepertinya tidak demikian, dari memeriksa DOM. Dan itu akan memaparkan nama dan alamat Gmail saya kepada orang tua jahat (kecuali dibungkus sebentariframe
)