我已经看到大多数使用密码侵入了loginpages.asp的90%:1'or'1'='1
但似乎他们并没有改变它并使用相同的验证方法。我在我的项目中检查了相同的方法,其登录页面为.jsp,它返回不正确的凭据,我的只是一个简单的方法,但发布网站是高标准的吗?与我的身份验证相比,他们的身份验证非常差。
人们告诉1'or'1'='1是一个简单的SQL命令。我不知道它是如何工作的,因为我没有在任何asp页面上工作过。请解释密码的工作原理。感谢
答案 0 :(得分:2)
这称为Sql Injection。
基本上,如果代码产品SQL查询基于字符串连接,则最终查询可能包含始终为真的条件,并允许攻击者在不知道实际密码的情况下登录。
使用ASP.Net,如果你编写了一些ADO Sql Query,always use SqlParameter object。所有转义都将由ADO.Net处理。