2013-02-23 24 views
5

Bu yolu uygulamaya çalışan bir iframe öğesinin içinde komut dosyası enjekte etmeye çalışıyordum, çocuk ve ebeveyn aynı alana ait değil (XSS'in en son tarayıcılarda önlendiğini biliyorum) Düğme alt öğe için komut dosyası yolu ana öğeye tıklayın. (krom konsolda tür benzer koşu komut)Farklı etki alanında iframe içinde inject komutunu enjekte etme

var myIframe = document.getElementById("myIframeId"); 
var script = myIframe.contentWindow.document.createElement("script"); 
script.type = "text/javascript"; 
script.src = "randomshit.js"; 
myIframe.contentWindow.document.body.appendChild(script); 
+0

Hayır, etki alanları arası ilke politikası bunu yasaklamaktadır. Sayfalar mesajlar kullanarak iletişim kurabilir. –

cevap

5

Hayır. Same Origin Policy, Netscape 2.0'a geri dönüyor.

JS'yi enjekte etmek için diğer sitenin dosyalarını/XSS'leri kesemezseniz, çok zamanınız olacaktır. Eğer meşru diğer sayfayla iletişim kurmak gerekir ve diğer sayfanın kontrole sahip ya da kurulum o sen CORS (ile window.postMessage, JSONP hatta Ajax kullanabileceğiniz sunucu ile ikincisi 2 edecektir iletişim kurabilir Şimdi eğer

Dinamik içeriği geçmek zor olsa da). Ama durumun böyle olmadığına inanıyorum.

İlgili konular