HSCSEC CTF 2023_misc的部分writeup
有趣的比赛,学到了新姿势orz
Ancient-MISC
Deduced gossip
☲☵ ☷☵☳ ☶空 ☷☵☳ ☶☱ ☶空 ☷空☱ ☶空 ☷☳☰ ☷☳☱ ☷☴☳ ☷☳☳ ☷☴☶ ☷☳☳ ☷☷☰ ☷☳空 ☰☴ ☷☴☶ ☷☴☶ ☷☴空 ☷空☲
八卦+空,一共九个符号,猜测为九宫八卦,是个九进制数
exp:
str = '☲☵ ☷☵☳ ☶空 ☷☵☳ ☶☱ ☶空 ☷空☱ ☶空 ☷☳☰ ☷☳☱ ☷☴☳ ☷☳☳ ☷☴☶ ☷☳☳ ☷☷☰ ☷☳空 ☰☴ ☷☴☶ ☷☴☶ ☷☴空 ☷空☲'
dict = {'☵': '0', '☷': '1', '☳': '2', '☴': '3',
'空': '4', '☰': '5', '☱': '6', '☶': '7', '☲': '8'}
flag = ''
for i in str:
if i == ' ':
flag += ' '
continue
flag += dict.get(i)
print(flag)
# 80 102 74 102 76 74 146 74 125 126 132 122 137 122 115 124 53 137 137 134 148
# 九进制
flag = flag.split()
real_flag = ''
for x in range(len(flag)):
real_flag += chr(int(flag[x], 9))
print(real_flag)
# HSCSEC{Chinese_g0ssp}
最终flag为HSCSEC{Chinese_g0ssip}
,还得手动补全单词才正确
Watch the sky at night
斗木獬角木蛟奎木狼亢金龙 牛金牛女土蝠氐土貉井木犴
虚日鼠房日兔心月狐鬼金羊 危月燕室火猪尾火虎柳土獐
壁水貐箕水豹斗木獬牛金牛 女土蝠角木蛟亢金龙星日马
虚日鼠张月鹿娄金狗翼火蛇 危月燕氐土貉房日兔轸水蚓
室火猪心月狐井木犴胃土雉 壁水貐斗木獬鬼金羊柳土獐
牛金牛尾火虎箕水豹女土蝠 虚日鼠昴日鸡柳土獐毕月乌
危月燕觜火猴角木蛟星日马 室火猪参水猿奎木狼壁水貐
斗木獬娄金狗牛金牛女土蝠 虚日鼠胃土雉张月鹿昴日鸡
危月燕翼火蛇室火猪亢金龙 壁水貐斗木獬轸水蚓井木犴
牛金牛氐土貉房日兔女土蝠 虚日鼠危月燕心月狐尾火虎
室火猪鬼金羊柳土獐壁水貐
二十八星宿,根据方位分别归类到青龙、白虎、朱雀、玄武四大类中:
东方青龙:角木蛟、亢金龙、氐土貉、房日兔、心月狐、尾火虎、箕水豹
北方玄武:斗木獬、牛金牛、女土蝠、虚日鼠、危月燕、室火猪、壁水貐
西方白虎:奎木狼、娄金狗、胃土雉、昴日鸡、毕月乌、觜火猴、参水猿
南方朱雀:井木犴、鬼金羊、柳土獐、星日马、张月鹿、翼火蛇、轸水蚓
四个星宿一组,猜测为四进制数
exp:
东方青龙='角木蛟、亢金龙、氐土貉、房日兔、心月狐、尾火虎、箕水豹'.split('、')
北方玄武='斗木獬、牛金牛、女土蝠、虚日鼠、危月燕、室火猪、壁水貐'.split('、')
西方白虎='奎木狼、娄金狗、胃土雉、昴日鸡、毕月乌、觜火猴、参水猿'.split('、')
南方朱雀='井木犴、鬼金羊、柳土獐、星日马、张月鹿、翼火蛇、轸水蚓'.split('、')
str='''
斗木獬角木蛟奎木狼亢金龙 牛金牛女土蝠氐土貉井木犴
虚日鼠房日兔心月狐鬼金羊 危月燕室火猪尾火虎柳土獐
壁水貐箕水豹斗木獬牛金牛 女土蝠角木蛟亢金龙星日马
虚日鼠张月鹿娄金狗翼火蛇 危月燕氐土貉房日兔轸水蚓
室火猪心月狐井木犴胃土雉 壁水貐斗木獬鬼金羊柳土獐
牛金牛尾火虎箕水豹女土蝠 虚日鼠昴日鸡柳土獐毕月乌
危月燕觜火猴角木蛟星日马 室火猪参水猿奎木狼壁水貐
斗木獬娄金狗牛金牛女土蝠 虚日鼠胃土雉张月鹿昴日鸡
危月燕翼火蛇室火猪亢金龙 壁水貐斗木獬轸水蚓井木犴
牛金牛氐土貉房日兔女土蝠 虚日鼠危月燕心月狐尾火虎
室火猪鬼金羊柳土獐壁水貐
'''.split()
flag=''
for i in str:
number=[i[a*3:a*3+3] for a in range(4)]
for x in number:
if x in 东方青龙:
flag+='0'
if x in 北方玄武:
flag+='1'
if x in 西方白虎:
flag+='2'
if x in 南方朱雀:
flag+='3'
flag+=' '
print(flag)
# 1020 1103 1003 1103 1011 1003 1323 1003 1032 1133 1001 1232 1203 1221 1211 1232 1310 1133 1001 1100 1331
flag=flag.split()
real_flag=''
for x in range(len(flag)):
real_flag+=chr(int(flag[x],4))
print(real_flag)
# HSCSEC{CN_Ancient_AP}
MISC
SIGNIN
关注公众号:中龙 红客突击队 发送:HSCCTF{TELLMEFLAG}获取flag!
公众号签到,HSCSEC{W3Ic0m3_t0_HScCtF2tH}
EZIMG
png图片尾部有01串+反转的png,反转的png还原为新png图,得到flag1: HSCSEC{p3G_h
提取01串做二维码图,扫出内容 flag2:aQR_c0de_and
缺少定位符需自己补全扫描,推荐excel表格处理,参考9z1nc师傅这篇文章
少了第三部分,对新png图尝试使用PixelJihad解密,得到 _3nc}
连接为flag:HSCSEC{p3G_haQR_c0de_and_3nc}
DISK
看到压缩包提示是六位数字,爆破得到密码 253162
得到一张图片写着 flag is not here
使用 010editor 打开,图片尾部有东西,但文件头没见过,将尾部复制保存另存一下
根据题目名 DISK 猜测为 VeraCrypt,具体操作如下
加载成功后打开看到flag文件:fWVmYXNudXNrb29sa3NpZHtDRVNDU0g=
转base64后反向得flag:HSCSEC{disklooksunsafe}
Salute
1.没有文件特征?勒索者最爱。
2.某张看不清的图片?
flag2/key:xxxx_xx
可以使用python还原
encode_salute的文件尾部有 525d93ceb70e2bf5daa84ec3d0cd2c731a
,md5查询得明文 qwer1234
发现了奇怪的提示,尝试下文件XOR
save下来,解压rar得到两张图片
使用 StegSlove
打开 salute1.png
可以看到下面的信息
根据hint确定为 flag2/key:that_is
,尝试steghide隐写
拼接为最终flag:HSCSEC{qwer1234that_is_c0ol}