大型網站技術架構(八)--網站的安全架構

 

大型網站技術架構(一)--大型網站架構演化

大型網站技術架構(二)--架構模式

大型網站技術架構(三)--架構核心要素

大型網站技術架構(四)--網站的高性能架構

大型網站技術架構(五)--網站高可用架構

大型網站技術架構(六)--網站的伸縮性架構

大型網站技術架構(七)--網站的可擴展性架構

 

 

      從互聯網誕生起,安全威脅就一直伴隨着網站的發展,各種Web攻擊和信息泄露也從未停止。常見的攻擊手段有XSS攻擊、SQL注入、CSRF、Session劫持等。

1、XSS攻擊

 XSS攻擊即跨站點腳本攻擊(Cross Site Script),指黑客通過篡改網頁,注入惡意HTML腳本,在用戶訪問網頁時,控制用戶瀏覽器進行惡意操作的一種攻擊方式。

常見的XSS攻擊類型有兩種,一種是反射型,攻擊者誘使用戶點擊一個嵌入惡意腳本的鏈接,達到攻擊的目的,如下圖所示:

 

 

另一種XSS攻擊是持久型XSS攻擊,黑客提交含有惡意腳本的請求,保存在被攻擊的Web站點的數據庫中,用戶瀏覽網頁時,惡意腳本被包含在正常頁面中,達到攻擊的目的,如下圖所示:

 

消毒

對某些html字符轉義,如“>”轉義爲“&gt”等。

HttpOnly

即瀏覽器禁止頁面javascript訪問帶有HttpOnly屬性的Cookie。可通過對Cookie添加HttpOnly屬性,避免被攻擊者利用Cookie獲取用戶信息。

2、注入攻擊

注入攻擊主要有兩種形式,SQL注入攻擊和OS注入攻擊。SQL注入攻擊的原理如下圖所示。攻擊者在HTTP請求中注入惡意的SQL命令,服務器用請求構造數據庫SQL命令時,惡意SQL被一起構造,並在數據庫中運行。

 

除了SQL注入,攻擊者還根據具體應用,注入OS命令、編程語言代碼等達到攻擊目的。

 

消毒

和防XSS攻擊一樣,過濾請求數據中可能注入的SQL,如"drop table"等。另外還可以利用參數綁定來防止SQL注入。

3、CSRF攻擊

CSRF即Cross Site Request Forgery 跨站點請求僞造,攻擊者通過跨站點請求,以合法用戶的身份進行非法操作。CSRF的主要手段是利用跨站請求,在用戶不知情的情況下,以用戶的身份僞造請求。其核心是利用了瀏覽器Cookie或服務器Session策略,盜取用戶身份

 

表單Toke

       CSRF是一個僞造用戶請求的操作,所以需要構造用戶請求的所有參數纔可以,表單Token通過在請求參數中增加隨機數的辦法來組織攻擊者獲取所有請求參數。

驗證碼

       更加簡單高效,即請求提交時,需要用戶輸入驗證碼,以避免在用戶不知情的情況下被攻擊者僞造請求。

Referer Check

       HTTP請求頭的Referer域中記錄着請求來源,可通過檢查請求來源,驗證其是否合法,還可以利用這個功能來實現突破防盜鏈。

4、WEB應用防火牆

        ModSecurity是一個開源的Web應用防火牆,探測攻擊並保護Web應用程序,既可以嵌入到Web應用服務器中,也可以作爲一個獨立的應用程序啓動。ModSecurity最早只是Apache的一個模塊,現在已經有JAVA、NET多個版本,並支持Nginx。

        ModSecurity採用處理邏輯與攻擊規則集合分離的架構模式。處理邏輯(執行引擎)負載請求和相應的攔截過濾,規則加載執行等功能。而攻擊規則集合則負責描述對具體攻擊的規則定義、模式識別、防禦策略等功能。處理邏輯比較穩定,規則集合需要不斷針對漏洞進行升級,這是一種可擴展的架構設計。

 

 

5、信息加密技術

爲了保護網站的敏感數據,應用需要對某些數據進行加密處理,信息加密技術科分爲三類:單向散列加密、對稱加密和非對稱加密

5.1單向散列加密

單向散列加密是指通過對不同輸入長度的信息進行散列計算,得到固定長度的輸出,這個散列計算過程是單向的,如下圖所示。

 

單向散列加密一般主要用途是用戶密碼的加密,使密碼不可逆的保存到數據庫中,即便數據庫信息泄露,攻擊者也無法知曉原密碼是什麼。

常見的單向散列算法有MD5、SHA等。

5.2對稱加密

即加密和解密都使用同一個密鑰,如下圖所示:

 

常用的對稱加密算法有DES算法、RC算法等。對稱加密是一種傳統的加密手段,也是最常用的加密手段,適用於大多數場合。

 

5.3非對稱加密

非對稱加密使用的加密和解密不是同一密鑰,其中一個對外界公開,被成爲公鑰,另一個只有所有者知道,被稱作私鑰。用公鑰加密的信息必須用私鑰才能解開,反正,用私鑰加密的信息只有用公鑰才能解開,如下圖所示:

 

非對稱加密常用算法有RSA等。HTTPS傳輸中瀏覽器使用的數字證書實質上是經過權威機構認證的非對稱加密的公鑰

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