1.公众号回复得flag
没啥好说的,回复得flag
2.ez_rce
![](https://img-blog.csdnimg.cn/img_convert/3cca36773f3ccc372735dbb9501ea7fe.png)
关键就是审计代码
这里正则匹配过滤了小写字母,数字,然后看到了eval()函数,就知道这道题肯定是一个命令执行
我感觉这里跟我之前做的一道题很像([极客大挑战 2019]RCE ME),就搬来之前的脚本了
将system ls,分别url反编码绕过,得到flag.php、index.php
![](https://img-blog.csdnimg.cn/img_convert/521870440c878be51349c107b6021477.png)
之后我寻思直接cat flag.php,但是没有回显(奇了怪了)
从网上查了命令执行中另一种查询flag.php的方法 tac flag.php
出flag
![](https://img-blog.csdnimg.cn/img_convert/eafa0e779722738b04024cf60a7c5a87.png)
3.nc捏
利用Ubantu,简单的一个nc 39.99.242.16 8001
之后ls
cat flag
4.小试牛刀
碰上差不多一样的题了
之前做buu[BJDCTF2020]鸡你太美差不多一样的原理
下载附件,一个文本提示我们不止是base编码
另一个就是一个损坏的gif文件,我找了一张正常的gif图片用winhex一对比,发现少了6个字节的文件头
于是就添加上,得到图片
之后用Stegsolve中的Frame Browser一帧一帧看,得到一个base编码,利用basecrack跑一下得到flag
5.你能找到球场的名字吗?
社工题,没啥好说的
6.ez_sql
说实话,这道题如果正常做,真做不出来,把database()过滤了,而且还不知道字段数,也不知道回显点位
不过这道题利用dirsearch一扫,有一个index.php.swp,是一个文本,里面说明了一些过滤信息
还有一个是db.sql,加上后缀,找到flag
7.ez_php
审计代码,flag由两段组成,而且存在文件包含漏洞
第一段
if (isset($_POST['0'])){
$arr[$_POST['0']]=1;
if ($arr[]=1){
echo$flag1;
}
else{
die("nonono!");
}
}
根据我的经验一看就是要利用数组绕过,先尝试一下POST 0[]=1,出了一半flag
![](https://img-blog.csdnimg.cn/img_convert/43cab20e05cdf6bce7d15f633c10cbd3.png)
之后就是看另一段
if (isset($_GET['KFC'])){
if ($_GET['KFC'] ==0){
assert("intval($_GET[KFC])==50") ordie("寄了捏");
echo$flag2;
}
这里就是弱类型比较以及intval()函数的绕过了
必须让KFC为0而且让KFC也为50,才能输出flag
从CSDN上找了张图片
![](https://img-blog.csdnimg.cn/img_convert/f5577159ff8e30e26bf7037b770a9582.png)
所以说我们这里可以利用intval()函数的特性,intval函数遇到字符会停止识别,将50利用16进制转为32
GET KFC=0x32 这样既满足0也满足50,得到flag
![](https://img-blog.csdnimg.cn/img_convert/c88101ccce65648f33a2fa44dbe1d5a1.png)
8.Sudoku_Master
本来一开始寻思从网上找脚本,发现都是适用于9x9的脚本,没有16x16的,又从网上和手机上找有没有自定义数字字符的数独,也没有,后来我感觉可以试出来,毕竟是所有数字之和的md5值,最大的数字也就16,所以我就从50开始试,一直试到312出来了,flag就是312经过MD532位小写加密后的
9.套套的套套
套娃题,一开始第一层是真卡了一天,我一开始方向错了,以为是编码,其实是一个密码字典,利用AR上的字典攻击直接出了第一层密码guYaVexE7M@m5NLBRbFh
![](https://img-blog.csdnimg.cn/img_convert/d1dc9b1ef9367fc25b32b7aacb1d9db5.png)
第二层是一个二进制的文本,一开始我先尝试进制转换,感觉没啥思路,后来从网上搜有没有由二进制构成的密码,搜到了培根密码,我一开始将1换为A,0为B,没有出来,后来一换就得到了第二层的密码
tiersxqxyhdcbsnervfy
第三层就是一个简单的OKK,没啥难度。密码fuwoqilaiwhainke
最后一层就是一张图片,拉近kali,没有改变宽高,binwalk也没有东西,之后放进winhex看一下,找到flag
10.真的很ez啦~
一开始下载得到一个压缩包,以为是伪加密,后来拉到winhex直接看最底下,有一个密码,压缩得到一张图片和一个文本
我现在电脑上的文本都是用的Sublime,所以看到下面就是一个零宽,直接用网站一解密,得到密码
这个图片我一开始用winhex看了,拖进kali也分析了,没有啥东西,卡了一会,后来想到了有可能是隐写,直接zsteg,发现确实有隐写,又想到了有一个密码,估计是利用cloacked-pixel-master(真麻烦,我kali下载不了一些库,不知道为啥,从网上查了查可以利用anaconda配python2使用,得亏之前数学建模让我们配置了,之后就是漫长的下载库)之后一运行脚本,尝试了很多种密码组合,一开始以为解出来的_1s_E45y要与f4k3_k3y,FAK3_KEY连起来使用,原来直接用就行,得到flag
签到
![](https://img-blog.csdnimg.cn/img_convert/ae3edd59e5c2bede20b25b00ba21b8f8.png)
从网上搜了搜这里是变量覆盖漏洞,这道题做了蛮久的,一直在找如何绕过,后来看到了一篇关于ctfshow刷题的博客,也是一道变量覆盖漏洞的题目,就借用了一下脚本
import string
s = string.ascii_letters
t='_=a&'
code="phpinfo();"
for i in range(s): 对于这里是一个循环,就是看进行几次变量覆盖,s就是次数
t+=s[i]+"="+s[i+1]+'&'
t+=s[i]+'='+code
print(t)
![](https://img-blog.csdnimg.cn/img_convert/9c4435b0ae17d608ecf61c04f5c22689.png)
![](https://img-blog.csdnimg.cn/img_convert/f60668bfc6108ea99fbe87953883c7ed.png)
成功回显,说明成功绕过变量覆盖漏洞
又看到了eval()函数,估计是一个命令执行
直接换为
_=a&a=b&b=c&c=d&d=e&e=f&e=system('ls');
![](https://img-blog.csdnimg.cn/img_convert/2d783b62f8ad6943debad70c88c2eeb5.png)
_=a&a=b&b=c&c=d&d=e&e=f&e=system('ls /');
![](https://img-blog.csdnimg.cn/img_convert/0b62f51654511c86313a08fd4d289053.png)
12.没有古典那将会多么孤独
密码好歹有不用python捣鼓的了,真难受啊
看到了有个hint才做的,hint是在base32之前,是不是还有步别的操作
打开附件,就是一些字符串,感觉像base家族的编码,但是又想到hint,有可能是经过凯撒进行位移了,就开始枚举,依次用basecrack尝试,测试到偏移量为13时,发现解出来了
![](https://img-blog.csdnimg.cn/img_convert/5991423c1c83ec3352d372fe6c4527eb.png)
之后就是一连串的操作,转为
![](https://img-blog.csdnimg.cn/img_convert/d9d878528df5fa97466a253cfabea907.png)
![](https://img-blog.csdnimg.cn/img_convert/87cfa41d004239406098e91d39a798ec.png)
最后得到一串摩斯密码,然后利用在线工具解密,得到一串字符串,一开始咋都提交不上,后来想到了摩斯密码默认输出大写字母。。。改了之后就出了
13.ezRe
真的没办法,让我一个misc,web手去捣鼓新题,分衰减的太快了,我这道题纯属瞎猫碰上死耗子,试出来了
我因为没有逆向基础,我感觉就应该直接放进IDA里,我挨个点了点没啥东西
就去查IDA的一些常规操作,发现了一个F5进入伪编码
找到main函数有一个checkflag
char __cdecl check_flag(char *a1){ char result; // al
还有一些if语句
我查了查char __cdecl的一些意思
我感觉char就是引用,__cdecl是C/C++默认的调用方式
所以就是下面的result都是C/C++写的
IDA里有一个R键是用来转换编码的,所以我就将每一个result用R转换,就得到flag了......
14.ez_upload
这道题确实没想到,一开始直接没想法,但是今天晚上我又尝试了一下,我感觉应该是环境崩了,我今天下午一开始是能访问后台的(就是那个http://1.13.251.106:2026/images/,传了不少超哥的帅照)
今天晚上突然不行了,然后我传一张图片🐎,寻思访问看看,突然发现
![](https://img-blog.csdnimg.cn/img_convert/f11e4643787f9f9cb891cc19252d4b9d.png)
然后我用蚁剑一连,居然成功了,之后就出了
(但是之后我再访问就不行了)
![](https://img-blog.csdnimg.cn/img_convert/78c2a22ff933e7d8a019d7f0a8b950ec.png)