下载附件得到一个pcapng的流量包,Linux下先strings和foremost一下:
没有什么收获。Wireshark打开看下是什么流量:
一看是USB的流量包分析,没怎么做过此类的题,先去搜了下怎样处理USB
先简单概述一下USB流量包:分为键盘流量和鼠标流量。
具体什么协议太冗杂,就不放了。说一下键盘数据包和鼠标数据包的区别:
1.键盘数据包的数据长度为8个字节。
2.鼠标数据包的数据长度为4个字节。
这里放上两个相关知识链接(第一个链接里面给出的键盘脚本跑不出来结果.第二个链接的脚本可以用,第二个里面的output后的换行符错了,贴上修改了下的,区别在第18行)
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))
# 00:00:xx:....
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
https://www.cnblogs.com/ECJTUACM-873284962/p/9473808.html
对于USB流量包首先要提取出来重要的数据块:
命令:
tshark -r x.pcapng -T fields -e usb.capdata > usbdata.txt
从这里的位数可以看得出是键盘流量还是鼠标流量了,这里看出是键盘流量,用上面的脚本跑出:
结合题目上的提示,应该是解AUTOKE了,但是跑出来的结果里面有符号类的东西[DEL],搜了一下也没找到解决方法,尝试去掉这个符号,进行解密,但解出来的还是过长,不符合flag的一般长度。
看了一下别人的做法:
复原出来的是键盘敲击的东西,可以看出是AUTOKEY相关的,key的值不知道,所以是unknown,然后[DEL]是delete键。
原:
MPLRVFFCZEYOUJFJKYBXGZVDGQAURKXZOLKOLVTUFBLRNJESQITWAHXNSIJXPNMPLSHCJBTYHZEALOGVIAAISSPLFHLFSWFEHJNCRWHTINSMAMBVEXO[DEL]PZE[DEL]IZ
修改后(就是去掉[DEL]前的一个字母):
MPLRVFFCZEYOUJFJKYBXGZVDGQAURKXZOLKOLVTUFBLRNJESQITWAHXNSIJXPNMPLSHCJBTYHZEALOGVIAAISSPLFHLFSWFEHJNCRWHTINSMAMBVEXPZIZ
然后就是爆破Autokey加密的key了。
脚本跑出来带有flag时就可以停了。
附加: 第一步针对USB流量包分析有个一把梭的脚本:
UsbKeyboardDataHacker
链接:https://github.com/WangYihang/UsbKeyboardDataHacker
Ubuntu上:
Windows上用会报错没有tshark.