1. 程式人生 > 其它 >xss攻擊和csrf攻擊:

xss攻擊和csrf攻擊:

一、XSS攻擊:

概念:XSS攻擊(Cross Site Scripting),俗稱跨站指令碼攻擊。攻擊原理:惡意攻擊者在web頁面中會插入一些惡意的script程式碼。

分類:

  • 反射型:當用戶開啟帶有惡意程式碼的URL的時候,網站服務端將惡意程式碼從URL中取出,拼接在html中並且返回給瀏覽器端。使用者瀏覽器接收到響應後執行解析,其中的惡意程式碼也會被執行。
  • 儲存型:主要是將惡意程式碼上傳或儲存到伺服器中,下次只要受害者瀏覽包含此惡意程式碼的頁面就會執行惡意程式碼,比如我們評論框輸入:<script></script> 。
  • DOM-Base(基於DOM的XSS攻擊):客戶端從URL中提取資料並且在本地執行、如果使用者在客戶端輸入的資料包含了惡意的js指令碼的話,但是這些指令碼又沒有做任何過濾處理的話,那麼我們的應用程式就有可能受到DOM-based XSS的攻擊。

危害:

  • 竊取使用者cookies資料,從而獲取使用者隱私資訊,或利用使用者身份進一步對網站執行操作;
  • 強制彈出廣告頁面、刷流量等;
  • 結合其他漏洞,如CSRF漏洞,實施進一步作惡。

預防:

  • 既然是不合理的輸入,那最先想到的就是過濾,對可以輸入的地方進行過濾操作,比如<script>、<img>、<a>等標籤進行過濾
  • 編碼:像一些常見的符號,如<>在輸入的時候要對其進行轉換編碼輸出
  • 對於cooki需要設定http-only,防止cookie被盜。