前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Digispark和Duck2Spark打造一个廉价USB橡皮鸭

使用Digispark和Duck2Spark打造一个廉价USB橡皮鸭

作者头像
FB客服
发布2018-10-25 11:21:45
1.3K0
发布2018-10-25 11:21:45
举报
文章被收录于专栏:FreeBufFreeBuf

如今市面上出现了许多优秀的硬件黑客工具,但缺点是这些工具的价格往往非常的高昂。因此,许多黑客更愿意自己动手打造更为廉价的专属版本。本文我将教大家使用Digispark(一款类似于Arduino Uno基于Attiny85的微控制器开发板,相比之下它更便宜小巧。)和Duck2Spark,花3美元的价格打造一个廉价的USB橡皮鸭。廉价硬件除了价格上的优势外,还体现在它的安全性上。由于大部分这些硬件都是一次性的,因此它们也几乎不可能被追踪到。

USB橡皮鸭是一款伪装成U盘的击键注入工具。插入电脑的USB接口后计算机就会将其识别为常规键盘,并以每分钟超过1000个字的速度自动接受其预编程的击键有效载荷。只需短短几秒的物理访问,即可在目标计算机上轻松的部署一些先进的渗透测试攻击或IT自动化任务。此外,Rubber Ducky还有一些恶搞功能,例如快速更改同事工作站壁纸的脚本等。虽说功能强大,但其价格方面并无优势。目前官方的价格为45美金再加上运费,算起来并不便宜。

第1步:设置Digispark开发环境

在开始使用板子之前,我们必须先安装Arduino IDE。之后,我们还需要下载该板的兼容包,操作非常简单:

https://www.arduino.cc/en/main/software

安装完成后,打开Arduino IDE应用程序,依次选择 File -> Preferences ,并在字段名为“Additional Boards Manager URL”的输入框中,输入以下URL。

代码语言:javascript
复制
http://digistump.com/package_digistump_index.json

打开 Arduino IDE - — Preferences Tools -> Board -> Boards Manager,从下拉菜单中选择“Contributed”,选择Digistump AVR Boards包并安装。

现在,我们需要安装Digispark Bootloader驱动。

https://github.com/digistump/DigistumpArduino/releases/download/1.6.7/Digistump.Drivers.zip

通常,驱动程序安装过程会出现一些问题。因此,请确保驱动程序的正确安装。

最后,打开 Tools -> Board,然后选择 Digispark (Default — 16.5mhz)并将其设置为默认值。

第2步:克隆Rubber Ducky脚本

Rubber Ducky使用简单的脚本语言来创建payloads。而对于Digispark来说,就要复杂许多。我们需要使用Digikeyboard.h和Arduino IDE编写自己的payloads。在网上也能找到一些可用于Digispark ATTiny85的脚本,但并不能满足我们日常的任务需求。

这里,首先我要感谢我的好友MaMe82 (Marcus Mengs) ,他创建的duck2spark项目,可将Rubber Ducky脚本转化到Digispark上使用:

https://github.com/mame82/duck2spark

Duck2spark的一个很非常棒的功能是,支持非美语键盘布局。该功能主要是借助支持多种键盘布局的DuckEncoder实现的。

Duck2spark使用也非常的简单。以下是一个经典的hello world示例:

代码语言:javascript
复制
Generate a DuckyScript test.duck you want to use as output:
echo "STRING Hello World" > test.duck
Compile the script using DuckEncoder with your keyboard layout (de in example) or use my python port:
java -jar encoder.jar -i test.duck -o raw.bin -l de
Use duck2spark.py to convert into Arduino Sketch (options for single run, 2 seconds startup delay):
duck2spark.py -i raw.bin -l 1 -f 2000 -o sketch.ino
After setting up the Arduino IDE load the example "DigisparkKeyboard" and replace the Sketch source by the one saved to sketch.ino

单击Sketch -> Upload或单击左上角的Upload按钮。打开记事本。再次插入Digispark USB,我们将看到屏幕中“Hello World”自动输入的过程。

你也可以创建其它用途的Rubber Ducky Payloads,这主要取决于你的目的和意图。例如你可以创建无线网关联,下载和执行payloads,反向shell等。在做渗透测试时,我们甚至还可以使用Meterpreter,Empire,Unicorn等powershell payloads:

https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payloads

最后提示大家,可以使用一些热缩管来为你的Digispark-Ducky提供电绝缘,机械保护,密封及隐藏。

*参考来源:hackernoon,FB小编 secist 编译,转载请注明来自FreeBuf.COM

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第1步:设置Digispark开发环境
  • 第2步:克隆Rubber Ducky脚本
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档