1

我正在做这个系统堆叠,我正在创建搜索功能。在那个过程中,我想到也许AR/nHibernate Expression.Like(和兄弟姐妹)可能不是 100%“安全”,因为你可以创建类似的东西;"\r\ndrop database xxx;---" 和类似的东西......?

我希望他们是安全的,但我不确定......

4

2 回答 2

4

NHibernate(以及扩展的 ActiveRecord)生成sp_executesql 'select blah from table where column = @p1', '@p1 varchar(10)', @p1 = 'drop database xxx;---'查询形式的参数化 SQL 语句。这些类型的 SQL 语句不会受到 SQL 注入的影响,因为不会执行参数的内容(与使用简单连接时的情况不同)。

所以是的,两者都是“安全的”。

于 2008-12-02T03:03:00.637 回答
0

如果你发现了一个安全漏洞,你绝对应该提交它。许多人依赖这些东西。

于 2008-12-02T02:16:22.663 回答