0
我正在寫一個簡單的Web應用程序這表明一個共同Reflected XSS attack情況下,我需要注入不可信的用戶數據來從服務器返回到HTML頁面ingored。「<」字符的jQuery的html()方法
我需要使用類似jQuery html()
的方法,因爲與text()
方法不同,它不會將輸入變爲簡單的字符串。
的問題是,經過「<」字符的jQuery html()
方法忽略了隨之而來。
這是我的代碼的相關部分:
if($('input#search-keyword').val()){
//Fetch the search keyword from the hidden input field
var keyword = $('input#search-keyword').val();
//Inject the keyword to the DOM.
$('span#keyword-reflect').html(keyword);
//ISSUE:
//if keyword == '/><script>...</script>' it only injects />'
}
我能做到這一點用任何其他方法,除了eval
或jQuery的html()
?
你是正確的。它不被忽略,但它只是沒有運行。在onerror處理程序中使用img標記完美地工作。謝謝 – fbid