二维码
binwalk 分离出一个加密的zip文件,里头是4number.txt,暴力解密得到密码7639,打开即可得到flag
金三胖
下载得到gif图,stegsolve打开,一帧一帧的看,可以看到flag
N种方法解决
下载得到KEY.exe文件,winhex打开,看到是base64图片的编码,http://imgbase64.duoshitong.com/在线解码得到二维码,扫码即可得到flag
大白
下载图片,修改高度即可得到flag
基础破解
下载得到伪加密的压缩文件,winrar修复一下得到加密文件
提示密码为4为数字,ARCHPR暴力破解得到密码2563
打开压缩文件得到flag.txt,打开得到base64加密串,解码可得flag
你竟然赶我走
下载得到jpg图片,winhex打开,文件末尾可看到flag
LSB
下载得到png图片,stegsolve打开,data extract,勾选最低位,preview,save bin为png文件,是一张二维码,扫码可得flag
ningen
下载得到jpg图片,binwalk分离得到压缩包
暴力解密得到密码8368,打开得到flag
rar
暴力解密得到密码8795,打开文件得到flag
qr
下载扫码即可得到flag
乌镇峰会种图
winhex打开,文件末尾即可看到flag
文件中的秘密
打开图片的属性,查看备注即可得到flag
wireshark
wireshark打开,设置搜索条件为字符串,分组字节流,搜索password,得到flag
镜子里面的世界
stegsolve打开,data extract,勾选最低位,preview即可看到flag
小明的保险箱
binwalk分离出加密压缩包,暴力解密得到密码7869,打开得到flag
假如给我三天光明
参考https://beiyuouo.github.io/2019/05/30/ctf-buuctf/
FLAG
stegsolve打开,data extract勾选最低位,preview,可以看到是一个zip文件,保存下来打开得到一个文件,winhex打开可看到flag
爱因斯坦
binwalk分离得到加密压缩包,图片备注里有压缩包密码,打开得到flag
easycap
wireshark打开追踪tcp流即可得到flag
来首歌吧
Audacity 打开即可看到是摩尔斯密码,在线解密即可
派大星的烦恼
来自https://www.cnblogs.com/harmonica11/p/11365771.html
winhex打开,看到
关键就在于这一堆的D和"
提取出来
"DD"DD""""D"DD""""""DD"""DD"DD""D""DDD""D"D"DD""""""DD""D""""DD"D"D"DD""""D"DD""D"""DD"""""DDD""""D"DD"""D"""DD"""D""DD"D"D"DD"""DD""DD"D"D""DD""DD"DD"""D"""DD""DD"DD""D"D""DD"D"D"DD"""D"""DD"""D"DD""DD"""DD"D"D""DD"""D"DD""DD""DD"""""DDD""DD""DD"""D""DD""
0x22是" ,0x44是D
s = '"DD"DD""""D"DD""""""DD"""DD"DD""D""DDD""D"D"DD""""""DD""D""""DD"D"D"DD""""D"DD""D"""DD"""""DDD""""D"DD"""D"""DD"""D""DD"D"D"DD"""DD""DD"D"D""DD""DD"DD"""D"""DD""DD"DD""D"D""DD"D"D"DD"""D"""DD"""D"DD""DD"""DD"D"D""DD"""D"DD""DD""DD"""""DDD""DD""DD"""D""DD""'
k = ''
for i in s:
if i == '"':
k += '0'
elif i == 'D':
k += '1'
print k
每8位倒转,位置不变
s = '0110110000101100000011000110110010011100101011000000110010000110101011000010110010001100000111000010110001000110001001101010110001100110101001100110110001000110011011001010011010101100010001100010110011000110101001100010110011001100000111001100110001001100'
k = ''
for i in range(len(s)/8):
k += chr(int(s[i*8:i*8+8][::-1],2))
print k
得到flag
USB
winrar解压可以看到压缩包中存在损坏的png文件
winhex打开,修复此压缩包
如果只是用winrar的修复,只会得到一个嘲讽人的txt文件
将此处的7A改为74,74标志着下一个文件块,即233.png的开始
为什么是改这里呢?
我数这个flag.txt的74离flag.txt的f有多远,依葫芦画瓢来修改
修复完233.rar,得到png图片
扔进stegsolve中一帧一帧查看,可以得到一个二维码
扫码可得
ci{v3erf_0tygidv2_fc0}
至此,这一部分工作结束
再来看key.ftm
binwalk分离出一个pcap文件,打开看到
可知这是USB流量分析题
先在kali下通过命令得到pcap包中的数据部分,命令如下
tshark -r key.pcap -T fields -e usb.capdata > usbdata.txt
再通过脚本解码
mappings = { 0x04:"A", 0x05:"B", 0x06:"C", 0x07:"D", 0x08:"E", 0x09:"F", 0x0A:"G", 0x0B:"H", 0x0C:"I", 0x0D:"J", 0x0E:"K", 0x0F:"L", 0x10:"M", 0x11:"N",0x12:"O", 0x13:"P", 0x14:"Q", 0x15:"R", 0x16:"S", 0x17:"T", 0x18:"U",0x19:"V", 0x1A:"W", 0x1B:"X", 0x1C:"Y", 0x1D:"Z", 0x1E:"1", 0x1F:"2", 0x20:"3", 0x21:"4", 0x22:"5", 0x23:"6", 0x24:"7", 0x25:"8", 0x26:"9", 0x27:"0", 0x28:"\n", 0x2a:"[DEL]", 0X2B:" ", 0x2C:" ", 0x2D:"-", 0x2E:"=", 0x2F:"[", 0x30:"]", 0x31:"\\", 0x32:"~", 0x33:";", 0x34:"'", 0x36:",", 0x37:"." }
nums = []
keys = open('usbdata.txt')
for line in keys:
if line[0]!='0' or line[1]!='0' or line[3]!='0' or line[4]!='0' or line[9]!='0' or line[10]!='0' or line[12]!='0' or line[13]!='0' or line[15]!='0' or line[16]!='0' or line[18]!='0' or line[19]!='0' or line[21]!='0' or line[22]!='0':
continue
nums.append(int(line[6:8],16))
keys.close()
output = ""
for n in nums:
if n == 0 :
continue
if n in mappings:
output += mappings[n]
else:
output += '[unknown]'
print 'output :\n' + output
此脚本来自https://blog.csdn.net/qq_36609913/article/details/78578406
可以得到
output :
KEYXINAN
有了key和密文,使用维吉尼亚密码在线解密工具,再进行一次栅栏解密,即可得到flag