sql注入
--sql注入
一般我们在写in条件查询的时候
写法如下:
select * from contactcomp where companyid in(80522010000128585,80312010000093905)
in的条件是由界面传进来的,那么这样就存在着sql注入了,注入方法如下:
select * from contactcomp where companyid in(80522010000128585,80312010000093905);select * from userinfo;--)
这只是一个例子,大家可以发挥。利用这个漏洞,我们可以做很多操作。
所以凡是有where条件的,都要我们组织sql语句,要过滤用户输入的条件。比如上面我们就可以以long[]作为参数代替字符串,然后自己将long[]连接成字符串再进行查询。
LIke的条件查询也是一样的做法。
Select * from contactcomp where name like '%' and 1=1 and '%'='%'
Select * from contactcomp where name like '%name%'