浅谈读取USB键盘流量的隐藏数据技巧

2018 年 12 月 29 日 FreeBuf

0×00 预备

wireshark是一款可以用来抓取流量的工具,可以用它来分析流量,从中发现黑客所做的记录和改动,对我们分析被攻击情况和进行防御有很大的帮助,usbkeyboard可以隐藏一些信息,通常,我们可以使用以上工具和方法从中发现一些隐藏信息。

0×01 数据准备

假设有一段流量,协议是usb,我用wiresharp打开这个包,可以看到里面的字段和内容:

可以看出内容主要是Leftover Capture Data,首先要对usb协议进行分析,右键选项,然后点击应用为列,可以将该域的值在主面板上显示,usbkeyborad的数据包数据长度为8个字节,每两位是一个字节,而按键的数据都在第三个字节处,就是00、01、02、03…11、12、13、14,键位和HEX数值之间的对应关系如下图所示:

要提取出来这些数据以进行分析,就需要使用工具和脚本来对这些数据进行处理,以下是实现方法。

0×02 实现

首先,我们需要使用到wireshark里的工具tshark,这是wireshark工具的命令行程序,效率更高,如果是linux系统,则需要安装tshark包,安装完之后就执行tshark命令,如果是windows则直接安装wireshark,里面自带了tshark程序,可以直接执行。然后执行:

"tshark.exe" -r usb.Pcap -T fields -e usb.capdata > usb.data

这样,就生成了一个usb.data文件,这个文件就是tshark对usb.pcap流量包内数据的截取,其实就是个txt文档,可以直接查看。

当我们用文本文档打开查看的时候:

发现里面的数据就是原来Leftover Capture Data列的数据,这列数据就是usb键盘键位的代码,可以对这列数据进行处理,过滤掉无用的流量,保留与键位有关的流量,也就是第三个字节的数据,精简一下。

将以上python脚本保存为一个文件,然后执行:

打开这个txt文件,发现里面有一段由数字组成的字段,很长,这就是我们需要的数据:

将这段字段拷贝出来,然后扔到010editor当中:

发现这段字段很像一种文件格式,就是zip压缩包格式,因为它的开头是504B,也就是PK,而PK这个文件头就是压缩包的头,所以我们可以把这段字段保存为zip压缩包格式:

保存之后,就直接打开这个压缩包,看到里面有个文件,叫flag.txt:

再点击打开,发现没有密码,直接就打开了,里面是隐藏的数据。

0×03 END

有时候不仅仅是在键位编码当中,也可能在usb鼠标坐标里,也是需要先用tshark抽取鼠标坐标数据信息,再运用python强大的作图功能对坐标数据进行绘制,以得到图形化隐藏数据。

*本文作者:ohhatmy,转载请注明来自FreeBuf.COM

登录查看更多
1

相关内容

SQL on Spark
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
194+阅读 · 2020年6月29日
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
57+阅读 · 2020年6月26日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
117+阅读 · 2020年5月10日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
【经典书】Python数据数据分析第二版,541页pdf
专知会员服务
193+阅读 · 2020年3月12日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
PC微信逆向:两种姿势教你解密数据库文件
黑客技术与网络安全
16+阅读 · 2019年8月30日
GitHub 热门:各大网站的 Python 爬虫登录汇总
机器学习算法与Python学习
9+阅读 · 2019年3月20日
【OCR技术】大批量生成文字训练集
七月在线实验室
9+阅读 · 2019年3月11日
抖音爬虫
专知
3+阅读 · 2019年2月11日
比Selenium快100倍的方法爬东方财富网财务报表
程序人生
8+阅读 · 2018年10月31日
Python | Jupyter导出PDF,自定义脚本告别G安装包
程序人生
7+阅读 · 2018年7月17日
我是一个爬虫
码农翻身
12+阅读 · 2018年6月4日
用 Scikit-Learn 和 Pandas 学习线性回归
Python开发者
9+阅读 · 2017年9月26日
Learning to See Through Obstructions
Arxiv
7+阅读 · 2020年4月2日
Deep Learning for Deepfakes Creation and Detection
Arxiv
6+阅读 · 2019年9月25日
Real-time Scalable Dense Surfel Mapping
Arxiv
5+阅读 · 2019年9月10日
Arxiv
4+阅读 · 2018年1月29日
Arxiv
6+阅读 · 2018年1月14日
VIP会员
相关VIP内容
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
194+阅读 · 2020年6月29日
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
57+阅读 · 2020年6月26日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
117+阅读 · 2020年5月10日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
【经典书】Python数据数据分析第二版,541页pdf
专知会员服务
193+阅读 · 2020年3月12日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
相关资讯
PC微信逆向:两种姿势教你解密数据库文件
黑客技术与网络安全
16+阅读 · 2019年8月30日
GitHub 热门:各大网站的 Python 爬虫登录汇总
机器学习算法与Python学习
9+阅读 · 2019年3月20日
【OCR技术】大批量生成文字训练集
七月在线实验室
9+阅读 · 2019年3月11日
抖音爬虫
专知
3+阅读 · 2019年2月11日
比Selenium快100倍的方法爬东方财富网财务报表
程序人生
8+阅读 · 2018年10月31日
Python | Jupyter导出PDF,自定义脚本告别G安装包
程序人生
7+阅读 · 2018年7月17日
我是一个爬虫
码农翻身
12+阅读 · 2018年6月4日
用 Scikit-Learn 和 Pandas 学习线性回归
Python开发者
9+阅读 · 2017年9月26日
相关论文
Learning to See Through Obstructions
Arxiv
7+阅读 · 2020年4月2日
Deep Learning for Deepfakes Creation and Detection
Arxiv
6+阅读 · 2019年9月25日
Real-time Scalable Dense Surfel Mapping
Arxiv
5+阅读 · 2019年9月10日
Arxiv
4+阅读 · 2018年1月29日
Arxiv
6+阅读 · 2018年1月14日
Top
微信扫码咨询专知VIP会员