仅仅只是把单引号与反斜杠转义不用 prepare statement 能否避免 sql 注入?

2017-05-10 13:26:32 +08:00
 zjsxwc

比如我输入登录名 login_name 为 \' 就拼出这种 sql:

SELECT * FROM account WHERE (1) AND (`account`.login_name = '\\\'')

这样能否避免 sql 注入?

3714 次点击
所在节点    程序员
23 条回复
zjsxwc
2017-05-11 17:11:22 +08:00
@t333st
谢谢回复。

现在我在维护的这个系统,是 utf8 编码的,sql 参数也是单引号包裹的,我想找出个例子能 sql 注入这个系统来说服领导去重构它。
t333st
2017-05-11 17:36:12 +08:00
@zjsxwc 有用到 iconv() 这个方法吗。。。
zjsxwc
2017-05-11 19:58:51 +08:00
@t333st 没有用 iconv

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/360353

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX