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

相关推荐
一米阳光86613 小时前
软考(中级)软件设计师核心笔记(3)数据库系统——概念、数据库设计
数据库·笔记·职场发展·软考·软件设计师
漏刻有时4 小时前
PHP GeoJSON转PNG地图渲染程序开发笔记、源码解读、问题复盘与整改方案
android·笔记·php
暗影凋落4 小时前
CMake构建学习笔记-SQLite库的构建
笔记·学习·sqlite
zzm6286 小时前
精读KDD 2017最佳论文:通过类比挖掘加速创新 | 阅读笔记
笔记
你有哈莫吗6 小时前
CMake构建学习笔记-iconv库的构建
笔记·学习
tt55555555555510 小时前
电工证学习笔记(二)
笔记·学习·电力
阿米亚波12 小时前
【C++ STL】std::unordered_multiset
开发语言·数据结构·c++·笔记·stl
AnsonNie12 小时前
Ubuntu系统安装裕太微YT6801网卡驱动【笔记】
笔记·ubuntu
xqqxqxxq13 小时前
DML 表数据:插入、删除、修改
笔记·mysql
不会代码的小猴14 小时前
Linux note2
linux·笔记