NO.1-buuctf-misc-菜刀666
使用winshark打开题目附件
统计->http->请求->发现了upload/1.php字样
说明上传了文件
分析post方法,过滤选择:http.request.method==POST.然后发现长度不对劲,应该是上传了文件,
打开后发现了传递的Z2参数的值的开头是FF D8 FF E0 这个文件头是jpg文件头,
010editor打开导入16进制得到图片
之后,继续在post过滤器里翻看每一个流,在流9发现了PK字样
使用kali binwalk/foremost分离 拿到压缩包
得到flag
NO.2-buuctf-misc-一叶障目/[BJDCTF2020]一叶障目
直接修改宽高就行了(详解修改宽高方法可以看这个:MISC-图片隐写)
NO.3
buuctf-misc-神奇的二维码
文件尾藏有rar文件,手工压缩不出来,使用binwalk随便打开一个图片发现需要密码,然后flag.docx里发现base64,循环解密二十次,(toolsfx creack)得到音频密码,打开音频进行摩斯密码解密得到密码,解密得到flag
NO.4-buuctf-misc-纳尼/[BJDCTF2020]纳尼
gif添加文件头,分帧base64
NO.5-buuctf-misc-excel破解/[HBNIS2018]excel破解
010直接搜索flag
NO.6-buuctf-misc-来题中等的吧/[HBNIS2018]来题中等的吧
摩斯密码解密
NO.7-buuctf-misc-梅花香自苦寒来
打开图片
直接010打开,发现文件尾部有东西,而且是16进制
导出后转化为ascii
def hex_to_ascii(inpath,outpath):
with open(inpath,'r') as file:
lines = file.readlines()
hex_string=''.join(line.strip() for line in lines)
bytes_object=bytes.fromhex(hex_string)
ascii_string=bytes_object.decode("ASCII")
with open(outpath,'w') as outfile:
outfile.write(ascii_string)
inpath=r"C:\Users\13100\Desktop\1.txt"
outpath=r"C:\Users\13100\Desktop\out.txt"
hex_to_ascii(inpath,outpath)
发现是坐标,应该是利用坐标画图
使用kali的gnuplot,转换为图像坐标点,gnuplot不识别括号“()”,编写脚本去掉括号。
with open(r"C:\Users\13100\Desktop\out.txt", 'r') as a:
a = a.read()
a = a.split()
tem = ''
f = open(r"C:\Users\13100\Desktop\1.txt", 'w')
for i in range(len(a)):
tem = a[i]
tem = tem.lstrip('(')
tem = tem.rstrip(')')
for j in range(len(tem)):
if tem[j] == ',':
tem = tem[:j] + ' ' + tem[j+1:]
print(tem, file=f)
f.close() # 最好添加这一行来确保文件被正确关闭
然后画图,扫码得到flag