對於許多開發團隊來說,CI/CD(持續整合與持續部署)工具是開發流程的心臟。然而,一旦這個心臟被攻破,整個軟體供應鏈將面臨極大風險。近期,美國網路安全與基礎設施安全局(CISA)發出警告,指出 JetBrains TeamCity 的地端(On-premise)版本存在一個極其嚴重的安全漏洞 CVE-2026-63077,且該漏洞目前已在野外被積極利用(Active Exploitation)。
這篇文章將為工程師詳細解析這個漏洞的技術脈絡、潛在影響以及應對方案。
漏洞概述:CVE-2026-63077 是什麼?
CVE-2026-63077 是一個發生在 JetBrains TeamCity 伺服器上的遠端程式碼執行(Remote Code Execution, RCE)漏洞。其 CVSS 評分高達 9.8,屬於最高危等級。
簡單來說,這個漏洞允許一個「完全沒有帳號密碼」的外部攻擊者,只要能透過網路接觸到 TeamCity 伺服器,就能在伺服器上執行任意的作業系統指令。
技術核心:反序列化與 Agent 輪詢協定
要理解這個漏洞,我們需要拆解兩個關鍵技術概念:反序列化(Deserialization)與 Agent 輪詢協定(Agent Polling Protocol)。
什麼是反序列化漏洞? 在軟體開發中,「序列化」是指將記憶體中的物件(Object)轉換成可以儲存或傳輸的格式(如 JSON、XML 或二進位流);而「反序列化」則是將這些格式還原回記憶體物件的過程。
反序列化漏洞發生在程式「盲目信任」傳入的數據時。如果攻擊者精心構造一個惡意的序列化數據包,當伺服器嘗試將其還原為物件時,可能會觸發非預期的程式碼路徑,進而導致攻擊者可以執行任意指令。這就像是你收到一個包裹,在還沒確認內容物之前就直接按照包裹上的「組裝說明書」操作,而說明書裡其實寫著「請幫我打開後門」。
漏洞發生的路徑:Agent 輪詢協定 TeamCity 的架構分為「伺服器(Server)」與「代理端(Agent)」。Agent 負責執行實際的構建任務,而 Agent 會定期透過 Agent 輪詢協定(Agent Polling Protocol) 向伺服器請求指令或回報狀態。
CVE-2026-63077 正是在這個協定處理過程中出現了漏洞。攻擊者可以偽裝成一個 Agent,向伺服器發送惡意的輪詢請求。由於伺服器在處理這些數據時缺乏足夠的認證檢查且存在反序列化缺陷,導致攻擊者能直接繞過認證機制(Bypass Authentication),在伺服器端獲取執行權限。
實際影響與風險分析
這個漏洞之所以被 CISA 列為高優先級,是因為它直接威脅到 CI/CD 管道的完整性。
權限範圍 攻擊者執行指令的權限取決於 TeamCity 伺服器進程(Process)在作業系統中所擁有的權限。如果伺服器是以 root 或 Administrator 權限運行,攻擊者將直接掌控整台主機。
潛在損害 一旦成功入侵,攻擊者可以採取以下行動: 數據外洩:竊取 TeamCity 伺服器上的配置資訊、專案原始碼以及儲存在伺服器中的敏感憑證(Credentials),例如 API Key 或資料庫密碼。 修改伺服器狀態:變更構建設定或刪除重要紀錄。 供應鏈攻擊(Supply Chain Attack):這是最危險的。攻擊者可以修改構建產物(Build Artifacts),在最終分發給客戶的軟體中植入後門(Backdoor)。由於 CI/CD 管道通常具有部署到生產環境的權限,這意味著攻擊者可以透過 TeamCity 滲透到整個公司的生產環境。
限制與不確定性
儘管漏洞極其嚴重,但目前仍有部分資訊尚未公開: 利用手法:目前尚不清楚攻擊者在野外具體是如何觸發此漏洞的。 攻擊者身份:尚未確認背後的威脅組織(Threat Actors)是誰。 影響規模:目前不清楚全球有多少伺服器已被成功入侵。 官方確認:雖然 CISA 已將其列入已知被利用漏洞(KEV)目錄,但 JetBrains 的官方公告在當時尚未同步更新「已被積極利用」的狀態。
工程實務建議:如何應對?
如果你或你的公司正在使用 TeamCity 的地端版本,請立即採取以下行動:
第一優先:立即更新 唯一的根本解決方案是更新軟體。 JetBrains 已經發布了修補此漏洞的更新版本。請將 TeamCity 伺服器升級到最新版本,以修復反序列化缺陷並加強認證檢查。
第二優先:權限最小化(Least Privilege) 檢查 TeamCity 伺服器進程的運行權限。絕對不要使用 root 或系統管理員權限運行 TeamCity。應該創建一個專用的低權限使用者帳號來運行該服務,這樣即使發生 RCE,攻擊者能獲取的權限也會受到限制,降低對主機系統的破壞力。
第三優先:網路隔離 限制對 TeamCity 伺服器端口的訪問。如果可能,應將 TeamCity 放置在內部網路(VPN)中,或使用防火牆限制僅允許已知且受信任的 Agent IP 進行輪詢,減少暴露面。
最後的工程判斷
CVE-2026-63077 是一個典型的「高影響、低門檻」漏洞。它利用了 CI/CD 工具中必要的通訊協定,且無需認證即可觸發,這使得它成為攻擊者眼中極具吸引力的目標。
對於 DevOps 工程師而言,這再次提醒我們:CI/CD 工具本身就是最高價值目標之一。它不僅擁有原始碼,還擁有部署權限與各種秘密金鑰。將其視為「內部工具」而放寬安全檢查是極其危險的。面對此類漏洞,最快且最有效的應對方式始終是快速補丁(Rapid Patching)與嚴格的權限隔離。