常見的有四種網絡安全攻擊方式.
第一種是XSS跨站腳本攻擊,往網頁中插入惡意腳本代碼以攻擊用戶.
防范措施有三種.
第一種是輸入過濾,對用戶的所有輸入數據進行檢測,過濾掉可能導致腳本的字符.
第二種是輸出編碼,使用工具對用戶輸入進行編碼,使其中可能含有的HTML腳本變成普通字符串.
第三種是Cookie防盜,為了防止攻擊者竊取用戶的Cookie信息,要盡量避免在Cookie中存放隱私,如用戶名,密碼等,其次,可以利用MD5等hash算法對Cookie進行多次散列后進行存放,再次,也可以將Cookie和IP進行綁定,防止攻擊者偽裝正常用戶.
第二種是DDos攻擊,短時間內對服務器進行大量的網絡請求,使服務器癱瘓.
防范措施有三種.
第一種是攔截請求,可以在硬件,防火牆和服務器三個層面進行攔截.硬件層面架設硬件防火牆效果最好,但成本最高;防火牆方面使用軟件防火牆進行攔截請求;服務器方面,服務器可以決定攔截哪些請求,對性能消耗很大.
第二種是帶寬擴容,購買更大的帶寬可以消化DDos攻擊.這種方式成本較高,並且不能真正的防范DDos攻擊.
第三種是CDN網絡,使用CDN網絡把網站的靜態內容分發到多個服務器,用戶就近訪問,實質上相當於提高了帶寬.這種方法有兩個缺點,一個是網站的內容必須大部分是靜態內容,另一個是不能泄露源服務器的IP地址,防止攻擊者繞過CDN直接攻擊源服務器.
第三種是CSRF跨站請求偽造,攻擊者偽裝成受信任用戶來利用受信任網站.
防范措施有兩種.
第一種是驗證碼,用戶提交表單時需要填寫驗證碼,可以有效防止CSRF攻擊.
第二種時使用Token,Token是服務器和用戶共同持有的隨機值,當用戶提交表單時需要驗證服務器和用戶的Token是否一致.
第四種是SQL注入攻擊,通過把SQL命令插入到表單提交或頁面請求中,最終達到欺騙服務器執行惡意SQL命令的目的.
防范措施一般使用參數化查詢,使用參數化查詢時數據庫不會把參數作為SQL語句的一部分來處理,這樣SQL注入就無效了.