Misc
jigsaw
打开这道题,需要我们下载一个zip压缩包,下载完成后我们解压缩,发现里面是9张jpg图片,结合题目标题jigsaw,我们可以知道这是一个拼图题目。
我们在PhotoShop中拖动9张图片,完成拼接,这时我们注意到整个二维码的颜色是反的,我们实用工具对其进行反色。
这时,我们通过扫描二维码,得到这道题的flag。
玛尔博吉
打开这道题,txt文件里面全是乱码,百度搜索了一下玛尔博吉,发现这是一门语言。。。。。。
然后打开Try It Online https://tio.run/ 这个有600+种语言的网站,找到Malboge这个语言,将txt文档内的内容复制进去,翻译一下,便可以看到flag文件了。
俄罗斯套包
俄罗斯套包题目给了我们一个zip压缩文件,我们下载这个压缩文件。
打开压缩文件,我们观察发现这是由10000个压缩文件向嵌套组成的压缩文件,我们将这个文件拖入WinHex中。
根据右侧数据显示的内容,我们发现从上往下依次为各个压缩包的内容,我们往下翻,找到flag.zip这个文件。里面有flag.txt的文本文件,我们便得到了这道题的flag。
永远也猜不到的密码
永远也猜不到的密码题目给了我们一个zip压缩文件,我们下载这个压缩文件。
我们解压这个zip文件,发现需要输入密码,结合题干中的hint:Pseudo encrypt,说明这是一个伪加密压缩包,我们把它拖入WinHex中。
我们把文件开头的09 00 修改为00 00,保存文件,便可以成功的解压缩文件。
解压缩后文件中为一个docx文件,我们打开这个文件,发现里面只有一串奇怪的字符,我们把这串字符拖入txt文件中,便可以得到我们需要的flag。
PS:其实这道题不需要进行解压缩,直接打开zip文件中docx文档,也可以得到flag,正如flag所言,“最危险的地方也是最安全的地方”可知,这道题出题人没有出好。
红玫瑰与白玫瑰
打开这道题,需要我们下载一张图片,初步判断为图片隐写题。
我们打开图片,发现这是一张红玫瑰的图,结合题目标题“红玫瑰与白玫瑰”,我们可以判断还有一朵白玫瑰的图片,我们猜想这张图片后面还有一张白玫瑰的图片,我们将这张图片放入binwalk中,发现存在两张png格式的图片。
我们然后使用winhex打开图片,搜索PNG图片的开始二进制码 89 50 ,按下F3,搜索下一个,按住Alt + 1,选住第一个字符89,然后我们拖到最下方选择最后一个字符,按下Alt + 2,然后右键-Edit编辑-Clipboard Data粘贴板-Paste Into New File粘贴到新文件,然后我们保存这个文件
我们即可以得到隐藏在红玫瑰后面的白玫瑰。
我们将这张图片在Stegsolve中打开,根据提示LSB隐写,我们将red,blue,green的0图层选上,选择LSB优先,选择BGR,即可得到flag。
一幅春联
打开题目,我们可以看到“base家族祝你春节快乐”,可知与base大家族有关,我们随后在右键文件属性中看到了备注为一个文件的下载链接。
我们下载文件后看到了一个名为str.txt的文本文档。
打开str.txt,我们看到了一幅字符串。
我们使用网页上的在线解码工具,依次进行base16,base64,base32,最后即可以得到flag
内存取证
我们下载题目中给的文件,这是一个600MB大小的文件,名字是easy_dump.img,我们把它拖入DiskGenius之中,快速修复,可以看到其中的一些文件。
然后我们将这个img文件拖入Volatility中进行分析。
然后我们查看其进程,发现其中有一个DumpIt.exe的进程。
我们使用memdump命令将其dump出来。
然后我们使用foremost进行分析,发现有个压缩包,解压后获得一个message.img文件。
我们将得到的message.img文件导入DiskGenius中,我们可以发现hint.txt。
打开后发现是一串数字,根据猜想,这是一个二维的点列坐标,我们使用python中LIP库画出来,得到一个二维码。
扫描得到的二维码,我们可以得到:Here is the vigenere key: aeolus, but i deleted the encrypted message。
表明这是一个维吉尼亚密码,但缺少密文,我们在.message.swp中找到了密文:yispywex!xfml_fmbo_ufd_wcwpw
通过在线解码,我们可以得到flag。
PS:参考使用Volatility解决CTF取证类题目 | MengChen's Blog
心跳加速
打开这道题,发现是一道python的爬虫题,但是现在知识储备不够,所以,我准备穷举这1000个账号-密码。
PS:使用穷举,1个多小时即可以得到这道题的flag值。
Re
Dialog
打开题目,我们下载到了一个名为Dialog.exe的应用程序,打开这个程序,发现只有一个对话框和Crack的按钮。
我们将这个程序拖入IDA中,发现了疑似flag的字段。F5反编译后得到了这串代码。
通过对代码内容的分析,我们发现了v10=123,v5=v10的字符串内容,而下面有一个MessageBox的弹出框,可以得知应该是弹出flag内容,我们将Text拼接,可以得到flag{123_Buff3r_0v3rf|0w}的文字,我们尝试了一下,确认这就是这道题的flag。
PS:虽然这道题做出来了,但是我并不清楚具体在对话框中输入什么内容可以弹出flag,有待以后研究。
Web
欢迎来参加比赛
真正的签到题,题目内容为一串base64编码后的字符串,我么解密后便可以得到flag。
签到题
这道题目需要我们在网站上进行弹窗。
因此,我们通过F12进入Consle,输入alert(1),回车后便可以看到flag的值了。
虚假的签到题。
猜密码
打开题目中的网站,给了我们一串信息,需要我们输入password,并且这个password需要与某个值相等,这是一个比较困难的过程,但我们注意到题目中使用了strcmp函数,我们便利用php语言中strcmp的漏洞,我们使用数组来绕过strcmp的检测,使其返回值为1,得到我们需要的flag。
PS:参考了PHP中漏洞,文章来源:CTF之PHP黑魔法总结 - 珍惜少年时 - 博客园
ping
打开这道题目中的网站,我们发现这是一个执行ping的对话框,我们使用ls来看一下目录下面有什么文件。
果然,我们发现了flag文件在目录下面,我们使用cat flag来把flag取出来。
点我一下就给你flag
打开网站,我们发现只有一个按钮,写着“点一下我就给你flag”,然后我点了一下。
然后我么观察发现啥都没有。
我么右键查看源代码,发现这是sojson加密过后的代码,不可逆向,比较困难。
我们F12打开开发者工具,发现被禁止使用了。
然后我们换了一个浏览器,发现FireFox,Google Chrome都不能使用F12,而Edge浏览器即系统自带浏览器可以使用F12,我们便得到了flag,隐藏在代码中。。。???
PS:根据flag内容,我们得知console is good,我们可以得知这道题的做法不是我这样做的,但我也不知道出题人的想法是什么。。。。。
注入热身
打开这道题目的网站,我们可以看到这是一道sql注入的题目。
然后,我们用sqlmap分析了一下这个网站后的数据库为mysql,且其当前数据库名称为sqli。
打开这个数据库,我们发现其中有两个表,其中一个表表名为flag。
我们继续查看flag表的列,发现了其中有一个名为flag的列,我们将其dump出来,即可以得到flag的值。
否认三连
打开题目中的网站,我们可以看到很长的一串代码,分析代码,首先我们需要将justify1的值赋为wobushi,然后需要判断justify2和justify3的哈希值,而又由后面的代码我们可知justify2的值应该为womeiyou,justify3的值应该为nibieluanshuo,可以题目中存在矛盾,我们再次利用PHP语言中sha1和Md5函数对于数组判断的漏洞,因此,我们将justify2[]的值赋为womeiyou,justify3[]的值赋为nibieluanshuo,然后我们再次根据题意,利用strlen函数的漏洞,将mark[]的值赋为0,我们重新加载网页,得到了flag值。
PS:参考了PHP中漏洞,文章来源:CTF之PHP黑魔法总结 - 珍惜少年时 - 博客园