ToothPaste:把密码通过蓝牙“挤”进任何一台电脑
字

字节笔记本

2026年11月7日 · 约 4 分钟读完

ToothPaste:把密码通过蓝牙“挤”进任何一台电脑

赞助API中转
¥120

ToothPaste(brisk4t/toothpaste,C++ + ESP32-S3,AGPL-3.0;gh API 实测 2026-11-08:239 星、20 fork,创建于 2026 年 2 月 16 日、最近推送 9 月 30 日;官网 toothpasteapp.com)——一句话(README 原文):通过 Web-BLE、加密芯片(Cryptographic IC)与 ESP32-S3,把 AES-256 加密的键盘与鼠标命令无线传给任何支持 USB 的设备,无需专用驱动、无需复杂设置。

toothpaste 仓库 README 截图

先说触发点:这个 2 月创建的项目本周因登上 HN(72 分、16 条评论)被重新翻出——本篇是深挖补写,不是首发新闻(9 月 30 日之后无推送,更新时间以 gh API 为准)。

解决的问题(README 原文口径)

toothpaste 官网页面截图

在"只能用键盘"的场合——BIOS、气隙系统、不想装密码管理器的陌生电脑——输长密码,不用手动一个字符一个字符敲。KDE Connect 这类方案行不通,因为它们要求两端跑兼容系统、允许装第三方软件;而目标设备只认 USB HID(人机接口设备)标准。

原理:一块"会无线收命令的键盘"

README 自己点破了一个隐式信任:几乎所有支持 USB 的设备都把键盘当作"用户的直接延伸"而隐式信任("键盘没有密码,因为密码要怎么输进去")。ToothPaste 就利用这一点:手机/浏览器发命令 → 蓝牙 → ESP32-S3 → USB HID 打字。README 也明说了这与 Hak5 USB Rubber Ducky 是同一条思路,但用途不必是攻击。

用法与覆盖面

最快上手:打开 toothpasteapp.com 点 Update,走 Web Serial 选已连接的 ESP32-S3 设备刷固件——Web 应用需要 Chromium 系浏览器(Brave、Edge、Chrome)的 Web API 支持,别写成"所有浏览器都能用"。除传密码外,还可做媒体控制与渗透测试(pentesting)用途;README 另有"Then there was AI"一节谈 AI 相关用法,以及硬件部分(Deus Ex PCBWay 板子——此处"Deus Ex"是 PCB 板名,与游戏或此前的 Deus Ex 备选稿无关)。

双面性:必须写进去

它利用的正是 USB HID"键盘天然可信"的隐式信任——同一套东西既能帮你在陌生电脑上安全输密码,也能被当作 Rubber Ducky 式的攻击工具。所以这篇不写成"黑客神器"猎奇稿,也不只写好话;README 自己的定位是"消除繁琐登录流程",按这个写。物理接口的信任链与此前写过的虚拟机逃逸链(软件边界)是两类问题,别混。

判断与边界

三点校准:① DIY 硬件项目——要自己准备 ESP32-S3 与加密芯片、刷固件,不是"买回来就能用"的成品;② 239 星、AGPL-3.0、2 月创建,项目不小众但仍在早期;③ 信任链的启示是双向的:对个人是便利,对设备方是"键盘即信任"这个老假设需要重新审视。

参考来源

相关文章

分享: