跨站腳本攻擊

概念

跨站腳本(Cross-site scripting):通常簡稱為XSS,是一種網(wǎng)站應(yīng)用程序的安全漏洞攻擊,是代碼注入的一種。它允許惡意用戶將代碼注入到網(wǎng)頁上,其他用戶在觀看網(wǎng)頁時就會受到影響。這類攻擊通常包含了HTML以及用戶端腳本語言。
XSS攻擊通常指的是通過利用網(wǎng)頁開發(fā)時留下的漏洞,通過巧妙地方法注入惡意指令代碼到網(wǎng)頁,使用戶加載并執(zhí)行攻擊者惡意制造的網(wǎng)頁程序。這些惡意網(wǎng)頁程序通常是JavaScript,但實際上也可以包括Java,VBScript,ActiveX,F(xiàn)lash或者甚至是普通的HTML。攻擊成功后,攻擊者可能得到更高的權(quán)限、私密網(wǎng)頁內(nèi)容、會話或cookie等各種內(nèi)容。

攻擊手段和目的

攻擊者使被攻擊者在瀏覽器中執(zhí)行腳本后,如果需要收集來自被攻擊者的數(shù)據(jù)(如cookie或其他敏感信息),可以自行架設(shè)一個網(wǎng)站,讓被攻擊者通過JavaScript等方式把收集好的數(shù)據(jù)作為參數(shù)提交,隨后以數(shù)據(jù)庫等形式記錄在攻擊者自己的服務(wù)器上。
常見的XSS攻擊手段和目的有:

  • 盜用cookie,獲取敏感信息。
  • 利用植入Flash,通過crossdomain權(quán)限設(shè)置進一步獲取更高權(quán)限;或者利用Java等得到類似的操作。
  • 利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻擊)用戶的身份執(zhí)行一些管理動作,或執(zhí)行一些一般的如發(fā)微博、加好友、發(fā)私信等操作。
  • 利用可被攻擊的域受到其他域信任的特點,以受信任來源的身份請求一些平時不允許的操作。
  • 在訪問量極大的一些頁面上的XSS可以攻擊一些小型網(wǎng)站,實現(xiàn)DDos攻擊的效果。

漏洞的防御和利用

  • 過濾特殊字符
    避免XSS的方法之一主要是將用戶所提供的內(nèi)容進行過濾,許多語言都有提供對HTML的過濾。
  • 使用HTTP頭指定類型
    許多時候可以使用HTTP頭指定內(nèi)容的類型,使得輸出的內(nèi)容避免被作為HTML解析。即可強行指定輸出內(nèi)容為文本/JavaScript腳本(順便指定了內(nèi)容編碼),而非可以引發(fā)攻擊的HTML。
  • 用戶方面
    大多數(shù)瀏覽器都有關(guān)閉JavaScript的選項,但關(guān)閉功能并非是最好的方法,因為許多網(wǎng)站都需要使用JavaScript語言才能正常運作。通常來說,一個經(jīng)常有安全更新推出的瀏覽器,在使用上會比很久都沒有更新的瀏覽器更為安全。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容