Beginning Asp.Net Security 读书笔记-----XSS
2014-07-24 21:06
225 查看
几个月前通过Veracode对代码进行动态和静态安全扫描,扫出了数以千计的安全bug,基本上都是top 10的,安全漏洞. 其中CWE80,CWE601数量最多.具体CWE的定义可参考http://cwe.mitre.org/ 。
正好手上有Beginning Asp.Net Security这本书,所以就看了看。所有的安全漏洞都源于非法用户的输入,所以任何应用程序或业务系统都需要在一定范围内设置安全边界。
在安全边界以外,接受任何用户输入都应该认为是不安全的,而黑客也是通过用户变量的进行代入达到攻击的目的,所以在接受用户输入的时候需要加入校验。在Asp.Net中对于Request默认是有验证的,在发送任何发送Request的http runtime时候都会验证请求中的form内容,如果request中有危险字符
我们可以得到如图黄页错误。我们可以通过下面设置取消在http runtime的验证
•<%@ Page validateRequest=“false” %>
•<system.web> <pages validateRequest="false" /> </system.web>
在mvc里面可以 用下面的配置:
•<httpRuntime requestValidationMode="2.0" />
•[AllowHtml]
•[ValidateInput(false)]
取消了http runtime 的request 验证,那么后台程序就可以接收到用户的所有输入了,一旦用户的输入包括了javascript,sql就有可能被注入攻击,所以需要对用户的输入进行处理了(encode).
Anti-Cross Site Scripting Library
•http://wpl.codeplex.com/releases/view/80289
Anti-Cross Site Scripting Library是MS的开源项目,它针对CSS,Javascript,html,url等标签中的特殊危险字符进行编码,以达到防范攻击的目的
正好手上有Beginning Asp.Net Security这本书,所以就看了看。所有的安全漏洞都源于非法用户的输入,所以任何应用程序或业务系统都需要在一定范围内设置安全边界。
在安全边界以外,接受任何用户输入都应该认为是不安全的,而黑客也是通过用户变量的进行代入达到攻击的目的,所以在接受用户输入的时候需要加入校验。在Asp.Net中对于Request默认是有验证的,在发送任何发送Request的http runtime时候都会验证请求中的form内容,如果request中有危险字符
我们可以得到如图黄页错误。我们可以通过下面设置取消在http runtime的验证
•<%@ Page validateRequest=“false” %>
•<system.web> <pages validateRequest="false" /> </system.web>
在mvc里面可以 用下面的配置:
•<httpRuntime requestValidationMode="2.0" />
•[AllowHtml]
•[ValidateInput(false)]
取消了http runtime 的request 验证,那么后台程序就可以接收到用户的所有输入了,一旦用户的输入包括了javascript,sql就有可能被注入攻击,所以需要对用户的输入进行处理了(encode).
Anti-Cross Site Scripting Library
•http://wpl.codeplex.com/releases/view/80289
Anti-Cross Site Scripting Library是MS的开源项目,它针对CSS,Javascript,html,url等标签中的特殊危险字符进行编码,以达到防范攻击的目的
相关文章推荐
- 电子书下载:Beginning ASP.NET Security
- 《Beginning ASP.NET Security》电子书下载
- 《Beginning ASP.NET Security》电子书
- [ASP.NET揭密读书笔记]用户自定义控件
- ASP.net(1.1)原理学习笔记--第十一章 安全性Security
- 《asp.net 2.0 开发指南》读书笔记之二 流程控制(4.4 )
- Essential ASP.NET 读书笔记--WebForm
- [ASP.NET揭密读书笔记]应用程序跟踪和监视
- Asp.net组件与控件开发读书笔记
- ASP.NET 2.0 读书笔记 圣殿 之 跨网页公布
- ASP.NET 2.0 读书笔记 圣殿 之 Client端Script的增强与改良
- 《asp.net 2.0 开发指南》读书笔记之五 4.7 编码规范
- Essential ASP.NET 读书笔记--基础
- ASP.NET 2.0 读书笔记 IDE部分
- ASP.NET 2.0 读书笔记 圣殿 之 玩转GridView(2)
- Asp.NET 2.0技术内幕(读书笔记二)
- Beginning ASP.NET 1.1 with Visual C# .NET 2003【封面】
- [读书笔记]组件设计:补白[深入剖析ASP.NET组件设计]一书中HttpApplication对象创建的细节
- Wrox - Beginning ASP.NET 1.1 with Visual C# .NET 2003 [免费下载 经典英文原版书]
- 《asp.net 2.0 开发指南》读书笔记之一(4.3)