在课堂上,我们正在学习SQL注入攻击,我的教授向我们展示了一些示例,其中我们要么只使用用户名输入进行攻击,要么同时使用用户名和密码。
我开始阅读更多关于SQL注入的内容,发现您可以通过在用户名输入中键入'admin‘或'xx’,然后主要使用用于攻击的密码输入来创建攻击。
我的问题是,是否有可能只使用密码输入而不在用户名输入中键入任何内容来执行SQL注入攻击?
编辑:这个问题是关于通过网站登录页面的密码框对数据库进行SQL注入攻击。
发布于 2014-04-29 10:36:30
是否有可能只使用密码输入而不在用户名输入中键入任何内容来执行SQL注入攻击?
是。
发布于 2014-04-29 12:14:32
如果你问这个问题,那么你的教授没能解释清楚。不过,他并不孤单。
世界上大多数人确实混淆了injection和。以此类推。
你的教授向你展示的是利用。是的,各种特定的漏洞涉及各种特定的查询部分。但是,注入的原理是对查询完整性的破坏。就这样。只要你能将任何代码注入到查询中,它就是易受攻击的。你能不能利用它-那是另一回事了,你必须学习SQL,而不是为了这个而学习注入。
但是注入的要点就是破坏查询的完整性。无论是密码还是“记住我”复选框,这都无关紧要。可以理解吗?
为了更好地理解,我将向你推荐一篇文章,我写了一篇旨在保护免受注射的文章,但它肯定也可以帮助你理解注射。前三章和附录可能是最有帮助的。开始了:The Hitchhiker's Guide to SQL Injection protection
发布于 2014-04-29 10:44:57
是的,这是可能的,取决于如何编写代码来验证。如果编写代码只是为了获得true/false结果集。你可以做任何事情来获得真正的结果并进入应用程序。例如,select '1‘from xyz where username='xxx’或yy=yy
https://stackoverflow.com/questions/23354276
复制相似问题