读者朋友们知道什么原因吗?对,我们要看下数据库的构造,userinfo表里面有个userclassid字段,表示他们所对应的权限,而userclass表很明确的告诉了我们什么ID对应着什么权限,这里我们要进管理后台,当然得要系统管理员的账号密码。数据库表如图14
 图14
既然知道了这些,所以我们在构造Union查询的时候要加个条件where userclassid=1,即我们要得到账号信息就构造语法:union select usr,2,3 from userinfo where userclassid=1,得到的账号为fang,见图15:
 图15 同理我们构造语法:union select pwd,2,3 from userinfo where userclassid=1就可以得到密码信息,如图16:
 图16
我们登录后台试下,输入得到的账号密码登录,就可以进到后台,如图17:
 图17
就这样轻而易举的进了网站的后台,知道Union查询的威力了吧。
【ACCESS跨库查询】
前面我们讲了ACCESS的SQL注入,用到了子查询与联合查询,但是始终在一个数据库里,如果我们遇到要测试的不在同一个数据库里怎么办,有没有办法突破。我可以告诉你,有,不过要有条件:
1.使用union查询必须知道前一个select里表的字段数
2.必须知道目标数据库的所在位置,绝对路径
如果玩过黑客防线第四轮攻防实验室的朋友,都知道当时第一关就设置的2个asp+access的下载系统,一个是雨点下载系统,一个是盗帅下载系统。当时的情况是这样的:盗帅下载系统可以暴出数据库但是不让下载,似乎也没什么地方可以注射,而雨点下载系统数据库可以暴且可以直接下载,还可以注射。不过雨点的后台很简单,没什么可以利用的地方,这个时候,你该如何突破。有人开始追寻盗帅下载系统的漏洞,后来还是发现了盗帅的漏洞,而有的人则是放弃了,是不是有点过早放弃呢,而当时有人就通过雨点系统的注射点对盗帅系统的跨库查询而得到盗帅的后台密码,这可谓是跨库查询的经典的例子。感兴趣的可以参考下这里:http://www.4ngel.net/article/46.htm,本小节不再详述。上一页 [1] [2] [3] [4] [5] [6] |