Git 幾乎是每位開發者每天都在用的工具,而 git clone 別人的專案,更是再平常不過的動作。
這週有兩個和開發環境有關的更新:Git 專案在 11 月 10 日釋出 2.56.1,一次修補 6 個資安漏洞,其中一個是複製惡意儲存庫時可能執行任意程式碼;隔天 Google 也發布 Chrome 157 穩定版與 Chrome 156 延伸穩定版的新版本。
我們先從最實用的開始:Git 怎麼更新、怎麼確認,再看這 6 個漏洞各是什麼,最後簡單整理 Chrome 這次的版本。
先更新 Git:怎麼確認與更新
做法很直接:把 Git 更新到 2.56.1,或你所用版本系列的對應修補版。
先看目前的版本
在終端機輸入:
git --version
Git 官方的修補版本如下,只要你的版本號大於或等於同系列的這一列,就已經包含修補:
| 你的版本系列 | 修補版本 |
|---|---|
| 2.56 | 2.56.1 |
| 2.55 | 2.55.1 |
| 2.54 | 2.54.1 |
| 2.53 | 2.53.1 |
| 2.52 | 2.52.1 |
| 2.51 | 2.51.3 |
| 2.50 | 2.50.2 |
舉例來說,git --version 顯示 git version 2.54.0,就屬於 2.54 系列,要更新到 2.54.1 以上;顯示 2.56.1 就不用動。比 2.50 更舊的版本,GitHub 公告沒有列出修補版,直接升到 2.56.1 最省事。
Windows(Git for Windows)
Git for Windows 已在 11 月 10 日釋出 2.56.1,更新說明列出的就是這 6 個 CVE。更新方式有兩種:
- 到 Git for Windows 官網 下載新版安裝程式再執行一次。
- 在 Git Bash 執行下面指令,它會檢查更新並詢問是否安裝:
git update-git-for-windows
macOS
Git 官網列出的安裝方式有 Homebrew、MacPorts 與 Xcode Command Line Tools。用 Homebrew 的話:
brew update
brew upgrade git
Homebrew 的 Git formula 目前 stable 版本為 2.56.1。如果你用的是 Xcode Command Line Tools 附帶的 Git,請用 git --version 自行確認版本是否已達修補版。
Linux
依發行版的套件管理工具更新,例如 Debian、Ubuntu 系列用 apt,Fedora 用 dnf,Arch 用 pacman。發行版是否已經帶入修補版,要看各家的套件庫,更新後同樣用 git --version 對照上表。
暫時不能更新時
GitHub 公告列出的降低風險做法:只從信任的伺服器複製、不要對不明來源的儲存庫做遞迴複製(--recurse-submodules)、不要合併不明來源的內容或標籤,也不要處理來源不明的二進位 patch 或 fast-import 資料流。公告也強調,這些做法不能取代更新。
另外,GitHub 官方說明,github.com 等託管服務已部署修補,GitHub Desktop、Codespaces 與 GitHub Actions 也會帶入修補版 Git。
這次 Git 修補的 6 個漏洞
以下依 GitHub 官方公告 整理。GitHub 公告本身沒有提供 CVSS 分數,下表的 CVSS 取自美國國家漏洞資料庫(NVD)收錄的 GitLab 評分,截至撰稿時 NVD 尚未收錄 CVE-2026-111760。
| CVE | CVSS 3.1 | 影響的操作 | 問題與後果 |
|---|---|---|---|
| CVE-2026-111760 | NVD 尚未收錄 | 遞迴複製(recursive clone) | 過長的路徑在索引處理時被截斷,攻擊者可讓子模組的 .git 檔被換成符號連結,指向含惡意設定或 hook 的目錄,造成任意程式碼執行 |
| CVE-2026-113408 | 3.3 | 用 protocol v2 複製空儲存庫 | 伺服器宣告的 HEAD 指向未誕生分支時,Git 沒檢查目標路徑,使用 files 參照後端時,之後更新分支可能寫到參照目錄之外 |
| CVE-2026-114467 | 3.3 | 合併帶有簽章的標籤 | Git 假設簽章最多兩個,標籤含超過兩個簽章時,可能造成堆疊記憶體損毀與服務中斷 |
| CVE-2026-114469 | 4.4 | 套用二進位 patch | 大小檢查只看傳入的 patch 大小,壓縮後展開的資料可超過上限,造成越界讀取使 Git 當機 |
| CVE-2026-105437 | 7.5 | 大型合併 | 合併結果的記憶體大小計算可能溢位,配置過小的緩衝區後寫入超出範圍,損毀堆積記憶體 |
| CVE-2026-114466 | 4.4 | git fast-import 資料流 | rewrite-submodules-from、rewrite-submodules-to 可讀取任意檔案,export-pack-edges 可建立或附加寫入檔案;修補後除非加上 --allow-unsafe-features,否則會拒絕 |
一般開發者最該留意的是第一個:只要你會對外部儲存庫做遞迴複製,就有機會碰到。後面幾個多半發生在處理不明來源資料的自動化流程或託管服務,公告也特別提醒管理者要更新這類服務上的 Git。
Chrome 157 穩定版與 156 延伸穩定版
Chrome Releases 部落格在 11 月 11 日(美西時間)發布了幾則更新,重點如下:
| 通道 | 版本 | 平台 | 安全修補 |
|---|---|---|---|
| 穩定版(Stable) | 157.0.8103.78/.79 | Windows、Mac 為 .78/.79,Linux 為 .78 | 83 個(5 個 Critical、78 個 High) |
| 延伸穩定版(Extended Stable) | 156.0.8078.100 | Windows、Mac | 72 個(4 個 Critical、68 個 High) |
| ChromeOS LTS | LTS-150,150.0.7871.289 | 多數 ChromeOS 裝置 | 公告列出部分安全修補 |
Google 說明這些版本會在未來幾天到幾週內陸續推送。這次公告沒有註明哪個漏洞已遭實際攻擊利用。
如果想知道怎麼確認 Chrome 已更新、以及 Edge、Brave 這類 Chromium 瀏覽器的狀況,可以看我之前整理的 Chrome 零時差漏洞 CVE-2026-125350 更新:怎麼確認已修補、Edge 要不要更新,這篇就不重複。
簡單講:打開 Chrome 的「說明」、「關於 Google Chrome」,版本號達到 157.0.8103.78 以上即可,若出現「重新啟動」按鈕就按下去。使用公司管理的延伸穩定版,則看版本是否為 156.0.8078.100。
參考資料與延伸閱讀
- GitHub Blog:Git security vulnerabilities announced(2026-11-10)
- NVD:CVE-2026-105437(其餘 CVE 可在同一網站以編號查詢)
- Git 官網:下載與安裝方式
- Git for Windows 2.56.1 發行說明
- Git for Windows FAQ:如何更新
- Chrome Releases:Stable Channel Update for Desktop(2026-11-11)
- Chrome Releases:Extended Stable Update for Desktop(2026-11-11)
- Chrome Releases:Long Term Support Channel Update for ChromeOS(2026-11-11)
- iThome:Git修補6項資安漏洞,惡意儲存庫恐觸發任意程式碼執行(2026-11-12)
- iThome:Google同步更新Chrome 157穩定版、Chrome 156延伸穩定版與ChromeOS LTS版(2026-11-12)
- 站內相關文章:Chrome 零時差漏洞 CVE-2026-125350 更新:怎麼確認已修補、Edge 要不要更新
發佈留言