bugku usb流量截取

该文章已生成可运行项目,

原理参考 【流量分析】USB键盘与鼠标流量分析_ctf usb流量分析-优快云博客

USB协议数据部分在Leftover Capture Data域中,数据长度为八个字节,其中键盘击健信息集中在第三个字节中,相关对应信息如下链接中所示;

在使用wireshark捕捉到的流量中,我们主要看第三个字节的内容,将它与按键值相对以得出按键内容,例如 09=fF

tshark提取Leftover Capture Data

tshark -r usb.pcap -T fields -e usb.capdata | sed '/^\s*$/d' > usbdata.txt
  
  -r:设置tshark 分析的输入文件
  -T:设置解码结果输出的格式。包括fields,text,ps,psml和pdml,默认为text

python脚本提取第三字节并翻译

mappings = {
    '04': "A",
    '05': "B",
    '06': "C",
    '07': "D",
    '08': "E",
    '09': "F",
    '0A': "G",
    '0B': "H",
    '0C': "I",
    '0D': "J",
    '0E': "K",
    '0F': "L",
    '10': "M",
    '11': "N",
    '12': "O",
    '13': "P",
    '14': "Q",
    '15': "R",
    '16': "S",
    '17': "T",
    '18': "U",
    '19': "V",
    '1A': "W",
    '1B': "X",
    '1C': "Y",
    '1D': "Z",
    '1E': "1",
    '1F': "2",
    '20': "3",
    '21': "4",
    '22': "5",
    '23': "6",
    '24': "7",
    '25': "8",
    '26': "9",
    '27': "0",
    '28': "\n",
    '2a': "[DEL]",
    '2B': "    ",
    '2C': " ",
    '2D': "-",
    '2E': "=",
    '2F': "{",
    '30': "}",
    '31': "\\",
    '32': "~",
    '33': ";",
    '34': "'",
    '36': ",",
    '37': "."
}
nums = []
keys = open('data.txt')
for line in keys:
    key = line[4] + line[5]
    if (key != '00'):
        nums.append(key.upper())
keys.close()
# with open('chars.txt', 'w', encoding='utf-8') as file: #存一下筛选完的数据
#     for item in nums:
#         file.write(str(item) + '\n')  # 确保转换为字符串并添加换行符
print(nums)
flagstr = ''
for n in nums:
    if n in mappings:
        flagstr += mappings[n]
    else:
        flagstr += ''
print(flagstr.lower())

答案:flag{pr3550nwardsa2fee6e0}   提交的时候要删除-

本文章已经生成可运行项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值