一、安全攻擊html
一、SQL、HTML、JS、OS命令注入web
二、XSS跨站腳本攻擊,利用站內信任的用戶,在web頁面插入惡意script代碼正則表達式
三、CSRF跨站請求僞造,經過假裝來自信任用戶的請求來利用受信任的網站。sql
四、目錄遍歷漏洞數據庫
五、參數篡改windows
六、會話劫持安全
二、防止攻擊的措施總結服務器
1) 對用戶輸入的數據進行全面安全檢查或過濾,尤爲注意檢查是否包含SQL 或XSS特殊字符。cookie
驗證用戶輸入的數據,包括值、類型、範圍等等,用驗證控件進行驗證 RequiredFieldValidator RangeValidator RegularExpressionValidator網絡
這些檢查或過濾必須在服務器端客戶端都進行。客戶端服務端都要進行驗證,客戶端爲了提升用戶體驗,服務端才能夠有效防止威脅
2)不要使用管理員權限的數據庫鏈接,不要使用動態拼接sql
3)機密信息加密,不能使用明文
4)每一個頁面加載時,對用戶合法性進行判斷。
5)登陸後session中的敏感信息須要加密,避免在永久cookies中存儲敏感信息,重要的cookie標記爲http only
6)發送敏感信息時使用SSL、POST方式,儘可能使用新型web HSTS安全協議
7)不要直接拋出異常的詳細信息給用戶,異常返回友好的頁面,防止用戶看到敏感信息
8)在服務器與網絡的接口處配置防火牆,用於阻斷外界用戶對服務器的掃描和探測。
9)限制網站後臺訪問權限,如:禁止公網IP訪問後臺;禁止服務員使用弱口令。
10)關閉windows的8.3格式功能。DOS系統下的命令方式爲8.3格式,即文件名不超過8個字符,擴展名不超過3個字符。形如:???.exe 。
如今Windows系統文件名長度最長可達255個字符了。
11)限制敏感頁面或目錄的訪問權限。
12)項目發佈前使用使用漏洞掃描軟件,如IBM appScan,UnisWebScanner,對安全性進行評估。
安全漏洞及防止:
一、sql注入漏洞
一、在框架中內置對有害語句及符號的過濾,如insert ‘ update,在基類進行過濾,這樣子類就不用關心也能夠避免這些經常使用的攻擊了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
|
二、堅持使用參數化方式賦值
三、不要直接拋出異常的詳細信息給用戶,異常返回友好的頁面,防止用戶看到數據庫的細節,關閉了Web.Config的CustomErrors的時候,可能就不會看到。
<system.web>
<compilation debug="true" targetframework="4.0" />
</system.web>
二、XSS又叫CSS--Cross Site Script 跨站腳本攻擊
一、清理用戶輸入,過濾js代碼,過濾特殊字符
[1] <>(尖括號) [5] ;(分號)
[2] "(引號) [6] ()(括號)
[3] '(單引號) [7] &(& 符號)
[4] %(百分比符號) [8] +(加號)
二、使用HttpUitility及AntiXSSLibrary類庫中的方法對html代碼進行處理
賦值不會彈框 this.lblName.Text = Encoder.HtmlEncode("<script>alert('OK');</script>");
編碼方法 | 使用場景 |
HtmlEncode(String) | 不受信任的HTML代碼。 |
HtmlAttributeEncode(String) | 不受信任的HTML屬性 |
JavaScriptEncode(String) | 不受信任的輸入在JavaScript中使用 |
UrlEncode(String) | 不受信任的URL |
VisualBasicScriptEncode(String) | 不受信任的輸入在VBScript中使用 |
XmlEncode(String) | 不受信任的輸入用於XML輸出 |
XmlAttributeEncode(String) | 不 受信任的輸入用做XML屬性 |
三、用戶信息用MD5加密
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
|
四、在頁面加載時判斷用戶是否登陸,若是沒有登陸則轉到登陸界面,每一個頁面繼承基類BaseControl
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
參見:
https://www.cnblogs.com/xiaochun126/p/5113371.html