-6

我试图更多地了解 SQL 注入的安全含义,但对此不确定,我在网上找不到任何有用的东西。

我们可以通过正确编写 Javascript 代码来防止 SQL 注入吗?如何?

干杯

4

4 回答 4

8

切勿尝试仅通过 JavaScript 来阻止 SQL 注入。如果我关闭 JavaScript 会发生什么?您的验证立即失败。如果我修改您的 JS 并删除您阻止我注入的关键字会怎样?

始终根据服务器对其进行验证。

于 2013-05-23T13:54:57.883 回答
1

它与正确编写 JavaScript 无关。

它是关于确保在服务器端不直接在查询中使用用户输入文本。它还涉及确保您使用准备好的语句而不是直接的完整查询。

于 2013-05-23T13:55:32.870 回答
1

不,除非您碰巧直接在 JS 中运行 SQL 查询。查询链的最后一部分应该是进行参数化和验证。这样做的原因很简单:JS 可以在浏览器中禁用,从而使您的清理无用。

单独使用参数化可以安全地防止 SQL 注入(一阶)。这是您真正的保护载体 - 再多的文本清理都无法完全降低风险。

于 2013-05-23T13:55:55.880 回答
0

客户端的 Javascript 始终暴露给用户。关闭 Javascript 将很容易击败它。验证应始终放在客户端和服务器端,以确保完全保护。

于 2013-05-23T13:58:47.403 回答