一.序言
最近一家美国物联网安全创业公司Bastille发布了一个关于无线鼠标的漏洞披露报告,称多产商生产的无线鼠标和无线键盘存在安全漏洞,恶意攻击者可以通过低成本的无线攻击设备在远达100米的范围内可以远程控制受害者的无线鼠标并进行一些恶意操作,俗称mouseJack攻击,并且开源了攻击工具使用的代码,笔者根据他们提供的一些信息进行逆向工程并深入研究揭密如何远程控制无线鼠标。
二.关于无线鼠标
无线鼠标一般由两部分组成,鼠标和鼠标接收器,鼠标端通过采集鼠标的操作状态,比如采集鼠标各个按键的按下的状态,鼠标移动的轨迹等数据,然后把这些数据调制成模拟信号通过特定的无线频率(例如24Mhz,27Mhz,2.4Ghz,或者蓝牙)发射出去,鼠标接收器接受到无线信号后,解调成数据,解析里面的数据后做出相应的动作,比如按键和移动等操作,大多情况下无线鼠标通过2.4Ghz的无线频率和PC端进行通信,现在无线鼠标用的比较多的是光电鼠标(optical mouse),而光电鼠标又分为肉眼可见光鼠标和肉眼不可见光鼠标,今天我们将以肉眼不可见光的光电鼠标为例进行深入研究,笔者手头刚好有一个Rapoo/雷柏M217无线鼠标,参数如下。
外观如下
三.无线鼠标之通信原理
在研究无线鼠标通信的时候受到MouseJack RFStorm工具的启发,因为我没有拆开过鼠标,不知道里面用的是什么芯片,由于RFStorm使用的是芯片产商nordicsemi的nRF24LU1P 2.4Ghz无线收发芯片,通过这个信息我找到了这个芯片的芯片手册,这算是对我的研究有了一个指引,而这个指引也适应我手头使用的这个无线鼠标。
分析过程如下
1. 观察鼠标的无线频谱
从上面的芯片手册可知无线收发芯片的可操作频率从2.4Ghz到2.525Ghz,通过设置使用的频道和数据传输速率来判断无线设备使用的通信频率。
环境如下:
Ubuntu Linux 14.04
HackRF One
Gqrx
.........................................................................................................略
详细内容请察看http://bbs.ichunqiu.com/thread-9417-1-1.html