这条语句的错误在那里,麻烦兄弟给检查下!

诸葛非卿 发布于 2012/04/23 21:49
阅读 416
收藏 1
string sqlCheck = "select * from  articleControl_Table where '" + sqlChaXun + "' like  % '"+sqlXuanZ+"' % ";
加载中
1
华宰
华宰
SQL 注入就是这样的代码导致的
诸葛非卿
诸葛非卿
这个仅仅是在管理有台使用的,用于查询数据库而已。。 SQL注入嘛,估计还没有办法进入到这么深,如果说已经能够进入到这里进行注入,那么前面的一些安全手段都没有用的情况下,这里就算进行防注入安全也是没有什么作用的。
0
诸葛非卿
诸葛非卿

关键是这个代码,老是报错,是不是我的引用转义符号出现问题了?比如这里:% '"+sqlXuanZ+"' % ";

是不是这种情况呢?

0
Andre.Z
Andre.Z

给你个由你上面的得到的

select * from  articleControl_Table where 'a' like %'b'%

你跑跑上面的那种类型试试,能行就怪了。

select * from  articleControl_Table where a like  '%b%'

这样才是正常的吧。


你把你的这个字符串打印出来就知道了。

0
诸葛非卿
诸葛非卿
那我试试看看吧!
0
诸葛非卿
诸葛非卿

sqlChaXun

sqlXuanZ

这两个是变量

0
诸葛非卿
诸葛非卿

'sqlXuanZ' 附近有语法错误

这个是修改之后的code

 like  % sqlXuanZ % "

Y-QTCe
Y-QTCe
like '%"+sqlXuanZ+"%'"
0
吃土的汉子
吃土的汉子
这种拼接型SQL是SQL注入的源泉,先收藏着,等研究完SQL安全再来看看这语句安全方面的漏洞
0
cxshun
cxshun

"select * from  articleControl_Table where '" + sqlChaXun + "' like  % '"+sqlXuanZ+"' % ";

为啥这里变量sqlChaXun两边要加单引号呢,这个是值才要的。去掉试试。like那里'%把单引号移到%里面去。

0
胡晋
胡晋

select * from  articleControl_Table where 'name=haha' like %'uname=ok'%

你出来的语句..佩服!

0
hkiaipc
hkiaipc

抛开SQL注入的问题不说,

为什么不用 string.Format() 函数, 检查方便多了, 书写也不容易出错.

返回顶部
顶部