一、安全攻击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