web前端攻擊技術與防範

web攻擊技術

  • XSS攻擊
  • CSRF攻擊
  • 網絡劫持攻擊
  • 控制檯注入代碼
  • 釣魚

XSS攻擊(cross-site script)

1、XSS攻擊形式:

主要是通過html標籤注入,篡改網頁,插入惡意的腳本,前端可能沒有經過嚴格的校驗直接就進到數據庫,數據庫又通過前端程序又回顯到瀏覽器

2、攻擊的目的:

攻擊者可通過這種方式拿到用戶的一些信息,例如cookie 獲取敏感信息,甚至自己建網站,做一些非法的操作等;或者,拿到數據後以用戶的身份進行勒索,發一下不好的信息等。

3、攻擊防禦

首先前端要對用戶輸入的信息進行過濾,可以用正則,通過替換標籤的方式進行轉碼或解碼
例如<> 空格 & ‘’ ""等替換成html編碼

  htmlEncodeByRegExp:function (str){  
       var s = "";
       if(str.length == 0) return "";
       s = str.replace(/&/g,"&amp;");
       s = s.replace(/</g,"&lt;");
       s = s.replace(/>/g,"&gt;");
       s = s.replace(/ /g,"&nbsp;");
      s = s.replace(/\'/g,"&#39;");
      s = s.replace(/\"/g,"&quot;");
      return s;  
 },
    
其次在java後端還要進行安全防禦,具體可以看一下這個http://blog.csdn.net/qq_34120041/article/details/76890092

CSRF攻擊(cross site request forgery,跨站請求僞造)

CSRF也是一種網絡攻擊方式,比起xss攻擊,是另外一種更具危險性的攻擊方式,xss是站點用戶進行攻擊,而csrf是通過僞裝成站點用戶進行攻擊,而且防範的資源也少,難以防範

csrf攻擊形式:攻擊者盜用用戶的身份信息,並以用戶的名義進行發送惡意的請求等,例如發郵件,盜取賬號等非法手段

例如:你登錄網站,並在本地種下了cookie
.
如果在沒退出該網站的時候 不小心訪問了惡意網站,而且這個網站需要你發一些請求等
此時,你是攜帶cookie進行訪問的,那麼你的重在cookie裏的信息就會被惡意網站捕捉到,那麼你的信息就被盜用,導致一些不法分子做一些事情

攻擊防禦:

1、驗證HTTP Referer字段

在HTTP頭中有Referer字段,他記錄該HTTP請求的來源地址,如果跳轉的網站與來源地址相符,那就是合法的,如果不符則可能是csrf攻擊,拒絕該請求

2、在請求地址中添加token並驗證

這種的話在請求的時候加一個token,值可以是隨機產生的一段數字,
token是存入數據庫之後,後臺返給客戶端的,如果客戶端再次登錄的時候,
後臺發現token沒有,或者通過查詢數據庫不正確,那麼就拒絕該請求
.
如果想防止一個賬號避免在不同的機器上登錄,那麼我們就可以通過token來判斷,
如果a機器登錄後,我們就將用戶的token從數據庫清除,從新生成,
那麼另外一臺b機器在執行操作的時候,token就失效了,只能重新登錄,這樣就可以防止兩臺機器登同一賬號

3、在HTTP頭中自定義屬性並驗證

如果說通過每次請求的時候都得加token那麼各個接口都得加很麻煩,
那麼我們通過http的請求頭來設置token
例如:
    $.ajax({
        url: '/v1/api',
        dataType: 'json',
        data: param,
        type:'post',
        headers: {'Accept':'application/json','Authorization':tokenValue}
        success:function(res){
            console.log(res)
        }
    })

網絡劫持攻擊

網絡劫持攻擊這種攻擊主要是通過一些代理服務器,或者wifi等有中間件的網絡請求,進行劫持,不法分子通過這種方式獲取到用戶的信息,那麼我們該怎麼防禦呢?
最好是採用https進行加密,這種通過請求網絡地址攻擊的我們可以通過對http進行加密,來防範,這樣不法分子即使或得到,也無法解密

控制檯注入代碼

這種就是不法分子通過各種提示誘騙用戶在控制檯做一些操作,從而獲取用戶信息,那麼我們最好在控制檯對用戶進行友好的提示,必要輕易相信這種提示燈。

釣魚

釣魚!一個傳統的攻擊方式,也是通過人性的弱點來誘騙用戶登錄一些不法網站,我們要科學上網,不要被釣…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章