我的任务是经历一些最近遭受过相当讨厌的SQL注入攻击的ColdFusion站点.基本上我的工作涉及向
如果我的查询如下所示:
select * from Foo where name like '%Bob%'
我的
@Joel,我不同意.
select a,b,c from Foo where name like
永远不要向某人建议他们应该"选择明星".形式不好!即使是一个例子!(甚至从问题中复制过!)
查询是预编译的,您应该将通配符作为传递给查询的参数的一部分.此格式更具可读性,运行效率更高.
进行字符串连接时,请使用&符号运算符(&),而不是加号.从技术上讲,在大多数情况下,plus会正常工作......直到你在字符串中间抛出一个NumberFormat()并开始想知道为什么当你检查时你被告知你没有传递有效数字你是.