首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

sql防注入

2012-01-21 
sql防注入求助请问下,各位大侠们.我想问下就是...是不是我把用户输入的字符串..里的单引号()都替换成空字

sql防注入求助
请问下,各位大侠们.我想问下就是...是不是我把用户输入的字符串..里的单引号(')都替换成空字符串("").是不是这样就能防止了??

[解决办法]
不好意思其实我想问的是...
列如
String sql = "select * from tableName t where t.userName='"+userName+"'";
如果用户输入 test' or '1'='1
select * from tableName t where t.userName='test' or '1'='1';
这样用户就能绕过登录..
如果把全部单引号替换为空字符串,这样用户输入的,就只是个字符串....??
select * from tableName t where t.userName='test or 1=1';
这样做行不行???
不行请举个列子.谢谢.

不行吧。。举个例子。。。。
用户名test能够正确登录,,如果用户输入't'e''s't',这样你把'引号替换为空字符串,结果为test,导致本身不能登录的也能登录了。。。乱套了。。。

热点排行