AWS/官方:多租戶 Kubernetes 協議資安缺口——命名空間級 mTLS 閘道與託管 TURN;ADB 延遲降至五十毫秒內

Key takeaway

Amazon Web Services 官方資安部落格於二零二六年十一月六日(太平洋時間)發表多租戶 Kubernetes 協議資安架構文:Android Debug Bridge、WebRTC、VNC 等預設未加密、亦難接企業 JWT 身分的協定,在共享 Amazon EKS 叢集若未設網絡原則,Pod 可直達其他租戶開放埠。官方以命名空間級 mTLS Envoy Gateway、AWS Private CA 經 cert-manager 輪替憑證,以及 Amazon Kinesis Video Streams 託管 TURN,取代堡壘機雙跳與自管 STUNner;遷移後 ADB 閘道額外延遲低於五十毫秒、指令往返低於一百毫秒,應用安裝由三至四分鐘降至三十秒內。

AWS/官方:多租戶 Kubernetes 協議資安缺口——命名空間級 mTLS 閘道與託管 TURN;ADB 延遲降至五十毫秒內

Amazon Web Services 官方資安部落格於二零二六年十一月六日(太平洋時間)發表多租戶 Kubernetes 協議資安架構文:Android Debug Bridge、WebRTC、VNC 等預設未加密、亦難接企業 JWT 身分的協定,在共享 Amazon EKS 叢集若未設網絡原則,Pod 可直達其他租戶開放埠。官方以命名空間級 mTLS Envoy Gateway、AWS Private CA 經 cert-manager 輪替憑證,以及 Amazon Kinesis Video Streams 託管 TURN,取代堡壘機雙跳與自管 STUNner;遷移後 ADB 閘道額外延遲低於五十毫秒、指令往返低於一百毫秒,應用安裝由三至四分鐘降至三十秒內。

AWS/官方:多租戶 Kubernetes 協議資安缺口——命名空間級 mTLS 閘道與託管 TURN;ADB 延遲降至五十毫秒內

Amazon Web Services(AWS)資安部落格於二零二六年十一月六日太平洋時間發表〈Addressing protocol security gaps in multi-tenant Kubernetes〉,說明在多租戶 Amazon Elastic Kubernetes Service(Amazon EKS)環境中,如何為預設缺乏企業級認證與傳輸加密的協定補上可重用控制面。本文已對照該官方原文交叉核實,來源真實性已驗證。文中以 Google Cuttlefish(容器化虛擬 Android)部署為案例,但強調除 Cuttlefish 原始碼修補外,其餘元件均可重用;對香港與亞洲正營運共享叢集、遠端裝置實驗室或低延遲除錯通道的雲端與平台團隊,具直接工程參考價值。

一、事件核心:未認證協定碰上共享叢集的預設可達性

問題定義

官方點名 Android Debug Bridge(ADB)與 Web Real-Time Communication(WebRTC)等協定:預設網絡通道未加密,亦未原生支援 JSON Web Token(JWT)等企業身分機制。Virtual Network Computing(VNC)與同類 TCP 服務同樣把憑證留在協定本地,無法對接中央身分庫。在多租戶 Kubernetes——包括 Amazon EKS——若未配置網絡原則限制跨命名空間流量,Pod 預設可觸及其他租戶已開放的埠;逐一改寫每種協定並不具擴展性。

已淘汰的堡壘機雙跳

案例初期把流量經堡壘主機轉入私有 EKS 控制面:自訂 API 對企業身分提供者(IdP)核對身分並做 Pod 級授權,CLI 可列出所屬命名空間內的 Pod 並連線。JWT 身分鏈把使用者對應到 AWS Security Token Service(AWS STS)的 RoleSessionName,令審計日誌可追到具體個人。惟憑證建立「本機→堡壘→目標 Pod」雙跳埠轉發,全部流量經 Kubernetes API 伺服器,並行工作階段形成吞吐量瓶頸。官方明確標示此圖僅供對照、請勿再實作。

自管 TURN 的運維與資安代價

