FLAG:当觉得自己很菜的时候,就静下心来学习
专研方向:Web安全,CTF
每日emo:听一千遍反方向的钟,我们能回到过去吗?
1.StegoTXT:
解压缩文件。发现字母中存在覆盖。使用0宽隐写在线解密得到flag。
工具:纯文本隐写术
2.欢迎来到商丘师范学院:
解压缩文件后拿到一个图片
当我在linux下却是无法打开图片,应该是图片尺寸不对,直接爆破
爆破长宽高脚本:
import binascii
import struct
import sys
file = input("图片地址:")
fr = open(file,'rb').read()
data = bytearray(fr[0x0c:0x1d])
crc32key = int.from_bytes(fr[0x1d:0x21], byteorder='big')
n = 4095
for w in range(n):
width = bytearray(struct.pack('>i', w))
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 = binascii.crc32(data) & 0xffffffff
if crc32result == crc32key:
print(width,height)
newpic = bytearray(fr)
for x in range(4):
newpic[x+16] = width[x]
newpic[x+20] = height[x]
fw = open(file+'.png','wb')
fw.write(newpic)
fw.close
sys.exit()
扫一下二维码,得到:
U1FOVXtXZWxjb21lX3RvX1NRTlUhfQ==
base64解码得到:
SQNU{Welcome_to_SQNU!}
3.未知的加密
使用010 Editor打开文件
爆破得到密码Sierting2023。
解压得到虚拟硬盘文件。
将虚拟磁盘中的enc文件拿出来,enc文件是被TrueCrypt这样的软件加密过的
VeraCrypt:官网
使用VeraCrypt对其进行加载即可,使用密码Sierting2023进行解密
电脑里就多了个X盘 放着两个文件
该说不说,这道题也挺难的,继续下一题
4.应急食品
看给的东西,人都嘛了
先base64解码一下
观察字节流发现开头4个字节为98 05 e4 74,而PNG的文件头为89 50 4e 47,正好是十六进制的高低位进行了反转,那么编写脚本进行转换即可得到一张PNG图片
import base64
f1 = open('food.txt','rb').read()
data = base64.b64decode(f1)
f2 = open('org_food.png','ab')
for i in range(len(data)):
l = data[i] << 4 & 255
h = data[i] >> 4
data2 = (l + h).to_bytes(1, 'little')
f2.write(data2)
f2.close()
得到一张图片,LSB隐写拿到flag
最后也是把Misc的题目写完了,加油吧!