【发布时间】:2013-03-14 10:55:24
【问题描述】:
伙计们,我是 mysql 安全新手,当我在 google 上搜索这个问题时,很多人警告我们应该检查 mysql 字符串,看看它是否包含 ',否则你有风险得到mysql数据库注入,但他们没有告诉为什么?你能告诉我原因吗?非常感谢。
【问题讨论】:
-
您需要在将字符串插入 mySQL 数据库之前对其进行转义。就这样。没有必要查看它是否包含
'。如需更多信息,请告诉我们您使用什么平台来访问数据库 - 每种编程语言/数据库库都有其转义数据的方法。 -
使用一些获取字符串并直接将它们用作批处理 SQL 的 API 是危险的。但是你今天很少使用这样的 API。这完全取决于您的应用程序代码和库。
-
有时可以(并且可能更安全/更快)只使用传递参数的整数值。例如,当它是表上一行的 id 字段时。来自客户端的任何东西都可能是可疑的(例如,编辑下拉列表中的可用选项以添加可疑选项是很简单的)
-
我用的是没有库的PHP(或者我自己写的MYSQL库),我只是想开发一个简单的博客CMS,我对mysql的安全性一无所知。
标签: mysql database database-security