日期:2010-10-15 21:17:00 来源:本站整理
ASP.NET整站防SQL注入攻击解析[网站编程]
本文“ASP.NET整站防SQL注入攻击解析[网站编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
做到以下三步,相信你的程序就会对比安全了,并且对整个网站的保护也将变的简单.
1、数据考证类
- parameterCheck.cs
- public class parameterCheck{
- public static bool isEmail(string emailString){
- return System.Text.RegularExpressions.Regex.IsMatch(emailString, “['\\w_-]+(\\.
- ['\\w_-]+)*@['\\w_-]+(\\.['\\w_-]+)*\\.[a-zA-Z]{2,4}”);
- }
- public static bool isInt(string intString){
- return System.Text.RegularExpressions.Regex.IsMatch(intString ,”^(\\d{5}-\\d{4})|
- (\\d{5})$”);
- }
- public static bool isUSZip(string zipString){
- return System.Text.RegularExpressions.Regex.IsMatch(zipString ,”^-[0-9]+$|^[0-9]
- +$”);
- }
- }
2、Web.config
在你的Web.config文件中,在下面增添一个标签,以下:
此中key是背面的值为“OrderId-int32”等,此中“-”前面表示参数的名称比方:OrderId,背面的int32表示数据范例.
3、Global.asax
在Global.asax中增添下面一段:
- protected void Application_BeginRequest(Object sender, EventArgs e){
- String[] safeParameters = System.Configuration.ConfigurationSettings.AppSettings
- ["safeParameters"].ToString().Split(’,');
- for(int i= 0 ;i < safeParameters.Length; i++){
- String parameterName = safeParameters[i].Split(’-')[0];
- String parameterType = safeParameters[i].Split(’-')[1];
- isValidParameter(parameterName, parameterType);
- }
- }
- public void isValidParameter(string parameterName, string parameterType){
- string parameterValue = Request.QueryString[parameterName];
- if(parameterValue == null) return;
- if(parameterType.Equals(”int32″)){
- if(!parameterCheck.isInt(parameterValue)) Response.Redirect(”parameterError.aspx”);
- }
- else if (parameterType.Equals(”double”)){
- if(!parameterCheck.isDouble(parameterValue)) Response.Redirect(”parameterError.aspx”);
- }
- else if (parameterType.Equals(”USzip”)){
- if(!parameterCheck.isUSZip(parameterValue)) Response.Redirect(”parameterError.aspx”);
- }
- else if (parameterType.Equals(”email”)){
- if(!parameterCheck.isEmail(parameterValue)) Response.Redirect(”parameterError.aspx”);
- }
- }
今后需求改正的时刻我们只需求改正以上三个文件,对整个系统的保护将会大大提高效率,当然你可以按照自己的需求增添别的的变量参数和数据范例.
以上是“ASP.NET整站防SQL注入攻击解析[网站编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论