在地化威脅模型

將翻譯工作外包或眾包給第三方,會引入額外的安全性及隱私權風險。譯者與組織的信任關係可能不如內部開發團隊緊密,也可能在不同司法管轄區工作。本模型會辨識並分類與外部翻譯貢獻者相關的威脅。

關鍵假設

  • 譯者可能是承包人員、志工或機構,且審查程度各不相同。

  • 譯者需要 Weblate 存取權限。

  • 翻譯字串可能包含未釋出的功能、法律條款或安全資訊等敏感內容。

  • 組織對譯者的本機環境控制有限。

威脅類別 (STRIDE)

1. 欺騙

  • S1. 偽裝成真實貢獻者的虛假譯者帳號。

    • 風險:未經授權存取專案,或插入惡意字串。

    • 緩解措施:

2. 竄改

  • T1. 內嵌有害承載內容的惡意譯文。

    • 風險:若翻譯未正確逸出,可能遭到 JavaScript、HTML 或格式字串插入攻擊。

    • 緩解措施:

      • 在 Weblate 中套用嚴格的輸入驗證。強制執行 不安全的 HTML 等品質檢查可能有所幫助。請參閱 品質檢查強制檢查

      • 在 CI 中使用自動化的翻譯檔案安全掃描。

      • 限制翻譯檔案使用危險標記。依所用在地化框架而定,這可能是內建行為、需選擇啟用,或需要第三方程式庫。

  • T2. 插入誤導性譯文。

    • 風險:使用者可能誤解應用程式行為(例如同意對話方塊翻譯錯誤)。

    • 緩解措施:

3. 否認

  • R1. 惡意或低品質譯文的爭論。

    • 風險:譯者否認應對所插入的問題負責。

    • 緩解措施:

      • Weblate 中的所有變更都有記錄。

      • 搭配版本控制使用 Weblate,以保留不可變更的歷程記錄。

4. 資訊披露

  • I1. 洩露未釋出產品的細節。

    • 風險:譯者獲得未釋出功能或機密術語的提早存取權。

    • 緩解措施:

      • 分割專案,以限制敏感字串的存取權。

      • 與外部機構簽訂保密協議。

      • 延後高度機密字串的翻譯至公開發佈為止。

  • I2. 暴露字串內個人資料。

    • 風險:譯者可能存取或濫用內嵌的使用者資料。

    • 緩解措施:

      • 避免在來源字串中曝露真實使用者資料。

      • 敏感欄位請使用預留位置。

5. 阻斷服務

  • D1. 批次提交垃圾譯文。

    • 風險:審閱佇列不堪負荷;發行時程遭到干擾。

    • 緩解措施:

      • 選取符合團隊處理量的適當工作流程。工作流程自訂 可讓您依語言進行調整。

      • 設定自動化譯文品質檢查;見 品質檢查

6. 權限提升

  • E1. 譯者獲得未經授權的專案層級權限或管理權限。

    • 風險:權限提升導致竄改或資料暴露。

    • 緩解措施:

      • 採用最小權限原則。

      • 定期審閱存取權及群組成員資格。

資產清冊

  • 來源字串:可能包含未釋出的產品功能或法律文字。

  • 已翻譯字串:輸出直接呈現給終端使用者。

  • 使用者資料預留位置: 字串中參照的姓名、電子郵件或 ID。

  • 存取憑證:譯者、機構或機器人的帳號。

信任邊界

  • 組織 ↔ 譯者:必須強制身分驗證和基於角色的存取。

  • 翻譯平台 ↔ 版本控制: 同步需要安全的權杖/金鑰。

  • 譯者 ↔ 翻譯平台: 所有輸入都必須先清理,才能整合至建置版本中。

  • 平台 ↔ 終端使用者: 必須驗證翻譯,以防止程式碼插入。

緩解摘要

結論

相較於內部貢獻者,第三方譯者會引入特有風險。透過適當的技術、組織及合約控制措施,組織可以降低這些風險,並安全地整合外部翻譯服務,同時維護產品完整性及法規遵循。