【问题标题】:retrieval of user-supplied data: any benefit for prepared statements检索用户提供的数据:准备好的语句的任何好处
【发布时间】:2009-11-22 09:42:32
【问题描述】:

当用户提供数据并且我们将这些数据用于数据库插入甚至只是构造查询时,准备好的语句可以很好地防止 sql 注入。但是,当我从数据库中检索以前插入的用户提供的数据时,PDO 真的有什么好处吗?

在我看来答案是否定的。它已经在里面了。只要检索它的查询本身没有被用户提供的参数玷污(例如 select * from table 没有被用户提供的数据玷污),即使不是 PDO,也可以使用任何东西,即使正在检索的数据本身是在过去的某一时刻用户提供的数据。对此有何意见?

我的猜测是,一旦人们开始在他们的代码中使用 PDO,那么在他们的所有代码片段中继续使用它就成为一个统一的问题,并且永远不会回到正常的 mysql(即使 PDO 稍微困难一些)。

【问题讨论】:

    标签: mysql database security pdo


    【解决方案1】:

    一致性一个好处。事实上,这是使用 PDO 的主要(理论上)好处。通过绑定参数防止注入与 PDO 正交。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-19
      相关资源
      最近更新 更多