纳新复赛wp

1.公众号回复得flag

没啥好说的,回复得flag

2.ez_rce

关键就是审计代码

这里正则匹配过滤了小写字母,数字,然后看到了eval()函数,就知道这道题肯定是一个命令执行

我感觉这里跟我之前做的一道题很像([极客大挑战 2019]RCE ME),就搬来之前的脚本了

将system ls,分别url反编码绕过,得到flag.php、index.php

之后我寻思直接cat flag.php,但是没有回显(奇了怪了)

从网上查了命令执行中另一种查询flag.php的方法 tac flag.php

出flag

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

之后就是看另一段

if (isset($_GET['KFC'])){
     if ($_GET['KFC'] ==0){
        assert("intval($_GET[KFC])==50") ordie("寄了捏");
              echo$flag2;
     } 

这里就是弱类型比较以及intval()函数的绕过了

必须让KFC为0而且让KFC也为50,才能输出flag

从CSDN上找了张图片

所以说我们这里可以利用intval()函数的特性,intval函数遇到字符会停止识别,将50利用16进制转为32

GET KFC=0x32 这样既满足0也满足50,得到flag

8.Sudoku_Master

本来一开始寻思从网上找脚本,发现都是适用于9x9的脚本,没有16x16的,又从网上和手机上找有没有自定义数字字符的数独,也没有,后来我感觉可以试出来,毕竟是所有数字之和的md5值,最大的数字也就16,所以我就从50开始试,一直试到312出来了,flag就是312经过MD532位小写加密后的

9.套套的套套

套娃题,一开始第一层是真卡了一天,我一开始方向错了,以为是编码,其实是一个密码字典,利用AR上的字典攻击直接出了第一层密码guYaVexE7M@m5NLBRbFh

第二层是一个二进制的文本,一开始我先尝试进制转换,感觉没啥思路,后来从网上搜有没有由二进制构成的密码,搜到了培根密码,我一开始将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

  1. 签到

从网上搜了搜这里是变量覆盖漏洞,这道题做了蛮久的,一直在找如何绕过,后来看到了一篇关于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)

成功回显,说明成功绕过变量覆盖漏洞

又看到了eval()函数,估计是一个命令执行

直接换为

_=a&a=b&b=c&c=d&d=e&e=f&e=system('ls');

_=a&a=b&b=c&c=d&d=e&e=f&e=system('ls /');

12.没有古典那将会多么孤独

密码好歹有不用python捣鼓的了,真难受啊

看到了有个hint才做的,hint是在base32之前,是不是还有步别的操作

打开附件,就是一些字符串,感觉像base家族的编码,但是又想到hint,有可能是经过凯撒进行位移了,就开始枚举,依次用basecrack尝试,测试到偏移量为13时,发现解出来了

之后就是一连串的操作,转为

最后得到一串摩斯密码,然后利用在线工具解密,得到一串字符串,一开始咋都提交不上,后来想到了摩斯密码默认输出大写字母。。。改了之后就出了

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/,传了不少超哥的帅照)

今天晚上突然不行了,然后我传一张图片🐎,寻思访问看看,突然发现

然后我用蚁剑一连,居然成功了,之后就出了

(但是之后我再访问就不行了)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值