-
-
[旧帖] [推荐]万能密码是什么 菜鸟必看 0.00雪花
-
发表于: 2013-11-19 18:50 1271
-
在登陆后台时,接收用户输入的Userid和Password数据,并分别赋值给user和pwd,然后再用 sql=select * from admin whereusername=user and password=pwd 这句来对用户名和密码加以验证。 以常理来考虑的话,这是个很完整的程序了,而在实际的使用过程中,整在登陆后台时,接收用户输入的Userid和Password数据,并分别赋值给user和pwd,然后再用sql="select * from admin whereusername="&user&" andpassword="&pwd&""这句来对用户名和密码加以验证。以常理来考虑的话,这是个很完整的程序了,而在实际的使用过程中,整套程序也的确可能正常使用。但是如果Userid的值和password的值被赋于:safer’ or’1’=’1’ 这时,sql="select * from admin whereusername="&user&" andpassword="&pwd&""就成了:sql="select * from reg where user=safer’or’1’=’1’ and pass=safer’ or’1’=’1’有这样的问题,我们就来试着解决它。从上面的程序中各位也可以看出,只要对用户输入的数据进行严格过滤就可以了。如下:Quote〈%user=request.from("UserID")pass=request.from("password")for i=1 to len(UserID)cl=mid(UserID,i,1)if cl="" or us="%" or us="〈" or us="〉"thenresponse.redirect "WL ..jiajia"response.endend ifnext%〉同样是先取得用户输入数据,然后分析用户输入的每一个字符,如发现异常,则转到错误页面。 if cl="" or us="%" or us="〈" orus="〉" then 这一句中可以加入任意的过滤字符,跟据具体情况而定。修补:username=replace(trim(request("username")),"’","")password=replace(trim(Request("password")),"’","")把“’”给过滤了如果想用“’”当做密码就这样:1、select * from user where user=’ " &User & "’ "2、如果返回不为假,则取密码pass=rs("passwd")3、判断:if pass=password4、得出结论。例如:[/code]Quotesql="select * from ****_admin whereadmin_pass=’"&admin_pass&"’ andadmin=’"&admin&"’"rs.open sql,conn,1,3if not(rs.bof and rs.eof) thenif admin_pass=rs("admin_pass") thensession("admin")=rs("admin")[/code]当登陆提交用户登陆表单时,数据库会执行以下的代码sql=``sele ct * from user s whereusername=`` and password = ``一般用`or`=`or`提交进去后,这段代码就会执行这样的程序 。sql=``sele ct * from user s whereusername=` `or`=`or` ` and password =` `or`=`or` ``or`的前面一个单引号,就会和数据执行中 username=` 中的这个单引号,形成一个双引号,是由于数据库中 单引号和双引号的区分不是很明确,所以 username=``or`=`or`` 中的两个单引号就会误认为是合法的语法,执行的用户名就是 or`=`or 这样的话,数据库会返回所有用户名,而uers数据库会认为登陆用户合法(密码同理),便而可以进入后台。常用的后台万能登陆密码:'or''='"or=or"'or''=''or''=''or'='or''or'='1''or' '1'='1'or 'a'='a'修补方法:在后台登录文件源代码中找到这些代码:<%pwd = request.form("pwd")name = request.form("name")Set rs = Server.CreateObject("ADODB.Connection")sql = "select * from Manage_User whereU
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
赞赏
雪币:
留言: