ViperDroid/flipper-badge-audit

GitHub: ViperDroid/flipper-badge-audit

Flipper Zero 上的只读 NFC 门禁卡安全审计工具,通过检测芯片类型、读取 UID 并测试默认密钥来评估门禁卡的防克隆能力。

Stars: 1 | Forks: 0

Badge Audit

platform language build defensive license maintainer

几乎所有的 Flipper NFC 工具都是为了**读取、克隆或模拟**卡片而设计的。Badge Audit 则恰恰相反:它用来**评估**卡片。将其对准你的办公室/公寓/健身房门禁卡,只需几秒钟,你就能查明该凭证是处于完全暴露状态还是受到了真正的保护。

Badge Audit scanning a card on a Flipper Zero

## ✨ 功能 - 🔍 **协议识别** — 检测真实的卡片类型(MIFARE Classic / Ultralight / DESFire / Plus, ISO14443‑3A/4A/B, ISO15693, FeliCa, ST25TB, …)。 - 🆔 **UID / SAK / ATQA 读取** — 显示从卡片读取的实时标识符。 - 🔑 **MIFARE Classic 默认密钥测试** — 尝试针对**每个扇区**使用常见的出厂密钥,并报告仍有几个扇区未受保护。这是现实世界中访问控制的头号弱点。 - 📊 **防克隆评分 (0–100)** + 包含可视化进度条的 WEAK / MEDIUM / STRONG / **CRITICAL** 评估结果。 - 💾 **报告导出** — 将一份人类可读的安全态势报告附加到 SD 卡中,方便您记录或作为评估证据。 - ♻️ **重新扫描** — 无需离开应用即可重新扫描。 ## 🎮 操作说明 | 按钮 | 操作 | | :----- | :----- | | *(将卡片贴向背面)* | 检测并分析门禁卡 | | **OK** | 将报告保存至 SD 卡 | | **◀ ▶ ▲ ▼** | 重新扫描新卡片 | | **Back** | 退出 | ## 🧮 安全态势评分标准 | 卡片 / 协议 | 评估结果 | 原因 | | :-- | :-- | :-- | | **带有默认密钥的** MIFARE Classic | 🔴 CRITICAL | 扇区可被出厂密钥打开 —— 实际上未受保护 | | MIFARE Classic (无默认密钥) | 🟠 WEAK | Crypto1 已被破解;密钥可被恢复且卡片可被克隆 | | ISO14443‑3A/B (仅 UID), Ultralight, ISO15693, ST25TB | 🟠 WEAK | 如果读卡器信任 UID,则门禁卡可被轻易克隆 | | ISO14443‑4A/4B, FeliCa | 🟡 MEDIUM | 安全性取决于应用层 | | MIFARE Plus (SL3), DESFire EV1/2/3 | 🟢 STRONG | AES/3DES 双向认证 | ## 🛠️ 构建与安装 使用官方 **[ufbt](https://github.com/flipperdevices/flipperzero-ufbt)** 工具链构建。 ``` # 1. 安装 ufbt(一次性) python3 -m pipx install ufbt # 2. Clone & build git clone https://github.com/ViperDroid/flipper-badge-audit.git cd flipper-badge-audit ufbt # produces dist/badge_audit.fap # 3. 当 Flipper 通过 USB 连接时(请先关闭 qFlipper): ufbt launch # builds, uploads, and runs it on the device ``` **没有工具链?** 从 [Releases](https://github.com/ViperDroid/flipper-badge-audit/releases) 页面获取 `badge_audit.fap`,并使用 qFlipper 将其复制到 SD 卡的 `apps/NFC/` 目录下。之后在设备上打开 **Apps → NFC → Badge Audit** 即可找到它。 ## 📄 报告示例 按 `OK` 键会将类似以下的报告附加到 SD 卡中: ``` === Badge Audit === Card: MIFARE Classic 1K UID: A4 1C 8B 22 SAK: 08 ATQA: 00 04 Risk: CRITICAL (12/100) Default-key sectors: 14/16 Note: Sectors authenticating with factory keys are unprotected; rekey or migrate to DESFire. ------------------- ``` ## 🗺️ 路线图 - [ ] 显示是**哪个**默认密钥打开了各个扇区 - [ ] 支持 125 kHz LF 门禁卡 (EM4100 / HID Prox) - [ ] 用于多门站点审计的 CSV 导出功能 - [ ] 读卡器端的“门禁评级”模式 (Wiegand) ## ⚠️ 免责声明 Badge Audit 是一款**只读的防御性**评估工具。它**不会**克隆、模拟、写入或绕过任何内容。**仅**在您拥有或获得**明确书面授权**进行评估的凭证和系统上使用它。您需自行遵守所有适用的法律法规。本工具按“原样”提供,不提供任何形式的保证。 ## 📜 许可证 [MIT](LICENSE) © **ViperDroid** (Zakariya Jabbar)

ViperDroid 使用 🐬 + ☕ 制作

标签:DInvoke, Flipper Zero, MIFARE, NFC, 客户端加密, 物理安全, 门禁系统, 防御绕过