WebRTC 在 NAT 後需要 TURN 媒體中繼。初期採用開源 STUNner,衍生三類問題:缺乏與 AWS 服務及企業 IdP 的原生整合,須自建權杖兌換服務;修補、監控與擴容成為常態負擔,跨可用區 Pod 遷移要人手改路由,尖峰時連線被丟棄;WebRTC 媒體雖有 DTLS/SRTP,但信令伺服器的認證與加密須自行補齊,控制面信令暴露風險仍在。架構最終未改用 Kinesis Video Streams 信令通道,以免對 Cuttlefish 上游偏離過大,改在應用層為預設信令端點加上 JWT 工作階段驗證與 TLS 終止。

二、技術原理深度解析

三件可重用元件

現行架構保留命名空間隔離、JWT 認證、自訂授權 API;可重用部份為:

  1. 命名空間級 Envoy Gateway:以 mTLS 做 TCP 代理,各命名空間自有閘道實例,只轉發本命名空間內 Pod。
  2. cert-manager + AWS Private CA:由 AWS Private CA issuer 外掛為各命名空間簽發短壽命 mTLS 憑證並自動輪替。
  3. Amazon Kinesis Video Streams:作為託管 TURN(並提供內建 STUN/TURN 與信令能力),以 IAM 取代自建權杖兌換。

mTLS 生效前提包括:各租戶命名空間預設拒絕(default-deny)的 NetworkPolicy——否則流量可繞過閘道;自訂 API 以 JWT 對 IdP 驗證後才回傳連線細節;命名空間隔離與範圍化 RBAC。

ADB:十二小時憑證與直接 mTLS

cert-manager 於命名空間建立時向 AWS Private CA 申請短壽命憑證;憑證 commonName 採 <user-namespace>.eks.internal 慣例,供握手時核對命名空間。憑證同時標示用戶端與伺服器認證用途;叢集級 AWSPCAClusterIssuer 避免在每個命名空間重複 Issuer。每張憑證壽命十二小時,約三分之二壽命時開始續期,四小時續期窗口供多次重試;Envoy 經 Secret Discovery Service(SDS)熱載新憑證,無需重啟 Pod。短壽命降低被盜憑證暴露窗口,並減少對 CRL/OCSP 的依賴——若威脅模型要求即時撤銷,仍須另建撤銷基礎設施。

使用者先經企業 IdP 與自訂 CLI/API 認證;API 驗證 JWT、確認命名空間指派後,經 HTTPS 下發該命名空間用戶端憑證與閘道連線資訊。CLI 再以該憑證對 Envoy 建立直連 mTLS,由 Envoy 將 TCP 串流代理至目標 Pod 並做連線池化。JWT 證明「是誰」,mTLS 憑證證明「屬哪個命名空間」。Envoy 到 Pod 這一段本身未再做 mTLS;靠 NetworkPolicy 只允許命名空間閘道觸及 ADB 埠。有合規要求者可再以 sidecar 或 Pod 級憑證把 mTLS 延伸到 Pod。REST API 路徑置於 AWS WAF 後方;ADB 資料路徑無 WAF,依賴 mTLS、NetworkPolicy 與命名空間隔離。官方並提醒:當命名空間與使用者嚴格一對一時,憑證主體可不含個人識別;共享命名空間或需細粒度歸責時,應改簽發每人一張憑證。

WebRTC:託管 TURN 與 IAM 工作階段範圍

改用 Kinesis Video Streams 後,不再需要自建權杖兌換;計費按作用中信令通道、信令訊息與 TURN 串流分鐘,閒置命名空間不產生 TURN 費用。ADB 走命名空間 Envoy+mTLS+NetworkPolicy;WebRTC 媒體走 Kinesis Video Streams,以 IAM 限定每次工作階段憑證;自訂 REST API 是唯一 HTTP 路徑(HTTPS+邊緣 WAF)。JWT 身分鏈串起三條路徑,審計可記錄誰於何時連到哪個命名空間。

延遲對照(官方量測)

  • 舊:雙跳埠轉發下,應用安裝約三至四分鐘;單一 ADB 指令往返約一至二秒。
  • 新:相對本機 Android,閘道額外延遲低於五十毫秒;經 Envoy 的單一 ADB 指令低於一百毫秒;應用安裝低於三十秒——因 TCP 直接代理至 Pod,不再經 API 伺服器。

同一模式可套到 VNC/RDP(以憑證取代共用密碼或免在容器內加入 Active Directory)、以及 MQTT、SIP 等「有加密但缺工作階段級認證」的 TCP 協定。JWT 身分鏈與客戶端取證流程仍須自建;Cuttlefish 修補不可重用。

三、日常應用場景

1. 開發者與技術團隊

若平台提供遠端模擬器、裝置農場、串流除錯或任何「協定本身不識企業 SSO」的 TCP 通道,應優先評估命名空間級閘道+短壽命 mTLS,而非繼續加厚堡壘機埠轉發。部署順序宜先 NetworkPolicy,再閘道與憑證;並把自訂授權 API 當作成熟認證服務來做程式碼審查、日誌與存取控制。

2. 企業與隱私敏感行業

多租戶共用 EKS 時,「同叢集可達」本身就是資料外洩與橫向移動風險。金融、醫療與受規管行業應把 default-deny、命名空間 RBAC、十二小時級憑證輪替與「誰連過哪個命名空間」的審計,寫進雲端落地檢查表;合規若要求端到端加密,需顯式評估 Envoy→Pod 明文段。

3. 一般用戶

終端消費者不會直接操作 EKS 閘道;但若使用建基於遠端裝置實驗室或雲端串流的開發/測試產品,延遲與連線穩定度改善,正來自這類把未認證協定「外包」給閘道與託管中繼的設計。

4. 香港與亞洲市場視角

本港金融科技、遊戲串流、物聯網與外包研發團隊,常見在單一帳戶或多業務線之間共享 Kubernetes,又要把 ADB、遠端桌面或 WebRTC 開給承辦商。把身分留在企業 IdP、把傳輸升格為 mTLS、把 NAT 穿越交給託管 TURN,較自管 STUN/TURN 更易滿足審計與可用區漂移。若同時規劃雲端遷移、零信任分段或叢集硬化,可對照官方針對 Envoy、cert-manager 與 Kinesis Video Streams WebRTC 的文件落地。

四、專業評價與潛在考量

優勢

  • 不修改協定本身,即以可重用閘道與託管服務補上加密與企業身分,擴展性優於逐協定打補丁。
  • 以可核實數字展示開發者體驗:閘道開銷低於五十毫秒、安裝時間大幅縮短,資安方案不以犧牲延遲為代價。
  • 清楚列出前提控制(default-deny、JWT API、RBAC),避免「只開 mTLS」的假安全感;並公開淘汰堡壘機雙跳圖,減少業界複製過時模式。

需要留意的地方

  • 自訂授權 API 是主要信任邊界;實作品質決定整套架構成敗,官方未提供可直接抄襲的完整產品化元件。
  • Envoy→Pod 預設非 mTLS;合規分類較高的流量須另行延伸。
  • 十二小時憑證無法取代即時撤銷需求;WebRTC 信令仍依賴應用層加固;Kinesis Video Streams 有信令/TURN 計費與配額,須納入成本模型。
  • 文中案例綁定 Cuttlefish 場景,其他工作負載須自行映射 JWT→命名空間與客戶端取證流程。

結語

AWS 這篇官方架構文把多租戶 Kubernetes 上的「舊協定、新攻擊面」講清楚:共享叢集的預設可達性,會放大 ADB、WebRTC、VNC 等未企業化協定的風險;命名空間級 mTLS 閘道、短壽命 Private CA 憑證與託管 TURN,是可重用、且已用延遲數據驗證過的方向。對香港企業而言,重點不是追某一套 YAML,而是把網絡原則、身分鏈與中繼運維從「自管特例」升成平台能力。若你的團隊正在檢視 EKS/Kubernetes 多租戶隔離、零信任分段或雲端暴露面,可參考 YSK Limited 的香港雲端遷移與網絡安全服務,把 NetworkPolicy、閘道與審計做成可驗證的工程項。


參考來源

  1. AWS Security Blog(官方原文):Addressing protocol security gaps in multi-tenant Kubernetes

Related services & products