当不能使用参数化查询时,转义SQL字符串
本文关键字:转义 SQL 字符串 查询 不能 参数 | 更新日期: 2023-09-27 17:52:45
更新:请参阅先前存在的问题及其答案,该问题实际上是重复的
我正在使用一个第三方API,它接受SQL语句的WHERE条件片段
。ThirdPartyFunction(where:"Category = 'abc'", top:5)
我有字符串通过UI或web服务,需要防止SQL注入攻击。
如果不使用参数化查询,并且在. net框架中没有替代方法来转义SQL字符串(据我所知),我希望手动转义SQL字符串。
我有关于编写逃避方法的最佳方法的想法,但我正在寻找最安全的解决方案。
参数化查询绝对是最安全的,但是您可以用两个单引号替换任何单引号。因此,如果用户试图在'abc'部分中输入恶意查询,它将将其作为字符串处理。
您使用的是哪个第三方库?您是否检查过确保它们不提供对其方法的参数化调用的能力?