数据库注入学习1---Access注入(偏移注入)

本文探讨了在Access数据库中,当只知道表名而无法获取字段名时,如何利用偏移注入来查询数据。通过实例展示了在字段数不匹配导致错误的情况下,如何调整SQL语句以避免错误,并提出一种新的技术,使得偏移注入过程更系统化,减少了依赖人品的猜测。通过确定字段数量和位置,逐步揭示所需数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引:当我们知道表名,无法得知字段名,查询不出字段内容时可以使用偏移注入进行查询。

说明:在Access数据库类型注入的时候,获取不到列名(前提是有表名),一般选择使用偏移注入,但是这种注入方式往往借助的是个人人品,且步骤繁琐。本文中研究了一种新的注入技术让偏移注入不再需要人品。

首先打开phpmyadmin新建两个数据库已知表名为admin和test
在这里插入图片描述
在这里插入图片描述
接下来开始操作首先了解显示位 在字段值7和8处填入表名那么页面也就会返回其数据
在这里插入图片描述
在本地使用数据库语句查询如下:
在这里插入图片描述
在这里插入图片描述

当两边查询字段数不一致时sql就会报错:
在这里插入图片描述
简单的说就是当test id=1时显示的是9个字段 而 admin = 4个字段
那么这里我们修改成两边相同时数据库就不会报错了
在这里插入图片描述
同样的可以使用第二种办法 admin.*
表示admin表中的所有字段数(查询出四个字段)

在这里插入图片描述
回到刚刚的语句把admin.*加入进去
左边是9个字段如果右边加上admin.*那么就成了12个字段所以去掉4个数字返回正常
在这里插入图片描述
字段是对应网页上的某个内容比如图片、一段新闻等,如此我们在这里修改一下admin.*的位置
在这里插入图片描述
可以发现和上图中的位置不再一致所以我们可以移动admin.*的位置把想要的值输出到页面的回显点上

当在实战过程中不确定admin表中有几个字段那么通过刚刚的学习已得知admin.*表示admin表里的所有字段,已知这个条件我们可以通过页面的返回正不正常得知admin的字段数。
例子:若已知test的字段为26那么使用以下语句开始猜解到页面返回正常得到admin的字段数
在这里插入图片描述
若猜解到10的时候页面返回正常那么admin的字段数就是26-10=16
在这里插入图片描述
查看网页的图片对应的字段为25那么需要解决不确定自己要的数据位置是多少
在这里插入图片描述
在这里插入图片描述
那么就需要继续进行猜解 先看看是不是在一头一尾也就是1和16如果不在就取一个8代入语句进行查询,比如查询的数据是admin3 显示位是5那么我们就把admin3移动到5
在这里插入图片描述
使用语句挨个往前移动
在这里插入图片描述
看一张图理解
在这里插入图片描述

在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超级滑稽帝本人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值