对参数进行过滤SQL注入攻击

所属分类:[Asp.Net] | 发表于:2010-1-19 14:26:16 | 人气(418)

另一外种防止SQL注入攻击的方法是,对参数进行处理,这种较为常用。
下面是相关代码

EXFCODE:
/// 
/// 防url注入
/// 
/// Request.QueryString 将过滤>,;,','',=
/// 是否限制长度 默认为45的长度
/// 
public static string URLParamsCheck(string URLParams, bool IsCutLength)
{
    if (URLParams == null || URLParams == "") return URLParams;
    URLParams = HttpContext.Current.Server.UrlDecode(URLParams);
    string strTemp = ">,;,','',=";
    string[] strTks = strTemp.Split(System.Convert.ToChar(","));
    foreach (string strBK in strTks)
    {
        URLParams = URLParams.Replace(strBK, "");
    }
    if (IsCutLength)
    {
        if (URLParams.Length > 200)
        {
            URLParams = URLParams.Substring(0, 45);
        }
    }
    return URLParams;
}
//使用方法:
//这样name就会过滤掉sql关键字。
string name = URLParamsCheck(Request.QueryString["name"],true);

0    0