CTFshow

您所在的位置:网站首页 爱课堂签到是签一下就可以走吗 CTFshow

CTFshow

2024-02-04 13:50| 来源: 网络整理| 查看: 265

只会做MISC的小菜鸡来写一下WP,分享一下解题过程(都是大师傅萌带dd见的世面) 狸题就狸谱,看都没看,后来发现看了也看不懂 在这里插入图片描述

十八般兵器

感谢@i_kei师傅供题 刀、枪、剑、戟、斧、钺、钩、叉、鞭、锏、锤、戈、镋、棍、槊、棒、矛、耙 hint1:JPHS hint2:用Notepad++打开试试? hint3:前十种兵器对应10进制,后八种对应8进制

下载附件得到rar,添加一下rar后缀打开,需要密码,备注栏写着2021牛年大吉,尝试当做密码解压,解压成功。 解压得到18兵器图 在这里插入图片描述根据hint1可以知道这个是JPHS隐写,这里要用JPHS05来查看,以棒为例,打开图片后点击seek,然后选择保存地址 在这里插入图片描述这里出题人阴了一手(建议加大力度),但是细心还是能发现的。 将18个兵器后面藏的数字一次写下来,并且按照题目给的顺序排列。再加上提示说前10个是10进制,后8个是8进制,可以得到两组数字:

1361 4399 9223 1635 2581 7639 7978 5870 0963 935 30440 53720 46055 62766 10613 34635 37242 30575 两组分别合并 得到 136143999223163525817639797858700963935 3044053720460556276610613346353724230575

分别转16进制转文本得到 flag{CTFshow_10_ bA_Ban_b1ng_Q1} 合起来flag{CTFshow_10_bA_Ban_b1ng_Q1}

请问大吉杯的签到是在这里签吗

flag为全部小写字母,没有空格 @感谢cheyenne师傅供题

这道题简单到离谱,但是想复杂了导致中午才做起 下载附件,得到一张二维码,扫码得到

请问DJB CTF比赛的签到处在什么地方

尝试foremost分解,发现分解出压缩包,里面还有一个二维码 如此套娃,一共分解出3张二维码,加上第一张一共4张,后三张内容分别是

2:还要往前走……是不是在这个路口转弯呢? 3:好像没有岔路了,一直往前走试试看 4:咦,这是死胡同,是不是哪里走错路了

通过分析可知,第二张二维码提示我们停下来找别的方法。用万能(bushi)的stegsolve查看一下通道,发现有LSB隐写,但是无法扫码 由于是LSB隐写,加上stegsolve可以随机颜色的特性,可以很轻易的发现: 在这里插入图片描述 这明显是猪圈密码 在这里插入图片描述 对照解码得到flag: flag{dajiadoaidjb}

牛年大吉

题目下载 蓝奏云下载地址:https://wws.lanzous.com/i1Ac0jybrvc 百度云下载地址: https://pan.baidu.com/s/14EXw7U4w0Am0oP_xRXfbqQ 提取码:ns2k 感谢i_kei师傅供题 hint1:不要格式化哟,看看引导扇区是不是丢东西了 hint2:压缩包密码在图片头里

这道题几乎都是非预期解,但是刚开始还是有很多人卡在了压缩包密码那块(因为第一天hint的位置上错了)

下载附件,得到一个压缩包,解压得到一个vhd磁盘 直接扔进winhex取证得到!lag.7z和一张图片 (其实出题人本意是叫大家修好引导扇区)

这里我拿爆破软件爆出来密码是00,但是解压发现密码错误,结合hint2,解压密码在图片头里,看看图片头呢 并没有发现什么,最后才知道密码竟然是png文件头:89504E47 我直接好家伙。 解压得到flag flag{CTFshow_The_Year_of_the_Ox}

拼图v2.0 没啥好说的,动态flag也抄不到,手撸一个小时20分钟(虽然有不止5个人因为忘记续环境导致环境过期哈哈哈哈哈哈哈哈哈哈哈) 最后的截图我只截了这个 在这里插入图片描述 flag{339b8654-e00a-44a8-95dd-76e736-e16c6a}

碑寺六十四卦

这是从一处寺庙遗址中得到的碑文拓片,你能从中发现什么吗? https://ctfshow.lanzous.com/iSFN4kn5jna 感谢@cheyenne师傅供题 hint1:为什么碑文上空白的地方,拓片上却是黑黑一片呢? hint2:如果说每个方块对应一个字符,可是替换表在哪里?

我只能说,这道题脑洞,好大大大大,和bugku的贝氏六十四卦一样大! 首先得到一张卦图,这里我在网上找了原图发现出题人将图片反了色,但是当时还没意识到什么。直到查看grey bits发现 在这里插入图片描述 但是并没有发现什么 在这里插入图片描述 难道路走错了? 反复推敲提示,猜测可能是需要将颜色反色再查看 在这里插入图片描述 保存此通道,再查看最低位,发现PNG文件头

在这里插入图片描述 赶紧save bin下来看看

去掉开头4位 在这里插入图片描述 发现图片是这样的 在这里插入图片描述 看着眼疼,用PS放大看 在这里插入图片描述 诶?我寻思着这和卦不是对应的吗,然后卦上有数字,我就照着数字抄了下来

