web安全-淺談xss攻防
近來反反覆覆讀了一些xss和csrf攻防的一些文章,大體上讀完了《XSS跨站指令碼剖析與防禦》這本書,之前淺浮的以為xss僅僅需要對使用者輸入內容進行過濾,然而現在重新審視xss的攻擊技巧著實令人眼花繚亂。
那到底什麼是xss跨站指令碼呢?它會造成什麼危害?為何它如此流行?它的攻擊方式有哪些?作為web開發人員我們能做的有哪些?
帶著這幾個問題,反覆測試總結了這篇文章,一方面方便自己以後學習回顧,另一方面希望可以幫助到一直打算了解xss攻防,卻又限於網上文章魚龍混雜,相關書籍有限細細讀來也耗時,我相信這篇文章至少能夠幫你理解上面幾個問題。想要深入學習,建議還是去學習ofollow,noindex">《xss跨站指令碼剖析與防禦》 ,這本書是邱永華先生所著,阿里首席安全研究員吳翰清作的序,細細讀來定能有所收穫;
XSS背景與介紹
隨著網際網路的發展,web2.0時代的興起,帶來的互動模式的發展,現如今更是向融合人工智慧的web3.0發展。目前的網站絕大多數都有需要和使用者互動的功能,比如電商網站的評論,論壇的發帖,微博網站的轉發等等。
正常使用者會中規中矩的使用,但是對於黑客他們也許不會循規蹈矩,他們可以通過這些表單提交一些惡意程式碼,通常是JavaScript(但是絕對不限與此,也包括Java,VBScript,ActiveX,Flash或者甚至是普通的HTML)一旦攻擊成功後,攻擊者可能獲得更高的許可權(可能的一些操作)、私密的網頁內容、會話和cookie等等
不過目前現代瀏覽器比如chrome,firefox對於表單中的程式碼會自動檢測出xss,從而遮蔽請求,但仍然不是絕對安全的,與此同時不乏有一些瀏覽器如IE6,7,8並不會做這樣的處理(親測如此,chrome的xss過濾器叫做xssAuditor,IE的xss過濾xssFilter從IE8 beta2才開始);