【发布时间】:2013-04-05 16:54:09
【问题描述】:
这是一个针对 PDO 准备语句的安全问题。使用 PDO 我知道 sql 注入的风险几乎是不可能的,并且该类会为您处理所有这些。使用它们 mysql_* 堆栈后,我总觉得好像我没有很好地处理安全问题。我通常习惯于编写数百行代码来处理安全问题,而现在我实际上只是在编写查询。
除了数据库中字符串的长度之外,PDO 语句是否真的存在任何安全威胁?
【问题讨论】:
-
这有点像问“在编程中我需要注意什么安全问题吗?”可能太宽泛了。
-
其实我认为这是一个定义相当明确的问题,基本上是“POD 不会自动防御哪些安全威胁”我喜欢它。
-
IT 中没有什么是 100% 安全的。 PDO 只是另一道防线。在将输入传递给查询之前,您仍然应该验证输入...
-
PDO 只是保护您免受与 SQL 相关的东西的影响。 Web 上还有许多其他安全风险,从简单的 Javascript 注入到更多“异国情调”的问题,例如与字符编码有关的 XSS 攻击。大多数这些事情都通过您准备好的陈述进行。