大家好,我是麦鸽,今天给大家推荐一款开源的硬件工具。基于 RP2040 的开源黑客硬件平台,具有 RF、NFC、USB 和 SD 卡等功能,可用于测试研究。
在网络安全领域,工程师总是在寻找漏洞以修复它们并防止被其他人利用。
这些工程师使用的工具可能很昂贵,而且在许多情况下,这些工具并不完全符合工程师所需的要求。
在这个项目中,是一个开源硬件平台,其中包含一些用于网络安全的工具。
该板名为 Hackbat
,具有 RF 收发器、NFC 通信、SD 卡、USB 和 WIFI。所有这些均由 Raspberry PI 微控制器 RP2040 管理。
原理图和 PCB 设计是开源的,可在 GitHub 上获取。让我们逐个部分地了解 Hackbat。
RP2040没有内部FLASH存储器,因此我们需要从外部添加它。默认内存是 Wibond W25Q32JVZP。32Mbit 内存足以满足许多项目的需要。
如果我们需要更多内存,我们可以使用相同封装的更大内存,如 128 Mbits。
要对 RP2040 进行编程,Hackbat 使用一个按钮,必须在通电时按下该按钮。
该按钮保存闪存,以便 RP2040 加载引导加载程序。然后,在主机中,将创建一个外部存储设备。要在设备上编写程序,我们只需将 u2f 文件拖放到存储设备上即可。
显示部分
HackBat 中使用的 OLED 显示屏为 128x64 像素,驱动程序为 SH110X。该器件还允许使用 SSD1306 的 OLED,但请注意,VCC 和 GND 引脚颠倒了,因此您需要更改这些引脚的 0 欧姆电阻。
两个 OLED 驱动器均通过 I2C 连接至 RP2040。要使用显示器,我们可以使用 Adafruit 库(SH110x、SSD1306)。
射频部分
Hackbat 采用 Texas Instruments 的 CC1101。CC1101 是一款低成本低于 1 GHz 收发器。它设计为在 315、433、868 和 915 MHz 频段运行。
对于 Hackbat,RF 巴伦配置为 433 MHz,但是,通过更改无源元件值,我们可以使其在 868 MHz 下工作。
默认天线焊接到板上。
天线
但是,如果您需要更多增益,Hackbat 还允许您焊接 SMA 连接器并使用外部天线。
NFC部分
对于 NCF 通信,Hackbat 使用带有 PN532 的外部板。该 IC 使用 13.56 MHz 频段,与 NFC 卡和标签使用的频段相同。PN532 允许读取、写入、克隆和模拟 NFC 卡,因此它也可以用作 NFC 卡。
该模块允许通过 UART、i2C 和 SPI 连接到 PN532。
WiFi 模块
对于WIFI接口,Hackbat采用了ESP-12F模块,该模块基于ESP8266,这是一款具有2.4GHz WIFI的微控制器。使用该模块而不是仅使用 ESP8266 的一个优点是,天线与振荡器以及 IC 所需的几乎所有外部组件都集成到模块中。
在 hackbat 板上,我们只需要在复位和使能输入中添加一些外部上拉电阻,并在 GPIO15 中添加一个下拉电阻。此外,还有一个连接到 GPIO0 的按钮,用于激活引导加载程序并允许对 IC 进行编程。
ESP-12F 模块通过 UART 接口进行编程。通常这些模块连接到 USB-UART 桥,但这会在板上添加一个额外的 USB 连接器,因此 Hackbat 使用 RP2040 对 ESP-12F 模块进行编程。
为此,我们只需将代码加载到 RP2040 中即可创建双端口 USB-UART 桥接器。
在 GitHub 上我们可以找到 pico uart 桥接项目,它正是我们所需要的。由于该程序生成两个不同的UART端口,Hackbat有一个与另一个接口的外部连接器,因此我们可以将Hackbat用作USB-UART桥接器。
原理图和PCB:https://github.com/controlpaths/hackbat