打造属于自己的渗透神器——wifi-ducky
在之前的打造属于自己的渗透神器系列中的badusb文章中作者发现大家普遍反映Digispark开发板做的badusb他只能执行一次编写好的命令,如果插上去失效了那就没有办法执行了。如果使用树莓派 zero w和P4wnP1做的badusb我们发现他的功能非常强大,但是他的缺点也出来了,那就是如体型太大了容易给发现而且单个造价很高。这样对某些实验环境下非常的不友好例如:我们对某一台电脑进行badusb攻击我们把攻击设备插在了他的电脑上然后发现电脑的主人坐在那里不走了,你的攻击设备又不能取走这样就白白的损失了zero w和内存卡的钱。
那我们能不能做一个体积小,造价低,能在线编辑攻击脚本,还是无线连接的badusb设备?
当然有了我们根据GitHub里面的一个叫做wifi-ducky的项目进行实现
准备工作
1.ESP8266( ESP-12f,NodeMCU,ESP-01S)
2.带有Atmega32U4的开发板(本文使用的arduino Leonardo)
3.焊接工具
4.一些线
5.烧录软件
开始制作
先打开arduino新建一个项目然后选择对应的开发板和对应的端口号,如果你不知道自己的开发板端口号是什么的话可以去设备管理器里面可以看到,我们去这个地址https://github.com/spacehuhn/wifi_ducky/blob/master/arduino_wifi_duck/arduino_wifi_duck.ino里面复制代码到arduino里面
当你上传的时候会发现上传错误,原因是你没有这个keyboard的库文件,我们再去项目-加载库-添加库-搜索keyboard安装就可以了
然后我们点击上传按钮开始上传,等待几秒就会显示下图上传成功
接下来我们可以把它放在一边了,开始esp8266的上传固件了。由于esp8266的固件早已经就做好了我们直接去GitHub下载https://github.com/spacehuhn/wifi_ducky/releases直接上传就可以了前面3个顺便下载就可以了
解压出来一个esp8266_wifi_duck_1mb。bin的文件接下来我们就用esp8266的烧写固件的软件进行烧写。打开软件插上esp8266先在Operation中选择端口然后再去config里面选择我们刚刚下载的固件进行烧录
烧录成功了下面会显示一个绿色的对号图案,然后就可以了。如果你们觉得这样烧录不好那你可以选择使用arduion进行烧录,但是这样烧录就稍微麻烦点。接下来就到最重要的部分那就是接线!!!
使用arduion和esp8266就TX对RX,RX对TX,GND对GND,VCC对VCC。
如果你是使用ESP-12F的话需要一个转接板也就是5V转3.3V ,ESP-12F他是3.3V供电而arduino Leonardo是5V前提是arduino Leonardo的晶振是16就是5v的如果是8的话就是3.3
如图就是作者接好的图
就不用吐槽作者的焊接了。。就是把杜邦线直接焊在了洞里面。。需要注意的事情就是不要把焊锡焊到其他不需要焊接的地方就好了,然后我们插上电源看看
当我们插上电源的时候ESP8266会发射出一个叫做WIFI DUCK的SSID连接密码是quackquack,连接上了以后打开浏览器登入后台192.168.4.1中进行控制我们会发现有三个界面第一个的界面就是badusb的脚本界面,这控制界面是给你提前写好的脚本进行上传用的总共能上传482KB,
第二个界面就可以直接在线些脚本进行攻击这里我演示了打开运行,下面是有使用命令帮助提示当然他也成功的打开了运行
第三个界面就是设置界面了那就不展示了,到这里大家肯定很迷惑为什么不用CJMCU和ESP-12F进行制作?原因也非简单(我没有买CJMCU)作者目前手里有一个arduino Leonardo我发现他和CJMCU用的是一样的芯片我就想试一下看可以使用不,结果是可以使用的。为什么不用ESP-12F反而用,NodeMCU?原因也是非常简单(我没有买5v转3.3v的板子)从小白的角度出发来说用ESP-12F的话你还需要买一个电压转换板这样就加大了你的焊接难度而NodeMCU所有的脚针都给你引出来了这样你就非常的好用杜邦线进行连接。(从左往右依次是NRF24L01,ESP-12F,ESP-01S)
总结
对于badusb来说越小越好而且能力也要足,基于这次做的wifi-ducky作者也思考了几个问题能否更小一点?无线距离能否再远一点?能否再安装一个SD卡呢?能否安装一个4G模块进行远程遥控呢?这些都有可能对于以后的badusb来说小而厉害,能在超远的距离进行攻击而且能和周边的badusb进行联动就更好了,其实作者还有几个想法没有实现希望有读者能尝试做一些那就是使用ESP-01S进行控制或者使用NRF24L01进行控制这些都不错吧!关于badusb攻击的防御手段其实非常简单开机之前看看有没有什么奇怪的东西插在你的电脑上面,其次禁止运行窗口的回车键就可以了,还需要禁止外部硬件自动安装驱动程序就可以了。谢谢大家的阅读!
[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界