[ Java ]关于 SQL 注入的两个问题,请教一下。

2020-02-20 15:31:49 +08:00
 sandman511

1.所有的 SQL 语句都使用 preparestatement 的话,不做其他任何设置,是否就可以彻底避免 sql 注入?

2.因为系统较老 且 sql 语句很多 改成 preparestatement 工作量过大,于是写了一个过滤器,过滤参数中的 or 等词汇,但这样带来的问题是比如 importentInfo 这样的词汇中带有 or,也被过滤了。改如何修改?

新手,如果问的问题比较低级,请不要嫌弃哈

1320 次点击
所在节点    问与答
9 条回复
leonme
2020-02-20 15:46:11 +08:00
如果使用 ORM 框架的话,不用考虑这个问题
liprais
2020-02-20 15:47:03 +08:00
prepared statement 是唯一从源头上解决问题的方法,其他的肯定有漏洞
sandman511
2020-02-20 15:48:27 +08:00
@leonme servlet+JSP
hlwjia
2020-02-20 15:50:50 +08:00
sandman511
2020-02-20 15:51:05 +08:00
@liprais 用且仅用 prepared statement 是否可以彻底避免 SQL 注入了
sandman511
2020-02-20 15:53:25 +08:00
@hlwjia 我等等去看下这两个帖子
“你觉得你手写的能和被公认的库比?还比他强?”
公认的库?这是什么意思
ym1ng
2020-02-20 16:03:44 +08:00
OWASP ESAPI 了解一下
Jacky23333
2020-02-20 16:13:14 +08:00
@sandman511 这跟 orm 有什么关系,麻烦楼主先百度下 orm 好吧.....
retanoj
2020-02-20 23:03:10 +08:00
1 并不能。

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

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

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

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

© 2021 V2EX