① asp.net怎么能够更好的防止sql注入式攻击
1、代码的严谨,尤其是与数据库链接的代码,现在一般都是写在web.config中,这在一定的程度上也起到了防攻击。
2、你的数据库模型设计的更加严谨一些,一个是增加可读性,一个是对关键字段的识别。
3、当然,还有其他一些防止sql注入式攻击的手段,这些都是你在平时写代码的时候不自觉的都会加入这些元素的。只是有时候你不知道它的名字而已。
② asp.net防sql注入
字符:
',select,union,insert,update,join等
数据库操作时采用参数方式,能增加安全。
③ asp.net怎样防止SQL非法注入
可以使用参数化的SQL语句
④ asp.net中怎样防止SQL语句的注入,比如说登录的SQL语句怎么写。
防止注入的方法有很多,建议字符串处理方面用正则表达式,数据库方面用存储过程,页面参数可以用ViewStat。
具体到登陆,把登陆的用户名和密码加密存储,这样即使输入的是注入语法,加密后对照也就失效了。
⑤ asp.net如何有效防止SQL注入攻击
用 SqlParameter 给你个例子,这个是代码生成器生成的。
public bool Exists(int child_menu_id)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select count(1) from chile_menu");
strSql.Append(" where child_menu_id=@child_menu_id ");
SqlParameter[] parameters = {
new SqlParameter("@child_menu_id", SqlDbType.Int,4)};
parameters[0].Value = child_menu_id;
return DbHelperSQL.Exists(strSql.ToString(),parameters);
}
⑥ 在ASP.Net怎么防止SQL注入
其实sql防注入很简单的,这个都不在程序员的讨论范围内了。
最简单,有效的方法:
比如用户输入的内容为String1
我们要做的是replace(String1,'''',''''''),目的就是将一个分号,替换为两个分号。当放入sql语句中时,就会把用户输入的内容原封不动的作为sql中的字符串传入数据库。
⑦ 怎么防止ASP.NET中SQL注入
你这个是HTML脚本注入,不是SQL注入,用SQL注入方法比如用SqlParameter或者存储过程是解决不了的,
可以进行HTML编码就行了
比如:
显示时进行编码:Label1.text=Server.HtmlEncode("要显示的字符串");
或者在存入数据库时编码,显示不编码
⑧ 关于asp.net(vb) sql防注入
在生成sql语句时不要把参数直接用+号的形式写在sql里,用 cmd.paramater加入参数这样可以防sql注入
⑨ 求助:C# WINFORM程序中 SQL防注入的代码
在SQL环境中建立存储过程,然后在VS里调用该存储过程,不仅避免SQL注入式攻击而且提高数据访问速度。
⑩ asp.net防注入代码
用存储过程来执行所有的查询可以有效避免。下面是一个过滤字符串的函数
/// <summary>
/// 防注入字符串检查
/// </summary>
/// <param name= "str "> 待检查的字符串 </param>
/// <returns> </returns>
public static bool StringCheck(string str)
{
if (str.Trim() == " " || str == null)
{
return true;
}
else
{
Regex re = new Regex(@ "\s ");
str = re.Replace(str.Replace( "%20 ", " "), " ");
string pattern = @ "select |insert |delete from |count\(|drop table|update |truncate |asc\(|mid\(|char\(|xp_cmdshell|exec master|net localgroup administrators|:|net user| " "|\ '| or ";
if (Regex.IsMatch(str, pattern))
{
return false;
}
else
{
return true;
}
}