5 37 26 32 8 44 11 30 53 27 39 34 51 3 52 46 18 33 46 40 7 56 40

然后想着是base64,去对照一下 在这里插入图片描述 果不其然,从左往右从上往下解得: FlagIsLe1bnizD0uShuoH4o 所以flag是flag{Le1bnizD0uShuoH4o}

这种方法其实是最慢最笨的方法,还有一种很快的方法但是我大意了弄反了顺序就没找到。

拿第一个为例 如果将白看成0,黑看成1.从上往下可以发现是101000,如果对照卦图知道了这一位是5,很容易发现如果将101000反过来当做000101就是5,将前面的也这样做发现从下往上读的二进制转换成10进制正好就是我们读出来的数字。所以就很容易得到所有的数字,最后得到flag。

AA86

在一台旧电脑上(大约在16位操作系统还能跑的年代)发现了这个文件,挖掘它的秘密 感谢@ThTsOd师傅供题

附件去官网拿吧 首先保存附件 根据题目描述,16位能跑的年代、一台旧电脑,可以推断要去找一台虚拟机来测试。 搜索引擎稍微搜一下可以发现对应的是DOS系统,上google搜关键字"AA86 DOS"可以发现第2个链接打开后就看到我们题的那种类型了。 在这里插入图片描述尤其这句话 在这里插入图片描述 继续搜索发现,DOS系统中可以执行.bat .com 这里使用MSDOS来尝试 虚拟机安装一个MSDOS7.1,并且将我们得到的附件分别改成.bat和.com放入MSDOS中(怎么放自行百度) 分别运行可以发现.com就是我们要找的flag 在这里插入图片描述 最后得到flag{https://utf-8.jp/public/sas/index.html}

访问一下flag中的网址,好家伙,太冷门了吧,师傅是怎么找到的

在这里插入图片描述 色图生成器

欢迎使用色图生成器 已获取flag,正在为您生成色图…… 色图生成完毕,准备传输 正在传输色图…… ERROR! 检测到屏蔽系统,传输被中断 准备为色图打码 正在生成马赛克…… 打码完成,准备添加冗余数据…… 添加完成,正在打包…… 打包完成,准备传输…… 传输完成,请点击下方链接下载您的色图 感谢@cheyenne师傅供题 hint1:颜色很重要,但github更重要 hint2:第一步图片很重要,txt不重要 hint3:看一看马赛克部分的RGB值,有没有想到什么呢

下载附件,拿到一个 color.txt和setu.png 根据提示应该先看马赛克的RGB值,查看使用脚本来看一下

from PIL import Image im = Image.open('setu.png') pix = im.load() width = im.size[0] height = im.size[1] demo=open('rgb1.txt','wb+') for y in range(height): for x in range(width): r, g, b = pix[x, y] rgb=r,g,b demo.write(str(rgb)+"\n")

用notepad++打开,找到第一次出现“马赛克”的地方 在这里插入图片描述 看起来像是ASCII,转ASCII发现82对应R、97对应a、114对应r、33对应! 综合来看,是Rar! 说明出题人将Rar文件隐藏到了图片中,经过计算可以得到“马赛克”的范围 high=(80,420) wide=(50,995) 然后想办法提取出来,可以发现,RGB中必定有一个是0,所以可以(R+G+B)/2的方式来提取。

from PIL import Image im=Image.open('setu.png') fh=open('1.txt','w') i=0 for h in range(80,420,20): for w in range(50,995,5): color=im.getpixel((w,h)) t=(color[0]+color[1]+color[2])/2 print t i=i+1 fh.close()

这样就可以得到之前说的rar了 打开rar 在这里插入图片描述右边暂时还看不懂,解压png之后查看文件尾,发现末尾有PK头foremost分解得到加密的压缩包

在这里插入图片描述根据hint1和之前png的名字 可以到github上面搜Cloakify,是一种加密 在这里插入图片描述发现正好可以解释压缩包里面的单词了 将压缩包里面的单词添加到txt里,然后去解密

在这里插入图片描述可以得到压缩包密码D3arD4La0P1e45eD4iDa1Wo

解压得到pyc文件 在线的网站反编译发现编译不完整,这里在kali中使用 uncompyle6 具体指令是

uncompyle6 setushengchengqi.pyc > test.py

得到py文件 然后因为才大一没有怎么学python,看了正则发现就是匹配之前图片的flag{D???},但是需要本地爆破,需要在后面写一个解密脚本。这里我找了一位大师傅帮忙写了一下,因为我实在不会写。在这里感谢一下南方师傅

import re import hashlib list = ['139', '102', '162', '24', '85', '57', '160', '37', '239', '200', '154', '30'] for a in range(48,123): for b in range(48,123): for c in range(48,123): for d in range(48,123): flag = 'flag{D' + chr(a) + chr(b) + chr(c) + chr(d) + '}' if re.fullmatch('^flag{[A-Z][0-9a-zA-Z]{4}}$', flag): m = hashlib.md5() m.update(flag.encode('ascii')) m = m.hexdigest() j = 0 for i in range(0,24,2): p = int(list[j]) if int(m[i:i+2], 16) - p > -5 and int(m[i:i+2], 16) - p


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3