文章目录
题目状态:
OPEN - 正在试图解这道题
CLOSED - 这道题还没有打开
SOLVED - 解决了!鼓掌撒花!
赛事信息
Flag格式:MRCTF{}
起止时间:2020-03-27 18:00:00 - 2020-03-29 22:00:00
官网地址:https://merak-ctf.site/
参赛地址:https://merak-ctf.site/
Reverse:
无
Pwn:
无
Misc:
Hello_Misc | OPEN |
在liunx 中使用binwalk -e 分解图片,有了一个压缩包,然后使用看图Stegsolve
取出图片,得到了zip密码
!@#$%67*()-+
呜呜呜太难了,后面看不懂,以为是rgb,弄出来也不是呜呜呜
你能看懂音符吗 | SOLVED |
下载下来发现rar损坏,用winhex修复一下,解压发现里面内容都消失了
然后使用winhex,发现他是有pk,压缩格式,然后就改后缀名,找最后找到了
使用翻译网址
MRCTF{thEse_n0tes_ArE_am@zing~}
扫描二维码关注公众号,回复: 10587514 查看本文章
CyberPunk | SOLVED |
打开是一个程序,只需要把自己电脑时间改成2020/09/17就能获得flag了
MRCTF{We1cOm3_70_cyber_security}
ezmisc | SOLVED |
高度问题,使用脚本
这个脚本是一个大佬哪里拷贝过来的,我忘记的大佬的地址了抱歉抱歉
import zlib
import struct
filename = 'flag.png'
with open(filename, 'rb') as f:
all_b = f.read()
crc32key = int(all_b[29:33].hex(),16)
data = bytearray(all_b[12:29])
n = 4095 #理论上0xffffffff,但考虑到屏幕实际/cpu,0x0fff就差不多了
for w in range(n): #高和宽一起爆破
width = bytearray(struct.pack('>i', w)) #q为8字节,i为4字节,h为2字节
for h in range(n):
height = bytearray(struct.pack('>i', h))
for x in range(4):
data[x+4] = width[x]
data[x+8] = height[x]
crc32result = zlib.crc32(data)
if crc32result == crc32key:
print("宽为:",end="")
print(width)
print("高为:",end="")
print(height)
exit(0)
算出高度,就能看到图片露出flag
MRCTF{1ts_vEryyyyyy_ez!}
pyFlag | OPEN |
发现每个图片放进winhex里面发现又zip,什么都分不出来,后来发现是zip分开放在3个图片中,然后复制整合一下,就有了带锁的zip,用破解软件,发现密码1234,得到了
可惜还是不行呜呜呜呜,求大哥救救
Unravel!! | OPEN |
图片和音乐中分离出来,2个文件,我觉得是兔子(rabbit)加密,
分离出来是这个key=U2FsdGVkX1/nSQN+hoHL8OwV9iJB/mSdKk5dmusulz4=
可惜还是不行呜呜呜呜,求大哥救救
不眠之夜 | SOLVED|
拼图拿答案
请叫我拼图大师~~~真的让我彻夜未眠,呜呜呜呜
MRCTF{Why_4re_U_5o_ShuL1an??}
千层套路 | SOLVED |
使用代码
import zipfile,os def unzip(path,zfile):
file_path=path+os.sep+zfile
desdir=path
print(desdir)
srcfile=zipfile.ZipFile(file_path)
for filename in srcfile.namelist():
srcfile.extract(filename,desdir,pwd= bytes(zfile.split(".")[0],"utf8"))
if filename.endswith('.zip'):
# if zipfile.is_zipfile(filename):
path=desdir
zfile=filename
unzip(path,zfile) path="C:\\Users\\XMAO\\Desktop\\py" zfile="0020.zip" unzip(path,zfile)
解出一个rgb 得qr.txt
最后去掉所有得括号解得flag
from PIL import Image x = 400 #x坐标 通过对txt里的行数进行整数分解 y = 400
#y坐标 x * y = 行数 im = Image.new("RGB", (x, y)) #创建图片 file = open('qr.txt') #打开rbg值的文件
#通过每个rgb点生成图片 for i in range(0, x):
for j in range(0, y):
line = file.readline() #获取一行的rgb值
rgb = line.replace("\n", "").split(", ") #分离rgb,文本中逗号后面有空格
print(rgb)
if(rgb[0] == ''):
continue
im.putpixel((i, j), (int(rgb[0]), int(rgb[1]), int(rgb[2]))) im.show() #也可用im.save('flag.jpg')保存下来 im.save('flag.jpg')
MRCTF{ta01uyout1nreet1n0usandtimes}
寻找xxx | SOLVED |
题目给出一段录音,初步判断为一个电话号码,后经过听音鉴键,得到一个号码,将其发送给公众号得到一张图片,图片内容里就有flag
MRCTF{Oh!!!_Y0u_f1nd_my_secret}
Crypto:
keyborad |SOLVED|
题目给出一个文本,文本的内容判断为9键的,解得mobilephond
然而这是错误的,于是根据单词的意思,改为 mobilephone
提交成功 所以flag为
MRCTF{mobilephone}
天干地支+甲子 |SOLVED|
题目给出天干地支+甲子,于是得到
根据ASCII码转换得GoodRob,提交发现并不是flag
转换得Goodjob,非GoodRob
MRCTF{Goodjob}
古典密码知多少 |SOLVED|
题目给的提示是佛曰,解得:古典密码好
题目给出一张图片,是多种密码混合在一起
蓝色的是猪圈密码,黄色的黑色的查了很久终于发现是圣堂武士和银河密码
解得FGCPFLIRTUASYON这么一串,题目又提示栅栏,于是栅栏解密后,得到FLAGISCRYPTOFUN提交后发现并不对。再次提交CRYOTIFUN,ok。
MRCTF{CRYPTOFUN}
丸~~~~~
谢谢观看,客观们