黑马程序员技术交流社区

标题: sql注入 [打印本页]

作者: duanhuilin    时间: 2012-10-26 15:42
标题: sql注入
如何解决或者避免sql注入带来的风险。。。
作者: 黑马王亚男    时间: 2012-10-26 18:12
  1. using (SqlConnection conn = new SqlConnection(connectionString))
  2. {
  3.     conn.Open();
  4.     SqlCommand comm = new SqlCommand();
  5.     comm.Connection = conn;
  6.     comm.CommandText = "select * from Users where UserName=@UserName";
  7.     //传值 username,不指定参数长度
  8.     //查询计划为(@UserName varchar(8))select * from Users where UserName=@UserName
  9.     comm.Parameters.Add(new SqlParameter("@UserName", SqlDbType.VarChar) { Value = "username" });
  10.     comm.ExecuteNonQuery();
  11. }
复制代码
用参数化查询的方法,如:

1.过滤SQL需要的参数中的敏感字符(注意加入忽略大小写)
2.禁用数据库服务器的xp_cmdshell存储过程,删除相应用到的dll
3.屏蔽服务器异常信息




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2