admin管理员组文章数量:1603247
大白
题目直接修改图片的长度就可以了,这个没什么难度
修改完后的数据
查看图片得到flag
图片隐藏信息
依然属于送分题,使用010查看图片就可以得到flag,不过一开始没觉得那个是flag,后来才发现这次比赛的flag没啥规律可言,啥都有可能是flag,没有固定的格式
文件类型分析
下载文件,放到010里面分析一波
先贴出两个常见的压缩包文件头
ZIP Archive (zip),文件头(hex):504B0304
RAR Archive (rar),文件头(hex):52617221
发现这个是zip的压缩包,直接解压
然后随便翻一翻文件,发现多数里面的文件都有这样一个词
我一开始还尝试了凤舞九天是不是flag。。。。。23333,最后发现pptx就是flag,后来想想也对,题目是让你判断文件类型,pptx就是他的文件类型,所以也不需要其他的hint了,还是自己台太菜啊。。。
神秘的mail
先查看题目给的数据包
追踪tcp流发现这里有flag的字样,并且是个使用base64加密的压缩包,使用脚本将压缩包导出,先将这段加密的数据保存在txt文件中
import base64
fin=open("base.txt","r")
fout=open('2.rar',"wb")
base64.decode(fin,fout)
fin.close()
fout.close()
得到2.rar
打开发现里面有一个flag的图片,但是需要密码,我先尝试了各种爆破,发现都不行,那估计密码就还在流量包里面,回去流量包查看,经过比较长时间的查找,在smtp的保重找到了密码
打开图片得到flag
这次比赛的flag有个坑点,就是会不带大括号以外的内容。
这音乐好难听
打开音乐文件,也不知道是个什么东西,奇奇怪怪的,先用Audacity分析一波,查看了下波形,如果低的波峰为0,高的波峰为1的话,那就是妥妥的二进制了啊,如果手动改的话,太浪费时间了,就在网上找了个大佬的脚本
import wave as we
import numpy as np
wavfile = we.open(u'music.wav',"rb")
params = wavfile.getparams()
framesra,frameswav= params[2],params[3]
datawav = wavfile.readframes(frameswav)
wavfile.close()
datause = np.fromstring(datawav,dtype = np.short)
result_bin=''
result_hex=''
max=0
for i in range(len(datause)-1):
if datause[i]> max:
max=datause[i]
try:
if(datause[i]<0 and datause[i+1]>=0):
if (max-24000 >0):
result_bin+='1'
max=datause[i+1]
else:
result_bin+='0'
max=datause[i+1]
except:
break
print result_bin
for i in range(0,len(result_bin),4):
result_hex+=hex(int(result_bin[i:i+4],2))[2:]
print result_hex
file_rar = open("test.rar","wb")
file_rar.write(result_hex.decode('hex'))
file_rar.close()
得到一个压缩文件,打开之后只有一个noflag的文档,真坑啊,不是最终的答案,把压缩文件放到010里面分析一波
感觉这里有个stm的文件,但是压缩包好像没有,那是不是文件损坏了,尝试修复文件
文件块的第3个字节为块类型,也叫头类型。
头类型是0x72表示是标记块
头类型是0x73表示是压缩文件头块
头类型是0x74表示是文件头块
头类型是0x75表示是注释头
这里面是0x7A显然是不对的,尝试修改
解压将STM的文件放到010里面分析一波
发现是个png的文件,但是解压出来的文件也不是啊,所以尝试加了个后缀
发现是个只有一半的二维码,那接下来感觉就是修复高度,这里直接用大佬的脚本计算高度
import os
import binascii
import struct
crcbp = open("STM.png","rb").read()
for i in range(1024):
for j in range(1024):
data = crcbp[12:16] + struct.pack('>i',i) + struct.pack('>i',j) + crcbp[24:29]
crc32 = binascii.crc32(data) & 0xffffffff
if crc32 == 0x08ec7edb:
print i,j
发现高和宽都是280,但是现在的图片高只有140,那么我们修改一下
这里因为高和宽是一样的,所以将后面的这个数据改为和前面的一样就行了。
最后得到完整的二维码,扫码得到flag
题目出自:2018网鼎杯第三场 Unpleasant_music
参考链接:http://since1994/?p=198、https://www.o2oxy/1753.html
感谢大佬们的wp
破解wifi密码
首先先看提示:密码为手机号,为了不为难你,大佬特地让我悄悄地把前七位告诉你 1391040** Goodluck!!
一看,这道题见过啊
题目出自:bugku->Misc->想蹭网先解开密码
首先第一点,不要被流量包迷惑,这不是个流量分析的题目,我们先用给的提示生成一个字典
crunch 11 11 -t 1391040%%%% > phone.txt
然后使用wifi破解工具破解密码
aircrack-ng -w phone.txt wifi.cap
这里也贴出一个参考链接吧,毕竟我当时第一次做的时候也是参考了大佬的链接,这个链接是比较新的
参考链接:https://blog.csdn/qq_50034496/article/details/109384432
404 flag not found
打开压缩文件,发现里面有一个流量包
发现这个HTTP协议的包里面有个flag,追踪HTTP流
发现箭头处,感觉像是16进制,复制去尝试一下解密
发现是真的有东西,那我们将所有的http的包全部解密得到如下文档
发现如果每一行都选择首字母的话,会形成一个flag的格式的字符串
得到flag
版权声明:本文标题:记一次高校豌豆杯——Misc(后续题目持续更新) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1728436114a1158130.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论