Cynthion 是一款用于构建、测试、监控和试验 USB 设备的一体化工具。Cynthion 的数字硬件围绕独特的 FPGA 的架构构建,可以完全定制以适应当前的应用。因此,它可以充当不折不扣的高速 USB 协议分析仪、USB 黑客多功能工具或USB 开发平台。
核心特点
Cynthion 是一款完全可重新配置的测试仪器,提供使用并掌握USB所需的所有硬件、网关软件、固件和软件。以下 Cynthion 应用的场景:
- 低速、全速和高速 USB 的协议分析。Cynthion 提供被动 USB 监控所需的一切。添加分析软件,就拥有了一个功能齐全的 USB 分析仪,能够被动捕获 USB 流量和最多 16 个相关数字信号。
- 创建自己的低速、全速或高速 USB 设备。LUNA 提供 Amaranth 网关软件,允许在网关软件、固件或两者的组合中创建 USB 设备。使用 Facedancer 库,可以在高级 Python 中创建或模拟真实的 USB 设备。
- 针对 USB 通信的中间人 (MitM) 攻击。Cynthion 硬件可以充当“USB 代理”,能够透明地修改 USB 数据在主机和设备之间流动时的情况。每块板的三个 USB Type-C 连接允许同时进行高速代理,同时保持与主机的高速连接。因此,无论有或没有主机 PC 的帮助,都可以代理连接。
- USB逆向工程和安全研究。Cynthion 硬件和 LUNA 网关软件代表了 Facedancer 和 USB 模糊库等研究工具的专用后端,从而简化了兼容和不兼容 USB 设备的仿真和快速原型设计。与其他 USB 仿真解决方案不同,基于 Cynthion 的硬件可动态重新配置,因此您可以灵活地创建任何端点配置并参与几乎任何 USB(错误)行为。
- 功能齐全的开源 USB 协议分析仪
技术规格
- 开源工具开发 yosys+nextpnr
- 三个高速 USB 接口,每个接口都连接到能够以高达 480 Mbps 的速度运行的 USB3343 PHY。
- 两个用于设备模式通信的 USB Type-C 连接器(左侧)
- 1 个 USB Type-C 连接器,用于主机模式通信、设备模式通信或 USB 分析(右侧)
- 1 个 USB Type-A 连接器,用于主机模式通信或 USB 分析(右侧,与 Type-C 连接器共享)
文档链接
- 电路板原理图:https://github.com/greatscottgadgets/luna/releases/tag/hw-r0.4
- 设计文件(包括PCB):https://github.com/greatscottgadgets/luna/tree/main/hardware/rev0
- LUNA 网关:
- https://github.com/greatscottgadgets/luna
- 调试器固件:
- https: //github.com/greatscottgadgets/apollo
软件
- luna:
https: //github.com/greatscottgadgets/luna - Facedancer:
https: //github.com/greatscottgadgets/facedancer - Packetry:
https: //github.com/greatscottgadgets/packetry
原文:OpenFPGA
作者:碎碎思
相关文章推荐
- 用FPGA创建SoC如此容易
- 【Vivado那些事儿】动态时钟的使用
- 2D 中值滤波算法实现
- 开源的Bluespec SystemVerilog (BSV)语言表现如何?
- 优秀的 Verilog/FPGA开源项目介绍(三十七)- MATH库
更多FPGA干货请关注FPGA的逻辑技术专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。