Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
rp2350_hacking_challenge — Raspberry Pi RP2350 破解挑战:提取受安全启动和 OTP 锁定保护的 128 位 OTP 密钥,附带适用于 Pico 2 开发板的安装脚本和固件。 | Kitploit
工具/GitHubGitHub/raspberrypi/rp2350_hacking_challenge
嵌入式系统安全硬件黑客密码学CTF硬件安全学习与教育固件分析实验室与实践
GitHub

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
raspberrypi/rp2350_hacking_challenge

rp2350_hacking_challenge

Raspberry Pi RP2350 破解挑战:提取受安全启动和 OTP 锁定保护的 128 位 OTP 密钥,附带适用于 Pico 2 开发板的安装脚本和固件。

查看仓库
202131年前Kitploit 审核通过

RP2350 黑客挑战赛

欢迎参加 Raspberry Pi RP2350 黑客挑战赛和漏洞赏金计划!

观看我们的快速讲解视频:

2025年1月14日更新

恭喜4位获奖者!在这里了解他们的全部信息。
衷心感谢 Thomas Roth 和 Hextree.io 团队在2024年帮助我们开发和启动这项挑战!

2025年1月1日更新

RP2350 黑客挑战赛已结束。
我们收到了许多精彩的提交!我们将在2025年1月14日公布获奖者并发布详细信息。

2024年9月5日更新

目前尚未收到任何破解报告。
我们将奖金翻倍至 $20,000!
我们延长了挑战赛的期限,现在截止到2024年12月31日午夜(英国时间)

目标很简单:找到一种攻击方法,能够导出隐藏在 OTP ROW 0xc08 中的秘密——该秘密为128位长,受 OTP_DATA_PAGE48_LOCK1 和 RP2350 安全启动的保护!

如果你认为自己找到了破解方法,请发送邮件至 [email protected] 并提供详细信息——我们将寄给你一块 Pico2,其中隐藏了一个自定义秘密。如果你能成功提取它,就能赢得 $20,000!

祝你好运!

免责声明

对于本次挑战,我们将对你的 RP2350 进行以下永久性且不可逆的更改:

  • 写入 bootkey0(使用公钥——或者你可以生成自己的密钥并构建自己的固件)
  • 通过 crit1.secure_boot_enable 启用安全启动(但使用公钥)
  • 通过 crit1.debug_disable 禁用调试
  • 覆盖并锁定 OTP ROW 0xc08 中的数据
  • 启用安全功能将永久禁用两个 Hazard3 RISC-V 核心(M33 核心仍可运行)

设置 - Pico 2 开发板

  • 通过 USB 将处于 BOOTSEL 模式的 RP2350 连接到你的电脑
  • 仓库中已包含签名密钥:ec_private_key.pem 和 ec_public_key.pem。如果你想生成自己的密钥,可以运行 keygen.sh 使用 openSSL 生成新密钥。
  • 接下来我们使用以下命令写入想要隐藏的秘密:./write_otp_secret.sh——这是不可逆的,因为我们无法“擦除”OTP。
  • 你可以通过运行 ./read_otp_secret.sh 来检查写入是否成功
  • 接下来我们构建项目:
    • mkdir build
    • cd build
    • cmake -DPICO_PLATFORM=rp2350 -DPICO_BOARD=pico2 ..
    • make
    • cd ..
  • 接下来我们通过运行 enable_secureboot.sh 在芯片上启用安全启动(这将不可逆地启用安全启动!请确保备份你的密钥!)
    • 要完全锁定芯片,包括禁用调试和启用毛刺检测器,请运行 lock_chip.sh
  • 现在我们准备安装固件:

调试版本和安全版本有什么区别?

调试版本展示了如何读取你需要提取的 OTP 秘密,同时还提供了一些关于芯片内部运行情况的调试输出。

由于 printf 等输出可能容易受到故障注入攻击,我们在安全版本中禁用了它们。

我们的“黄金”挑战 Pico 2 将运行安全版本的固件,二进制文件被复制到 RAM 中。

将来使用该芯片

参与本次挑战即表示你将在设备上永久启用安全启动。 你将来想要安装的任何固件都需要自行签名。你可以通过简单地将以下内容添加到 CMakeLists.txt(需要放在 pico_add_extra_outputs 之上)并将 ec_private_key.pem 复制到你的源目录来为其他项目启用签名。

root@kitploit:~
# Signing and hashing
pico_sign_binary(project_name ${CMAKE_CURRENT_SOURCE_DIR}/ec_private_key.pem)
pico_hash_binary(project_name)
pico_set_otp_key_output_file(project_name ${CMAKE_CURRENT_LIST_DIR}/otp.json)

规则、条款和条件

请参阅此处了解本次挑战的条款、条件和规则。

下载工具
  • 复制 rp2350_hacking_challenge_debug_version.uf2 或 rp2350_hacking_challenge_secure_version.uf2