研究員用 AI 一星期找出 Prusa 打印機漏洞
捷克 3D 打印機生產商 Prusa Research 在 11 月 2 日公布安全公告 PSA-2026-002,承認旗下現役打印機所用的 Buddy 韌體有 14 項安全問題,合共約 23 個缺陷,全部由獨立研究員 Yannick Dixken 在 2026 年 8 月報告。Prusa 同日公開修補後的原始碼,Dixken 亦發表長文,交代他如何令自己的打印機在螢幕上播放 Rick Astley 的〈Never Gonna Give You Up〉。
Dixken 在文中表示,他的本業是平台工程和網站可靠性工程的自由工作者,安全研究只是興趣,以往未接觸過韌體。他在 8 月花了一星期,對自己一部運行官方簽署韌體 6.5.7 的 MK4S 動手,用的工具是 Anthropic 的 Claude Opus 4.8 模型和一個模糊測試工具。

最嚴重漏洞要打印機連上攻擊者的伺服器
Prusa 的公告指,最嚴重的一項(PFB-008)初步評為 CVSS 8.1 分,屬「高」風險。研究員把它與另一項缺陷(PFB-012)串連:他先把打印機設定為連接自己架設的 Prusa Connect 伺服器,並身處同一個本地網絡,然後便可在打印機的主控制器上執行自己的程式碼。Prusa 形容,實際後果包括開始、停止或弄壞打印工作、更改設定,以及在螢幕顯示意想不到的內容。
Dixken 的文章解釋,問題出在一段 463 位元組的路徑,會溢出一個共用的 512 位元組緩衝區;韌體原本有 104 位元組的長度上限,但只寫成 assert() 檢查,正式版本編譯時會被刪走,而韌體亦沒有堆疊保護(stack canary)。他嘗試攔截打印機與官方 Prusa Connect 之間的連線,但因加密連線沒有被攻破而失敗。
其他缺陷包括一條 110 字元的 G-code 指令會溢出 96 位元組的佇列空間,以及經特製檔名的 USB 手指可溢出路徑緩衝區;其中 PFB-007 需要在開機時已插上 USB 手指,評分為 6.4。
Prusa 稱無法經互聯網直接攻擊
Prusa 表示,這些問題全部不能從互聯網直接攻擊打印機,亦不會讓人取得 Prusa 帳戶、密碼或付款資料,公司亦不知道有客戶曾被利用這些漏洞攻擊。所有問題已在韌體 7.0.0 及之後版本修補,只有一個低風險的 EEPROM 缺陷屬部分修補,公司已申請 CVE 編號。
受影響型號包括 CORE One 系列(包括 INDX)、XL、MK4/MK4S、MK3.9/MK3.5 及 MINI/MINI+;據 3D 打印網站 makers101 報道,舊款 MK3S+ 使用另一條韌體線,不受影響。
由 Reddit 短片到公開披露
按 Prusa 公布的時間線,Dixken 在 8 月 16 日先在 Reddit 貼出一段示範短片,Prusa 的社群經理數分鐘內聯絡他,他隨即刪帖並改以電郵報告,翌日交出整份報告。Prusa 在 9 月 9 日重現並確認問題,10 月 5 日先為 CORE One 及 CORE One L 推出 7.0.0,10 月 15 日推至所有受影響型號,10 月 22 日再推出 8.0.0。
makers101 報道,Prusa 在 10 月 30 日電郵通知 15 款型號的用戶「盡快」安裝 7.0.0,但電郵內附 HubSpot 追蹤連結,被部分用戶懷疑是釣魚郵件;Prusa 職員其後在 Reddit 回應,指電郵是真的,只是「做得不好」。Dixken 表示,完整的概念驗證程式碼最快在 12 月公開,或會在 40C3 大會上發表。




暫時未有留言
提交留言即表示你已閱讀我們的私隱政策。