瞎扯淡 Rails 中是否存在 12306 的 SQL Injection 问题?

QueXuQ · 2012年09月28日 · 最后由 jjym 回复于 2012年09月28日 · 2511 次阅读

先说说什么是 SQL Injection,简单的来说就是当我们输入 www.sample.com?testid=23 时,我们在 URL 中传递变量 testid,并且提供值为 23,由于它是对数据库进行动态查询的请求(其中?testid=23 表示数据库查询变量),所以我们可以该 URL 中嵌入恶意 SQL 语句。

12306 不出现这个问题,我几乎都忘记了这种问题的存在,以前用 jsp 的时候就会有这样的 url,现在用 Rails 了,几乎没有见过,是不是如果使用了 routes 就可以避免了这样的问题了?

尼玛,3 亿元的项目这错误真的低级哦。

这个系统是实习生做的。鉴定完毕

#1 楼 @ywencn 感谢蜗牛哥,原来 Rails 的 SQL Injection 是需要这样避免。不过比起.net 和 java 的,方便不是一般的多。

#3 楼 @QueXuQ 这两个也是?占位吧。。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号