海纳百科

海纳百科

用Arduino伪装成充电器监控无线键盘

吃瓜阿阳

友情提示点击顶部放大镜 可以使用站内搜索 记住我们的地址 www.hainabaike.com

笔者先前介绍过,国外的maker(Samy Kamkar)利用Teensy开发板伪装成U盘,篡改MacOS X的DNS设置,如此就有机会让使用者误入钓鱼网站。如今Samy又带来了新「东西」,这次Arduino被伪装到了USB充电机里,这个设备能够自动记录并传送微软无线键盘使用者录入的资料,而且成本最低只要10美元!

小编按:本文仅以技术角度介绍实现方式和试验,但并不推荐该作品的应用。非法的监控有可能让你惹上不必要的麻烦。

自动窃取并无线传送资料

Samy所带来的「东西」叫KeySweeper,是一款以Arduino为基础的键盘侧录装置,能够侧录周遭所有微软无线键盘输入的资料,包括使用者用键盘输入的账号和密码。

由于KeySweeper装在USB充电器外壳的里面,并且USB充电器保有充电功能,这种伪装确实隐蔽!更可怕的是KeySweeper内置充电式锂电池,当充电器插入插座时,其实是在给锂电池充电;当拔下充电器后,KeySweeper还可以通过锂电池供电连续工作一段时间。 KeySweeper也内置2.4GHz的NRF24L01无线收发模块,窃取资料;或者也可以用移动通信模块,透过2G网络用短信将侧录到的资料即时传送出来。如果一个居心不良的人,把KeySweeper送到受害者手上,受害者根本不会有什么怀疑,如此一来受害者的资料安全就会收到巨大的威胁。

KeySweeper表面看起来和普通USB充电器没有区别,确实隐藏的太深了。

KeySweeper可以像正常USB充电器一样充电,让受害者放松警惕。

KeySweeper自带充电式锂电池,可以连续工作一段时间。

破解键盘加密机制

KeySweeper主要功能是撷取微软无线键盘的2.4GHz RF信号,解密后将资料储存下来,或是通过移动通信模块即时发给使用者。Samy也准备了浏览器界面的操做后台,可以实时显示被侧录键盘的输入状况。

为了节省短信费用,KeySweeper能够设定,在侦测关键字后传送后续的相关信息,比如说,KeySweeper侦测到受害者输入“www.band.com”之后,传送接下来的文字,这些文字很可能就是网银的账号和密码。

在设计KeySweeper的过程中,最重要的部分就是键盘信号的解密过程。在此之前,开发者Thorsten Schröder and Max Mose曾开发过一款名叫KeyKeriki的工具。KeyKeriki基于逆向工程的方式破解了微软无线键盘的加密流程,但是其尺寸太大,并不适用于KeySweeper。不过Samy使用了这项成果,并将程序改善为能透过便宜且轻巧的微控制器运作,让KeySweeper的尺寸缩小到能够塞进USB充电器中。

KeySweeper具有监控界面,可以实时显示被侧录的无线键盘输入的资料。

KeySweeper也可以通过短信传输侧录资料。

硬件成本

Samy也分享了他的制作成本,根据选用的硬件不同,最低只需要花费10美金,最高也不会超过100美金哦。

  • Arduino / Teensy微控制器:3-30美金
  • 2.4GHz NRF24L01无线收发模块:1美金
  • USB充电器:6美金

如果你想升级KeySweeper,可以添加下面的硬件,SPI接口和Adafruit FONA实现的功能类似,选其中一个就可以了。

  • SPI接口:2美金
  • Adafruit FONA:45美元
  • SIM卡(搭配Adafruit FONA使用):3美金
  • 充电式锂电池(搭配Adafruit FONA使用):5美金

KeySweeper 的核心零件是 Arduino Pro Mini。

2.4GHz的nRF24L01 用来撷取无线键盘的录入资料。

Adafruit FONA 是用来传送资料的收集通信模块。

为了将所有的东西塞进USB充电器里,Samy用小型的充电器的模块将原本的充电模块取代。

USB充电器的空间比较大,而且是用螺丝固定的,拆卸安装时不会破坏充电器,适合用来改装。

如此就可以很顺利的把所有的东西都放进去了。

PS:点击这里查看完整代码!

    标签:

    发布评论 条评论)

    评论列表