如果我的web服務器只提供靜態頁面,並且我的html頁面允許用戶運行任何javascript。 '壞'用戶能否對我造成任何傷害?允許在我的頁面上注入任何javascript。有什麼風險?
p.s. 有很多關於關注XSS的討論,我正在做的更糟。 我讓用戶注入他/她的JavaScript。 我不明白的是他們可以造成什麼樣的傷害?
謝謝
如果我的web服務器只提供靜態頁面,並且我的html頁面允許用戶運行任何javascript。 '壞'用戶能否對我造成任何傷害?允許在我的頁面上注入任何javascript。有什麼風險?
p.s. 有很多關於關注XSS的討論,我正在做的更糟。 我讓用戶注入他/她的JavaScript。 我不明白的是他們可以造成什麼樣的傷害?
謝謝
我可以使用Firebug或Chrome檢查器在瀏覽器的任何頁面上運行JavaScript。如果您允許用戶在其他用戶的瀏覽器中運行JavaScript,則唯一的問題就出現了。
不良用戶不能對您做任何損害。
但是,用戶A可以在頁面中插入一些導致用戶B煩惱或徹底損壞的JavaScript代碼。然後用戶B可能會讓您對發生的事情負責。
用戶可以保存JavaScript並讓其他人在以後運行它嗎?這就是麻煩所在。
請參閱owasp.org上反映的跨站點腳本。這不僅僅是存儲未來攻擊的東西。 – atk 2010-09-13 02:38:56
如果用戶可以將JavaScript注入您的頁面,那麼它被稱爲跨站點腳本(XSS)。
看看存儲和反映的跨站腳本之間的區別。兩者都可以被視爲一個安全漏洞,但存儲的XSS具有更大的潛在損害。存儲的XSS允許攻擊者執行用戶的document.cookie的HTTP帖子,作爲最壞的情況允許攻擊者登錄到管理頁面。
由於「靜態」內容,XSS可能不會成爲您網站的關注點。但是隨着時間的推移,網站會有變化和改善的趨勢,然後那些不可利用的舊錯誤成爲很好的攻擊媒介。
告訴我用戶輸入是否保存並顯示回來。如果那麼我可以運行下面的代碼,這將導致瀏覽器崩潰
<script>
window.location = "https://www.google.com";
</script>
你的意思是「我的html頁面允許用戶運行任何javascript」? – Skilldrick 2010-08-13 13:58:49