
Ring -4からRing 0へ:攻撃・防御ファームウェア研究プラットフォーム。私たちはブートキットを構築し、そしてそれを検知する。クローズドループ。シリコンへのゼロトラスト。
「Barzakh」(برزخ)——两个领域之间的屏障;分隔生者世界与灵魂世界的不可见边界。在这里,它代表着攻击与防御之间、脆弱性与检测之间的屏障。
最全面的开源 UEFI 固件安全研究平台
从 Ring 0 到 Ring -4 的攻击模拟 | 132 个检测引擎 | 闭环对手验证
⚠️ AKADEMISCHES FORSCHUNGSPROJEKT — NUR VERTEIDIGUNGSSICHERHEIT
本平台旨在研究固件威胁并构建针对它们的防御。它包含带有硬件级终止开关的实时攻击模拟。访问此仓库即表示您同意仅将其用于合法的安全研究和教育目的。
Barzakh 是一个全栈固件安全研究平台,对跨越每个特权环的真实世界 bootkit TTP 进行建模——从 UEFI DXE 驱动(Ring 0)向下贯穿 SMM、Intel ME、AMD PSP、平台 DMA 控制器(Ring -3),直至 CPU 微架构威胁(Ring -4)。它将每种攻击技术与相应的检测引擎配对,构建出一个闭环系统,使每次攻击既可复现又可检测。
核心能力:
barzakh-server 提供 Web 仪表板和 JSON API(端口 8420),支持定时扫描和风险评分趋势barzakh-agent 监视固件目标、记录历史并将发现转发至 SIEM(Elastic ECS、ArcSight CEF、QRadar LEEF)或 webhook| 脅威 | 手法 | Barzakh のカバレッジ |
|---|---|---|
| BlackLotus (CVE-2023-24932) | 脆弱な shim を経由した Secure Boot バイパス | blacklotus 検出器 + blacklotus_mok ペイロード |
| LogoFAIL (CVE-2023-40238) | UEFI ファームウェアにおける画像パーサーのオーバーフロー | logofail 検出器 + logofail_image ペイロード |
| PixieFail (CVE-2023-45229+) | EDK2 におけるネットワークスタックのバッファオーバーフロー | pixiefail 検出器 + pixiefail_dhcp ペイロード |
| CosmicStrand | SPI フラッシュ DXE の永続化 | FV 整合性 + SPI 領域 + 永続化検出器 |
| LoJax | 初の実環境で確認された SPI インプラント | ME/SPI 検出器 + フラッシュディスクリプタ解析 |
| MoonBounce | SPI フラッシュ内のコア DXE の改変 | Boot Services フック + ファームウェアボリュームの差分検出 |
| MosaicRegressor | UEFI 永続化フレームワーク | 多段階: FV 改ざん + PE インジェクション + トランポリン |
| Hacking Team (RCS) | Option ROM を伴う UEFI ルートキット | Option ROM 検出器 + PCI 拡張解析 |
| FinSpy | UEFI ブートローダーの改変 | ExitBootServices の傍受 + メモリスキャン |
| Bootkitty (2024) | 初の Linux UEFI ブートキット、GRUB 署名バイパス | linux_bootchain 検出器 + bootkitty_grub_patch ペイロード |
| CVE-2024-7344 | 署名済みリローダーが未署名の PE ペイロードを読み込む | reloader 検出器 + secureboot_reloader ペイロード |
| CVE-2023-1017/1018 | TPM 2.0 リファレンス実装のバッファオーバーフロー | tpm_command 検出器 + tpm_ref_overflow ペイロード |
3 つのアーキテクチャ (x86_64、AArch64、RISC-V) にわたる 21 個の EDK II モジュールで、既知のあらゆるファームウェア永続化手法をエミュレートします:
| モジュール | Ring | 手法 |
|---|---|---|
DxeInject | 0 | DXE フェーズのドライバインジェクション — LoadImage/StartImage + SetVariable フック、FV 永続化、FVB2/Boot Guard バックエンドを備えた SPI フラッシュエミュレータ、キルスイッチ |
ExitBootHook | 0 | ExitBootServices の傍受 + MSR フッキング |
SpiChipsetEmulator | -1 | チップセットレベルの SPI インターフェースシミュレーション |
SmmPersistence | -1 | SMM ハンドラのインストールと SMRAM 永続化 |
CapsuleHijack | -1 | UEFI カプセル更新メカニズムの悪用 |
AcpiTableInject | -2 | カーネルメモリアクセスのための ACPI テーブルインジェクション |
VirtualAddressMapHook | -2 | EFI ランタイムサービスのフッキング |
PciOptionRom | -2 | PCI Option ROM の植え込み |
MeSpiManipulation | -3 | Intel ME SPI フラッシュ領域の操作 |
HeciIntercept | -3 | ホスト-ME 間通信チャネルの傍受 |
MeDmaAttack | -3 | ME が開始するホストメモリへの DMA |
AmtSolChannel | -3 | AMT Serial-over-LAN の隠蔽チャネル |
FtpmCommandForge | -3 | PSP メールボックス経由の AMD fTPM コマンド偽造 |
| モジュール | 手法 |
|---|---|
Aarch64DxeInject | EL を考慮したペイロードによる ARM64 DXE インジェクション |
ExceptionVectorHook | VBAR_EL1 例外テーブルの再配置 |
El3SecureMonitor | EL3 Secure Monitor 呼び出しの傍受 |
TzascManipulation | TrustZone Address Space Controller のバイパス |
DeviceTreeInject | 永続化のための Device Tree Blob の改変 |
IbootTrustChain | Apple iBoot の信頼チェーンの破壊 |
SepMailboxIntercept | Apple SEP (Secure Enclave) メールボックスの傍受 |
| モジュール | 手法 |
|---|---|
RiscVDxeInject | RISC-V プラットフォームにおける M モードファームウェアインジェクション |
すべての攻撃モジュールは SIMULATION_MODE = TRUE で提供されます — 実際のハードウェア操作を実行せずに動作をモデル化します。実際のハードウェアテストへの制御された経路については docs/LAB_TESTING.md を参照してください。
132 個の専用検出器を攻撃対象領域ごとに整理し、さらに TOML ルール、IOC フィード、YARA サブセットルール、ML モデルによる実行時拡張可能な検出を提供します: