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注入校验就行 !
/// <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注入校验就行 !
相关文章推荐
- Java Filter过滤xss注入非法参数的方法
- Java Filter过滤XSS注入非法参数
- php防止sql注入之过滤分页参数实例
- Java Filter过滤xss注入非法参数的方法
- Java Filter过滤xss注入非法参数的方法
- php防止sql注入之过滤分页参数实例
- Microsoft SQL Server 2000在复制的时候包含两个过程,攻击者可以操作输入提供恶意参数给存储过程,可导致执行任意命令。
- 过滤非法字符集函数一定程度上避免输入非法字符引起SQL语句的错误
- SQL SERVER 检查SQL条件参数中是否存在非法字符
- 网站数据库被SQL注入后清除script恶意病毒代码的方法
- SSM框架下SQL语句中注入多个参数的问题
- SpringMVC 过滤参数的非法字符
- 如何防止sql恶意注入
- ASP过滤SQL非法字符并格式化html代码(不错的功能函数集)
- 简单高效防注入攻击的动态多参数、动态SQL语句拼接方法,提高网站的安全性
- java过滤请求参数中的非法字符,防止XSS攻击、SQL盲注等
- 我的ID型参数过滤防注入之道(ASP)
- Scripts:查询数据库中参数文件的信息(在重新建库或者克隆数据库时经常使用)dba_cr_init.sql
- php过滤html字符串,防止SQL注入
- ASP过滤SQL非法字符并格式化html代码