The challenges of non-custodial embedded wallets | Thibault de Lacheze-Murel (Dfns)
三句話摘要
嵌入式錢包的運作原理與其身份驗證令牌洩露所導致的私鑰安全漏洞。 嵌入式錢包的 auth token cookie 若存放在 DApp 域下,等同於將私鑰的安全性降至「DApp 基礎設施最薄弱的一環」,應改用 WebAuthn / PassKey 公鑰方案並解耦憑證與私鑰。 恢復流程是核心風險點:當用戶換設備時,系統必須透過 DApp 的 auth token 觸發密鑰刷新(key refresh),但這也意味著 DApp 域下的 cookie 就等同於存取私鑰的萬能鑰匙。
重點整理
重點- 1
恢復流程是核心風險點:當用戶換設備時,系統必須透過 DApp 的 auth token 觸發密鑰刷新(key refresh),但這也意味著 DApp 域下的 cookie 就等同於存取私鑰的萬能鑰匙。
- 2
DApp 在不知情下成為托管方:由於 auth token 存在 DApp 的基礎設施中,DApp 理論上可在不通知用戶的情況下重建其錢包,破壞了「非托管」的承諾。
- 3
OTP 共享密鑰不應用於身份驗證:OTP 的本質是雙方共享密鑰,意味著嵌入式錢包提供商本身就能偽造登入,無法事後舉證是否遭濫用,必須改用公鑰方案。
- 4
鏈下基礎設施的安全審計長期被忽視:目前安全審計社群大多聚焦智能合約,但所有與區塊鏈互動的鏈下系統同樣存在大量漏洞,是值得投入的研究方向。
實用技巧與重點
乾貨- 技術協議:Shamir Secret Sharing(SSS)、Multi-Party Computation(MPC)
- 三方架構:Client(瀏覽器)、DApp、Embedded Wallet Provider
- 漏洞機制:auth token 以 cookie 形式存於 DApp 域 → 可直接觸發 key refresh → 還原私鑰
- PoC 工具:一支腳本,輸入 auth token → 對錢包提供商 API 發請求 → 輸出私鑰
- 安全測試步驟:開 DevTools → Application 選項卡 → 清除嵌入式錢包提供商的 Local Storage 與 Cookie → 刷新頁面 → 若錢包自動加載無需任何用戶輸入 = 不安全
- 推薦認證方案:WebAuthn、PassKey(基於公鑰密碼學)
- 已在生產環境發現多個漏洞,皆向提供商報告,部分已部署緩解措施,但仍有不安全實作存在
結論
結論“嵌入式錢包的 auth token cookie 若存放在 DApp 域下,等同於將私鑰的安全性降至「DApp 基礎設施最薄弱的一環」,應改用 WebAuthn / PassKey 公鑰方案並解耦憑證與私鑰。”
完整解析
詳細嵌入式錢包(Embedded Wallet)的出現,是為了解決 Web3 onboarding 的摩擦問題。傳統上,用戶必須自行保管助記詞,這對一般人來說門檻極高;嵌入式錢包改以電子郵件、指紋或面部辨識來驗身,並在底層使用 Shamir Secret Sharing 或多方計算(MPC)將私鑰拆分成多個「共享片段」儲存於不同地方,在不降低所有權保障的前提下,盡可能貼近 Web2 的使用體驗。
然而,恢復流程的設計卻暗藏風險。當用戶換設備時,儲存在舊設備瀏覽器本地的密鑰共享片段會消失,因此系統必須提供一套恢復路徑。目前生產環境常見的做法是:在創建錢包時,嵌入式錢包提供商會將一個 auth token 以 cookie 的形式存放在 DApp 的域下。當用戶換裝置後,只要向 DApp 重新驗身,DApp 便會取出這個 token,用它向錢包提供商觸發密鑰刷新(key refresh),重新生成共享片段,恢復對錢包的存取。
問題的核心在於:這個 auth token 本身就足以完成整個還原流程。演講者撰寫了一段 PoC 腳本,僅憑用戶向 DApp 驗身後拿到的 auth token,就能對錢包提供商發出 API 請求,最終取得鏈上私鑰。更棘手的是,DApp 域下的 cookie 難以被嚴格管控,可能散落在 Datadog、日誌系統、CDN 等各種後端基礎設施中,任何能讀取該 cookie 的內部人員或攻擊者,都具備竊取私鑰的能力。這代表 DApp 在用戶毫不知情的情況下,實際上成了托管方。
針對這些問題,演講者提出兩條改進路線:第一,全面採用公鑰密碼學進行身份驗證,例如 WebAuthn 或 PassKey,確保只有用戶的裝置持有私鑰,提供商僅保存公鑰,無法獨自偽造授權;OTP 這類基於共享密鑰的方案則應被淘汰,因為提供商與用戶共享同一秘密,一旦被濫用無從舉證。第二,應讓驗身憑證(credential)與鏈上私鑰在安全層面解耦,避免「能登入 DApp」等同於「能還原私鑰」這種危險的等價關係。演講者也呼籲安全審計社群將目光從智能合約延伸至鏈下基礎設施,因為與區塊鏈互動的所有鏈下系統同樣存在大量未被重視的漏洞。
關鍵時刻
Pipeline v2帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。
事實查核
Pipeline v2說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

