关于Ibatis 的自动防止SQL 注入

原创 2009年04月30日 11:52:00

假设用户执行

这条语句。其中5是有用户输入的。

SQL注入的含义就是,一些捣蛋用户输入的不是5,而是

 

5;  delete  from  orders

 

那么原来的SQL语句将会变为,

.

在执行完select后,还将删除orders表里的所有记录。(如果他只删了这些记录,已经谢天谢地了,他可能会做更可怕地事情)。

 

不过庆幸的是,Ibatis使用的是预编译语句(PreparedStatement
s )。

上述语句会被编译为,

从而有效防止SQL注入。

 

不过当你使用$占位符时就要注意了。

例如:动态的选择列和表

这时你一定要仔细过滤那些值以避免SQL注入。当然这种情况不只存在Ibatis中。

 

参考资料:

【iBATIS in Action】 3.5.2 SQL injection

ASP.NET防止Sql注入的解决方法

ASP.NET防止Sql注入,通常一个一个文件修改不仅麻烦而且还有漏掉的危险,下面我说一上如何从整个系统防止注入。 做到以下三步,相信的程序将会比较安全了,而且对整个网站的维护也将会变的简单。 一...
  • yangyisen0713
  • yangyisen0713
  • 2015年08月12日 14:37
  • 9219

防止SQL注入策略

SQL注入攻击的总体思路: 发现SQL注入位置;判断服务器类型和后台数据库类型;确定可执行情况 对于有些攻击者而言,一般会采取sql注入法。下面我也谈一下自己关于sql注入法的感悟。 注入法...
  • youmengdaigu
  • youmengdaigu
  • 2014年06月13日 13:41
  • 1571

MySQL防止SQL注入

SQL注入实例: $unsafe_variable = $_POST['user_input']; mysql_query("INSERT INTO `table` (`column`) VALU...
  • agoago_2009
  • agoago_2009
  • 2014年07月16日 21:17
  • 13511

防止SQL注入的五种方法

防止SQL注入的五种方法 MiniBu 发表于2年前 分享到: 一键分享QQ空间微信腾讯微博新浪微博QQ好友有道云笔记 转 ...
  • zhangyongqiang123
  • zhangyongqiang123
  • 2016年10月09日 17:21
  • 46066

JSP使用过滤器防止SQL注入

转载自:http://www.cnblogs.com/leftshine/p/5539810.html 什么是SQL注入攻击?引用百度百科的解释: sql注入_百度百科: 所谓S...
  • u012377333
  • u012377333
  • 2016年05月30日 09:18
  • 1476

超强JSP防SQL注入攻击

第一种采用预编译语句集,它内置了处理SQL注入的能力,只要使用它的setString方法传值即可: String sql= "select * from users where username=?...
  • langjian2012
  • langjian2012
  • 2014年10月19日 10:42
  • 2093

怎样写防止Sql注入的Sql语句

1.什么是SQL注入     所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 2.如何防止SQL注入 防止SQL...
  • xuanwuziyou
  • xuanwuziyou
  • 2015年01月12日 14:11
  • 2277

如何防止SQL注入攻击

如何防止SQL注入攻击            一、什么是SQL注入式攻击?   所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行...
  • shenxiuwen1989
  • shenxiuwen1989
  • 2015年03月12日 17:32
  • 1229

mybatis是如何防止SQL注入的

SQL注入是一种很简单的攻击手段,但直到今天仍然十分常见。究其原因不外乎:No patch for stupid。为什么这么说,下面就以JAVA为例进行说明: 假设数据库中存在这样的表: table...
  • yizhenn
  • yizhenn
  • 2016年08月11日 14:17
  • 6538

MyBatis如何防止SQL注入

SQL注入是一种代码注入技术,用于攻击数据驱动的应用,恶意的SQL语句被插入到执行的实体字段中 SQL注入,大家都不陌生,是一种常见的攻击方式。攻击者在界面的表单信息或URL上输入一些奇怪的SQL片段...
  • fmwind
  • fmwind
  • 2017年03月01日 16:49
  • 1315
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于Ibatis 的自动防止SQL 注入
举报原因:
原因补充:

(最多只允许输入30个字)