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. 洛谷 P4779 单源最短路径(标准版) 题解

    题面 这道题就是标准的堆优化dijkstra: 注意堆优化的dijkstra在出队时判断vis,而不是在更新时判断vis #include <bits/stdc++.h> using na ...

  2. python 压缩文件(解决压缩路径问题)

    #压缩文件 def Zip_files(): datapath = filepath # 证据路径 file_newname = datapath + '.zip' # 压缩文件的名字 log.deb ...

  3. 删除项目中所有的__pycache__ 文件

    关于 pycache 当第一次运行 python 脚本时,解释器会将 *.py 脚本进行编译并保存到 __pycache__ 目录 下次执行脚本时,若解释器发现你的 *.py 脚本没有变更,便会跳过编 ...

  4. Ajax轮询请求

    Ajax轮询请求 什么是轮询? 轮询(polling):客户端按规定时间定时向服务端发送ajax请求,服务器接到请求后马上返回响应信息并关闭连接. Ajax轮询需要服务器有很快的处理速度与快速响应. ...

  5. VMware安装,安装CentOS 6.3 ,安装CentOS 7_1511_mini

    VMware安装包+汉化包+序列号 百度云链接:https://pan.baidu.com/s/1c8ZsZc9ySdCdxrywFO4eUA 提取码:iq7k 打开 VMware Workstati ...

  6. 机器学习python常用模块

    .Pickle模块 打包,解压训练模型 .pysnooper 调试打印日志

  7. laravel 学习之第一章

    LTS : long time support. download url : http://www.golaravel.com/download/ 第一篇 目录介绍: ​ resource:包含了原 ...

  8. logstash操作

    1.安装 1>安装java 2> #wget https://artifacts.elastic.co/downloads/logstash/logstash-5.6.3.tar.gz#t ...

  9. 008-saltstack之salt-ssh

    根据以往运维工作中操作经验来说,当管理上百台上千台服务器时,选择一款批量操作工具是及其有必要的.早期习惯于在ssh信任关系的前提下做for;do;done循环语句的批量操作,后来逐渐趋于使用批量工具操 ...

  10. php产品细节图多图上传示例代码 无刷新

    前台文件代码 upload.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...