mysql - Python MySQLdb - 围绕 SQL 注入(inject)代码编程

标签 mysql python-2.7 code-injection mysql-python

首先,我对堆栈溢出(发布的第一个问题)和一般论坛还很陌生。 除了这种失败之外,我还不熟悉系统管理类型级别的开发和数据库。

我在 stackoverflow 上看到几个关于在 Python 中使用变量和 MySQLdb 模块的问题。他们中的许多人都提到了像 this. 这样的 SQL 注入(inject)代码。 70 + upvotes 的答案为您提供了一个示例,其中 % 似乎是您的代码是否易受 SQL 注入(inject)影响的决定因素。我的问题是:

  1. 我是否正确理解“”% (VAR) 而不是“”, (VAR) 是造成差异的原因?

  2. 如果是这样,那么就是this post还有一个例子,或者使用 % 来指定表与子句有什么不同吗?

值得一提的是,我尝试学习更多有关 SQL 注入(inject)的知识。不确定我是不是太密集或 Material 太密集,但我只是没有关注。在这个article by cisco我试着按照,我发现没有提到百分比,但他们似乎在使用?。因此,如果有人可以向我指出一些“外行”文档,我将不胜感激!

最佳答案

RandomSeed 发布了我问题的正确答案,所以我会重新发布:

一旦您开始将用户输入集成到您的查询中,SQL 注入(inject)就成为可能。这是 most famous illustrations. 之一This reference question ,虽然最初适用于 PHP,但也提供了大量关于如何防止这种情况的有值(value)信息,无论使用何种语言

关于mysql - Python MySQLdb - 围绕 SQL 注入(inject)代码编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18028576/

相关文章:

c++ - 强制实例化派生类型而不是基类型

mysql - 将 mysql 数据库导出到 csv 文件的工具

mysql - 当我用完一个 bigint 生成的 key 时会发生什么?如何处理?

php - MYSQL 触发器错误,

python - 查找列表中连续数字的开头和结尾

.net - 将托管 DLL 注入(inject) .net 4.0 应用程序

java - 未找到代理 JAR 或没有代理类属性

php - 尝试用 Javascript 填充字段,由 PHP 回显

python - 为什么 print() 打印一个空元组而不是换行符?

python - 在 DjangoRestFramework 中没有键的情况下返回 'ReturnList' 的值