0

我有一个控制台应用程序,它以文件为目标并执行 SQL 查询和其他事情。基本上是一个服务器。但是,它没有任何孩子的文本输入字段。还可以注射吗?

4

5 回答 5

2

是的。

如果它对来自任何来源的攻击者可控数据进行操作,它仍然可能受到攻击。

例如:

  • 如果它接受 URL,攻击者可以添加或修改恶意查询字符串参数
  • 如果它对数据库中的现有数据进行操作,攻击者可以尝试通过其他应用程序设置该数据
于 2013-03-28T03:10:06.320 回答
0

仅当它正在读取命令行参数或解释其他外部输入(外部文件)时——否则,不。

于 2013-03-28T03:09:39.347 回答
0

如果您不使用参数化查询,则任何动态构建的 SQL 查询仍有可能发生 SQL 注入。

如果你动态构建它,这意味着数据来自某个地方。可能是文件、系统调用、命令行参数或 Internet 调用。如果输入源可以被破坏,SQL 注入是可能的。

于 2013-03-28T03:10:05.053 回答
0

是的 - 如果有任何东西通过网络传输,它很容易受到中间人的攻击。如果所有内容都本地包含在一台机器上,则可能性要小得多;但是,这仍然很有可能。

于 2013-03-28T03:14:45.103 回答
0

这取决于您如何在控制台应用程序中使用 SQL 查询,如果您的 SQL 查询没有从命令行输入或文件输入或任何输入中获取任何输入,那么就没有注入。

于 2013-03-28T05:05:59.470 回答