开发一个安全的小网站(二)防止sql注入
来源:互联网 发布:mysql 数据库迁移 编辑:程序博客网 时间:2024/06/05 01:06
首先直接靠拼接字符串来做数据库的查询是很危险的
错误的写法比如:
string flag = Request[参数];string sql="select * from [表名] where [字段]="+flag; OleDbConnection conn = getconn(); OleDbCommand com = new OleDbCommand(); com.CommandText = sql; com.Connection = conn;conn.Open(); com.ExecuteNonQuery(); com.Dispose(); conn.Close();
这样如果传进来的参数为 'and 1=1--
则最后执行的sql语句为 select * from [表名] where [字段]=''and 1=1--'
这样就会将本来是数据的参数就变成了sql指令,这样很危险
安全的写法应该是用参数化,就是将传进来的参数当成数据,交到dbms处理
参数化的写法是这样
public void inster(string cookie,string codeid) { int intcodeid = Convert.ToInt16(codeid); OleDbConnection conn = getconn(); OleDbCommand com = new OleDbCommand(); com.Connection = conn; com.CommandText = "insert into [table](cookie,codeid)values(@cookie,@codeid)";//这里指定参数 com.Parameters.AddWithValue("@cookie", SqlDbType.VarChar);//这里指定参数的类型 com.Parameters["@cookie"].Value = cookie; com.Parameters.AddWithValue("@codeid", SqlDbType.Int);//将传进来的参数放入sql参数中,这样在编译时就确定了类型,提高了执行效率 com.Parameters["@codeid"].Value = intcodeid; conn.Open(); com.ExecuteNonQuery(); com.Dispose(); conn.Close(); }
0 0
- 开发一个安全的小网站(二)防止sql注入
- 开发一个安全的小网站(一)安全要素
- php网站如何防止sql注入?(PHP注入的安全规范)
- 网站防止SQL注入
- 网站安全,SQL注入
- 防止sql注入的一个方法
- 开发一个安全的小网站(三)加密关键数据
- ASP程序安全-如何防止sql注入
- php mysql 安全 防止SQL注入
- PHP安全编程:防止SQL注入
- 防止SQL注入的函数(转)
- 防止SQL注入的函数(转)
- PHP如何防止注入及开发安全
- PHP如何防止注入及开发安全
- 一个防SQL注入的小例子
- PHP + Mysql 登录功能防止SQL注入的一个办法
- ASP.NET网站防止SQL注入攻击
- asp.net网站防止sql注入
- 说说感想
- [CV研究探讨] 计算机视觉三大顶级国际会议
- poj2955(区间dp)
- Scala 使用XML
- python实现去除文本中的中文符号和英文符号
- 开发一个安全的小网站(二)防止sql注入
- 使用信号量实现的有界缓冲池BoundedBuffer
- 编程语言入们指南
- MAC Wget安装
- Linux卡在Uncompressing Linux..... done, booting the kernel.
- linux——shell流程控制
- Java类反射再次升级
- 指针常量和常量指针的区别
- (JavaScript)案例一:二级联动