在课堂上,我们现在正在学习SQL注入攻击,我的教授向我们展示了一些示例,我们只使用用户名输入进行攻击,或者同时使用用户名和密码。
我开始阅读更多有关SQL注入的内容,并发现您可以通过键入' admin'来创建攻击。或者' xx'进入用户名输入,然后主要使用密码输入进行攻击。
我的问题是,是否可以仅使用密码输入执行SQL注入攻击并在用户名输入中不输入任何内容?
编辑:这个问题是在通过网站登录页面的密码框对数据库使用SQL注入攻击的背景下。
答案 0 :(得分:5)
是否可以仅使用密码输入执行SQL注入攻击并在用户名输入中不输入任何内容?
是
答案 1 :(得分:1)
如果你问这个问题,那么你的教授就失败了解释。不过,他并不孤单。
世界上大多数人确实混淆了注入和漏洞利用。一个接一个。
您的教授向您展示的是漏洞利用。是的,各种特定漏洞涉及各种特定查询部分。但注入的原则是打破查询完整性。这就是全部。只要您可以将任何代码注入查询,它就很容易受到攻击。你是否能够利用它 - 这是另一回事,一个人必须学习SQL,而不是为此注射。
但是注入点只是破坏了查询的完整性。对于这件事并不重要,无论是密码还是"记住我"复选框。可理解?
为了更好地理解,我建议你写一篇文章,我写了一篇针对注射的保护,但它肯定可以帮助你理解注射。前三章和附录可能是最有帮助的。这就是:The Hitchhiker's Guide to SQL Injection protection
答案 2 :(得分:0)
是的,可能取决于编写代码以进行验证的方式。如果只编写代码以获取真/假结果集。你可以得到任何真正的结果并进入应用程序。例如,选择' 1'来自xyz,其中username =' xxx'或者yy = yy