CTF红岩杯 WriteUp

通过本次CTF红岩杯,感受到了CTF的乐趣,刚开始学习CTF,需要不断地网上查找资料,看别人的writeup,虽然有些题目解决起来非常艰难,但是看到flag的那一刻是无比喜悦的!我在这里记录下本次比赛自己所解开的一些题目的解题过程和思路,期待下次的CTF比赛!

Web

1.你是哪里的?

打开题目的靶机地址,只有一句话

1
you must be from https://redrock.team

这时用Burpsuite抓个包,把来源地址改成题目要求的 https://redrock.team,再放包,就能拿到flag了

2.RemindYourHead

第一次打开靶机地址,属实被震撼到了,觉得无从下手的时候不妨抓个包看看

能看到flag就在头部,也对应了题目的“注意你的头”

3.简单题,但是沃玛

打开题目网站,它提示我们按F12查看它的源代码

可以看到有3处可以再次访问,点开中间那个(其他俩个没有想要的信息),按Ctrl+F查找内容“redrock”,可以得到以下信息

1
redrock{https://sp",window.fla9="ace.bilibili.com/",window.f1a9=function(){return eval(decodeURIComponent(atob("dmFyJTIwbWFnaWMlM0QwJTJDZmxhZ19lbmQlM0Jmb3IlMjAodmFyJTIwaSUzRDYlMkNqJTNEMCUzQmklM0UyJTNCaS0tJTJDaiUyQiUyQiklN0JtYWdpYyUyQiUzRGkqTWF0aC5wb3coMTAlMkNqKSU3RG1hZ2ljJTJCJTNENTAwMDAlM0JmbGFnX2VuZCUzRG1hZ2ljJTJCJTIyJTIzcmVkcjBja3NyRTJvMjIlN0QlMjI="))),"never_gonna_give_you_up}"}

题目已经告诉你flag由3部分组成,由此,将上面信息提取出

1
2
3
redrock{https://sp
"ace.bilibili.com/"
dmFyJTIwbWFnaWMlM0QwJTJDZmxhZ19lbmQlM0Jmb3IlMjAodmFyJTIwaSUzRDYlMkNqJTNEMCUzQmklM0UyJTNCaS0tJTJDaiUyQiUyQiklN0JtYWdpYyUyQiUzRGkqTWF0aC5wb3coMTAlMkNqKSU3RG1hZ2ljJTJCJTNENTAwMDAlM0JmbGFnX2VuZCUzRG1hZ2ljJTJCJTIyJTIzcmVkcjBja3NyRTJvMjIlN0QlMjI=

将上面那段被加密的编码先用base64解码再用url解码(内容有提示用url解码)得到一段程序编码,加工后运行得到一段flag ,将其与上面的flag组合得到完整的flag

1
redrock{https://space.bilibili.com/53456#redr0cksrE2o22}

4.我新写的代码啊

打开网址就一句话一张图片,啥也没有,抓包也没发现什么有用的信息,按图片隐写的方向解了半天没收获。

只好拿出御剑扫了该网站的目录和后台

发现个txt文档,下载下来打开一看,是php语句

构建数组绕过,使条件成立拿到flag

1
a[]=1&b[]=2&A[]=3&B[]=4   c=yyz

Crypto(密码学)

1.可惜我年轻无知

由题目给出的字符 yveypbl{kfu_h_kvhsq_mpfsq_dse_appjhgx_rhux_xvy_rpfje_spu_dqyvv}

可以知道该字符和本次flag格式(redrock{…….. })很相似,再观察其结构了解到可能是凯撒密码的变形

访问该在线解密网站 输入解密规则 yveypbl=redrock

稍加修改得到flag

1
redrock{but_i_being_young_and_foolish_with_her_would_not_agree}

2.来自红岩的密文1

打开题目附带的文档,只有一串朴实无华的字符串

1
redrock{Welc0me_T0_The_CTF_0f_redR0ck!!!}

不难看出是ASCll码加密,尝试ASCll解码,得到flag

redrock{welc0me_T0_The_CTF_0f_redR0ck!!!}

3.来自红岩的密文2

打开题目附带的文档,这次竟然是一堆Emoji表情!

1
👋🐧👧👋👍🐧👢🐧👍🐽🐹👅👋👣👑👐👍🐨🐽👌👈👢👫👆👌🐨👉🐻👄👱👅👈👋🐻👍👊👉🐧👅👆👊🐧👑🐿👎👋👁🐾👅👣🐽👌👈👢🐰👆👌🐨👉🐿👋👍👄🐪👋🐨👑👈👍🐧🐧👰👋🐼🐰👅👌👣🐹👏👄👣👧👂👈👣🐹👍👇👋🐧🐰👇👋🐧🐰

网上查了一下,才知道这是base100加密的特点,base100解密得到:

1
T0pTV0k0VFBNTlZYV1FUQktOU1RDMzNQTDVSR0NOS0ZHWTJGNlFUQk9OU1RHTVM3T1ZQV00yTE9NUlBXMlpKQlBVPT09PT09

并没有得到flag,可能需要再次解码,base64解码得到:

1
OJSWI4TPMNVXWQTBKNSTC33PL5RGCNKFGY2F6QTBONSTGMS7OVPWM2LOMRPW2ZJBPU======

再用base32解码得到flag:

1
redrock{BaSe1oo_ba5E64_Base32_u_find_me!}

4.你干嘛

打开附带的文档,发现密文结构很像Ook!密文,于是用Word打开该文档

将“你干嘛”替换成“Ook”,“。”换成“.”,“?”换成“?”. “!”换成“!”

使其完全符合Ook!密文结构

接着在Ook在线解码平台解码得到:

得到一堆奇怪的叫声?结合题目信息和该密文的特征可以知道是兽语密文,

然后兽语解码得到flag

5.A和B

和题目说的一样打开文档后只有A和B

1
BAAAA{BABBBAABAABABBABABBAAAABBBABBABABBABAAAABABBBBABBBABBABBABBABABBBAAABABABBBBABBAABAABBABBB}

网上查了下,发现是培根密码,于是用培根解码得到:

1
R ZEYYDYYRZZOYZCZYKZ

这时候结构已经跟flag格式很接近了,再用栅栏密码解码后稍加修改得到flag

Reverse(逆向)

1.just_re_it

题目已经提示你,Try to submit everything like redrock{…}

所以,将下载下来的程序拖到 IDA 中打开,点击Search 搜索 redrock 找到flag

2.赛博丁真

老样子,把题目给的程序拖到 IDA打开,按Shift+F12,将其转换成字符串,然后Search,查找字符“redrock”,

找到flag!

3.pycode

题目给的是一个txt文档,打开是python的反汇编码,由于暂时找不到其他更好的方法,我采取了最简单粗暴的方法,自己亲自人工照着文档内容写出它的python编码,并在VScode运行,得到flag

4.水水爱听歌

这次题目给的python反编译文件而不是txt文档,所以我们可以在python在线反编译工具,打开处理该文件

文件中包含着几种被加密过的编码,将其分别解码得到

这时候再根据图中代码和函数就可以推断出flagl!

Pwn

1.一口一个flag

根据题目信息,它让你用nc连接题目提供的靶机地址,于是在虚拟机上下载并配置好nc后,用nc连接后就拿到了flag!

2.猫猫flag

这次题目让你nc两下下,老样子先nc连接靶机网址

连接上后,输入ls,查看该网址的目录,可以看到有一个flag的文档,输入

1
cat  flag

查看flag的内容,不出所料,得到了想要的flag

Misc

1.签到

这次本次比赛的签到题,只要按照题目说的来做就能得到flag了

2.流量审计

将文件下载下来,以记事本的方式打开,按Ctrl+F查找redrock,就能在记事本中找到flag了!

3.啵啵的魔法药水

根据题目提示,需要我们在虚拟机在配置好 docker,然后(在root权限下)执行下面的命令

1
docker pull wgyao/redrock-ctf:bobo

拉取镜像成功后,提供执行下面的命令来获取镜像的详细信息

1
docker inspect wgyao/redrock-ctf:bobo

将获取到的信息复制到记事本中,按Ctrl+F查找字符“redrock”,得到flag

4.芝士雪豹与只因

打开题目的压缩包,里面有一张图片和一段音频,貌似都没什么猫腻,通过网上查找相关题型,发现这种同时带照片和音频的misc题目,可能是从照片找出一个密码,再通过密码从音频中提取出含有flag的txt文档。

于是先从图片入手,在虚拟机中通过Binwalk执行以下命令,从图片中提取隐藏的文件(图片)

1
binwalk -D hint.png

果然,图片中还藏着一张图片!不过居然是不完整的二维码

这就需要把二维码补齐,在网上截取了二维码四周的角的图片,并把不完整的二维码通过截图一起保存到电脑,这时候打开PowerPoint,在ppt上把两个图片拼成完整的二维码

掏出手机扫一下二维码,得到

但这并不是真正的flag,但可以从中知道密码为qingshui

然后就是音频的部分了(需要用到MP3stego)

按win+R打开电脑终端,cd到MP3stego的目录,在终端输入以下命令

1
Decode.exe -X 芝士雪豹.MP3 -P qingshui

然后可以得到一个txt文件,打开是一段被加密过的密文

1
👚👤👍👢👚👤🐰👡👘🐪👫👋👙👡🐹🐪👏🐩👯👣👄🐿🐹👟👚👤👉👝👌🐩👟🐨👛🐽🐰🐨👚🐿🐧🐴

base100解码得到

1
cmVkcm9ja3tTbjB3X2xlMHBhcmRfU2h1dF91cH0=

再base64解码得到最终的flag!(这题是真的绕啊,包括了好多题型)


CTF红岩杯 WriteUp
https://www.supersmallblack.cn/CTF红岩杯 WriteUp.html
作者
Small Black
发布于
2022年11月20日
许可协议