一款用于构建、分析和破解USB设备的开源、多功能工具LUNA
2022-01-07
2621
0
这是众筹网站CrowSupply上发布的一个新的众筹项目,设计文件已经上线众筹并设计文件开源。
项目链接:https://www.crowdsupply.com/great-scott-gadgets/luna
LUNA是一个完整的工具包,使用FPGA技术与USB工作;并提供硬件、网关和软件来启用USB应用程序。
LUNA可以用来做以下的一些事:
- 协议分析 - 低速、全速、或高速USB。LUNA提供硬件设计和网关,允许被动USB监控。当与ViewSB USB分析仪工具包结合时,LUNA硬件+网关可以作为一个功能齐全的USB分析仪使用。
- 创建您自己的低速、全速、高速,或(实验性)超高速USB设备。LUNA提供了一个nMigen网关的集合,允许您轻松地在网关、软件或两者的组合中创建USB设备。
- 将USB功能构建到新的或现有的片上系统(SoC)中。LUNA能够针对常见的Wishbone总线生成定制外设,使其易于集成到SoC设计中,该库为开发简单的SoC设计提供了简单的自动化。
未来你可以使用LUNA做一些事情:
USB通信的中介 - LUNA工具包将能够充当一个USB代理,当USB数据在主机和设备之间流动时,可以透明地修改USB数据。
USB逆向工程和安全研究 - LUNA工具包将作为一个理想的后端工具,如FaceDancer, 允许简单仿真和快速原型兼容和不兼容的USB设备。
技术指标:
- 使用Lattice的LFE5U-12F ECP5 FPGA,支持yosys+nextpnr开源FPGA流程;
- 3个高速USB接口,每个连接到一个USB3343 PHY,能够以高达480Mbps的速度工作:
- 两个USB Type-C连接器用于设备模式通信(左侧)
- 一个USB Type-C连接器,用于主机模式通信、设备模式通信、或USB分析(右侧);
- 一个USB Type-A连接器用于主机模式通信或USB分析(右侧,与Type-C连接器共享);
- Microchip SAMD11调试控制器允许用户配置FPGA,并提供多个诊断接口:
- 一个完整的、用户可编程的JTAG控制器,能够配置FPGA并通过JTAG与用户设计通信;
- 内置的USB到串行通信桥,用于FPGA调试I/O;
- 各种简单的、内置的调试机制,包括允许您创建简单的、PC可访问的注册界面的实用程序;
- 通过三个USB电源开关,您可以控制从右侧USB连接器输入和输出的电源,从而方便分析中由USB供电的设备的受控电源循环;
- 64Mbit (8 MiB) RAM用于缓冲USB流量或用户应用;
- 两个未安装的用户I/O SMA连接器封装,用于触发器输入/触发器输出或用于多设备时钟/数据同步;
- 两个未安装的Pmod I/O连接器提供16个高速FPGA用户IOs,支持用户FPGA应用程序,并允许在USB分析期间捕获逻辑电平数据;
- 32Mbit (4 MiB) SPI接口的flash,用于无PC的FPGA配置;
- 6个FPGA连接的用户LED和5个微控制器管理的状态LED。
全功能的开源USB协议分析仪:
采用开源、免费的设计工具KiCad设计:
原理图顶层图
3D视图
最终的产品大小
和类似产品的性能对比表
相关设计文档:
USB training materials are available at https://www.usbc.tf; additional materials will be released in cooperation with OpenSecurityTraining.info in the near future.
- 板子的原理图: https://github.com/greatscottgadgets/luna/releases/tag/hw-r0.4
- 板子的设计文件: https://github.com/greatscottgadgets/luna/tree/main/hardware/rev0
- LUNA Gateware: https://github.com/greatscottgadgets/luna
- 调试固件: https://github.com/greatscottgadgets/apollo
软件
- LUNA: https://github.com/greatscottgadgets/luna
- FaceDancer: https://github.com/usb-tools/facedancer
- ViewSB: https://github.com/usb-tools/viewsb
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936