sqllab第十七关通关笔记

知识点:

  • 错误注入
  • update更新语句
    • update 表名 set 字段='输入' where 字段名=数据

通过admin admin进行输入发现是一个数据更新的语句

推测原始语句为update 表 set password='' where username=''

直接构造payload:passwd=admin'+and+exp(710)'

发现有错误提示,说明单引号起作用了,按理说引号已经闭合了,为啥还有错误呢

看提示应该是程序把'where username='识别成字符串了

修改payload:passwd=admin'+and+exp(710)='1

成功触发了exp()函数的错误提示;说明这里可以进行错误注入

接下来利用错误注入获取数据库的名字

构造payload:passwd=admin'+and+extractvalue(1,concat(0x7e,,0x7e))='1

成功获取到了数据库名;好了,收工了

10

相关推荐
GlueNa2SiO38 小时前
第十八章 Linux故障排查与恢复
linux·服务器·笔记·学习
xian_wwq9 小时前
【学习笔记】Context Engineering,AI Agent 真正的内存管理-4/16
笔记·学习·context
疯狂打码的少年10 小时前
【数据结构】队列:定义、顺序队列与链式队列
数据结构·笔记
LeoZY_12 小时前
LinkScope 使用笔记:基于 OpenOCD 的通用硬件芯片调试助手
笔记·单片机·嵌入式硬件·开源软件
不会代码的小猴12 小时前
标准模板库(STL)
开发语言·c++·笔记·算法
爱莉希雅&&&13 小时前
K8s NFS+StorageClass+PV/PVC+Deployment 实战笔记
笔记·容器·kubernetes
影寂ldy13 小时前
SQL 索引(Index)完整笔记
数据库·笔记·sql
GlueNa2SiO313 小时前
06-Docker存储与数据持久化
笔记·学习·docker
上下求索,莫负韶华15 小时前
切面学习笔记
笔记·python·学习
测试运维日常笔记15 小时前
Unix/Linux 系统软件包管理笔记
linux·笔记·unix