使用单个修剪功能是不是可以解决 sql 注入?
Posted
技术标签:
【中文标题】使用单个修剪功能是不是可以解决 sql 注入?【英文标题】:Does using a single trim function solve sql injection?使用单个修剪功能是否可以解决 sql 注入? 【发布时间】:2015-05-15 02:10:56 【问题描述】:trim函数既然去掉了空格,是否解决了sql注入的问题?如果没有,请有人发布示例。
【问题讨论】:
请谷歌“SQL注入示例” 为什么你认为空格和SQL注入有关? 绝对不是。它只删除前导和尾随空格。 我想不出任何机智的答案。哦,等等…… @ChenErnest 你能举个例子说明修剪将如何防止SQL注入? 【参考方案1】:不,添加修剪不会阻止 sql 注入。 trim 只删除字符串外部的空格。
Select * from aTable where name like '%'+@SearchString+'%'
如果你 @SearchString 持有类似
的东西'' update aTable set someColumn='JackedUpValue' where someColumn like '
然后当你把它们放在一起并动态执行它时,你会得到
Select * from aTable where name like '%' update aTable set someColumn='JackedUpValue' where someColumn like '%'
您可以修剪 @SearchString 100 次,而根本不改变它的值。
【讨论】:
【参考方案2】:为了避免 Sql 注入,请使用以下内容:
-
准备报表
存储过程
您的应用程序将非常安全。
更详细的专家分析搜索google。 这是一个让你开始的链接Sql Injection Prevention
【讨论】:
以上是关于使用单个修剪功能是不是可以解决 sql 注入?的主要内容,如果未能解决你的问题,请参考以下文章