您的位置:首页 > 数据库

SQL防注入-----恶意或者说是非法的SQL参数过滤 !

2009-12-08 13:02 986 查看
#region SQL注入过滤
/// <summary>
/// SQL注入过滤
/// </summary>
/// <param name="InText">要过滤的字符串</param>
/// <returns>如果参数存在不安全字符,则返回false</returns>
public static bool SqlFilter(string sqlParems)
{
if (sqlParems == null || sqlParems == "") return false;

string sql = "'|;|--|=|select|*|and|exec|insert|delete|update|chr|or|join";
foreach (string i in sql.Split('|'))
{
if (sqlParems.Trim().IndexOf(i) >= 0)
{
return false;
}
}
return true;
}
#endregion

个人认为,这个方法是最直接也是最方便的防SQL注入的办法 !

当然,

这也只能在一定程度上防止SQL参数注入、URL注入等肤浅的SQL注入了 !

备注:需要新添加屏蔽的关键字符,或者字符转的话,可以直接在变量SQL后面添加(遵循用“|”隔开的规范就行)。然后在调用数据 库方法时,先对传入的参数进行SQL注入校验就行 !
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: