- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库爆破万能密码
万能密码
在登陆后台时,接收用户输入的Userid和Password数据,并分别赋值给user和pwd,然后再用 sql select * from admin where username user and password pwd这句来对用户名和密码加以验证。 以常理来考虑的话,这是个很完整的程序了,而在实际的使用过程中,整套程序也的确可能正常使用。但是如果Userid的值和password的值被赋于:safer’ or’1’ ’1’ 这时, sql select * from admin where username user and password 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 〉 then response.redirect WL ..jiajia response.end end if next %〉 同样是先取得用户输入数据,然后分析用户输入的每一个字符,如发现异常,则转到错误页面。 if cl or us % or us 〈 or us 〉 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 password 4、得出结论。
例如:[/code]Quotesql select * from ****_admin where admin_pass ’admin_pass’ and admin ’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 where username `` and password ``一般用`or` `or`提交进去后,这段代码就会执行这样的程序 。 sql ``sele ct * from user s where username ` `or` `or` ` and password ` `or` `or` ``or`的前面一个单引号,就会和数据执行中 username ` 中的这个单引号,形成一个双引号,是由于数据库中 单引号和双引号的区分不是很明 确,所以 username ``or` `or`` 中的两个单引号就会误认为是合法的语法,执行的用户名就是 or` `or 这样的话,数据库会返回所有用户名,而uers数据库会认为登陆用户合法(密码同理),便而可以进入后台。
常用的后台万能登陆密码:or or oror or or oror 1or 1 1or a a
修补方法:在后台登录文件源代码中找到这些代码: %
pwd request.form pwd
name request.form name
Set rs Server.CreateObject ADODB.Connection
sql select * from Manage_User where UserName name And PassWord encrypt pwd 由于接受变量pwd、name时没有做任何处理。才导致这个漏洞。我们要让它进行处理,过滤掉“”符号。只要把文件改成以下代码即可: %
pwd replace trim request.form pwd ,,
name replace trim request.form name ,,
Se
您可能关注的文档
- 数据库上机作业5.doc
- 数据库中三范式经典解析.doc
- 数据库中三个范式的理解.doc
- The Economic Demographic Impact of HIVAIDS in South Africa.ppt
- 数据库中锁的概述.docx
- 数据库关系代数表达式学习.docx
- The Effect of Condensate Banking on Production.ppt
- The Diagnostic Testing Process.ppt
- 数据库单项选择题复习题.doc
- The Effect of Irradiatied Adsorbed Species on cellulose by ESR.ppt
原创力文档


文档评论(0)