top of page

WordPress 漏洞 CVE-2026-119977 列入 CISA KEV:升級到 7.1.4 前,先封鎖 wp-content/upgrade

Miles Ma
23小时前
讀畢需時 5 分鐘

台灣很多企業的官網、活動頁、電商與部落格都使用 WordPress,通常架在 AWS、GCP、Azure 的虛擬主機或代管主機上,並開啟自動更新。WordPress 核心漏洞 CVE-2026-119977 已在 2026-11-03 被美國 CISA 列入「已知遭利用漏洞(KEV)」清單,聯邦機構的修補期限只有 3 天(2026-11-06)。


這個漏洞的特別之處在於:攻擊者鎖定的是「網站正在更新的那幾秒鐘」。換句話說,還沒修補的網站,每次執行完整的核心更新(包括自動更新),都會短暫打開攻擊空檔;而常見的 WordPress 資安外掛,對這種攻擊也可能無能為力。以下整理官方公告重點與企業可以馬上做的檢查。



漏洞重點:更新時暫存的安裝程式,可能被拿來執行程式碼


以下為官方與資安研究機構公告整理的事實(查核日期:2026-11-05)。


CVE-2026-119977 是什麼


  • 漏洞類型: 核心更新流程的競爭條件(TOCTOU)。使用完整套件更新核心時,受影響版本會把新檔案解壓到 wp-content/upgrade 底下一個可預測、可從網頁存取的目錄,裡面包含 WordPress 安裝程式(setup-config.php)。未經驗證的攻擊者若在解壓的瞬間請求這個安裝程式,就可能進一步在伺服器上執行 PHP 程式碼。

  • 嚴重程度: Wordfence 評為 CVSS 8.1(High);WordPress 官方 GitHub 公告則標示為 Low,主要因為攻擊必須「搶到時間差」。

  • 修補時間: WordPress 於 2026-10-28 發布 7.1.4 安全更新,並回溯修補到 4.7 以上所有分支。

  • CISA KEV: 2026-11-03 列入,代表 CISA 認定已有實際遭利用的證據。


修補版本對照


WordPress 分支

受影響版本

修補版本

7.1

7.1.0–7.1.3

7.1.4

7.0

7.0.0–7.0.7

7.0.8

6.9

6.9.0–6.9.10

6.9.11

6.8

6.8.0–6.8.11

6.8.12

6.0–6.7

各分支舊版

6.7.11、6.6.11、6.5.14、6.4.14、6.3.14、6.2.15、6.1.16、6.0.18

4.7–5.9

各分支舊版

最低為 4.7.39(詳見官方公告)

4.6 以前

不再提供安全更新

需升級到仍受支援的版本


官方修補方式是把暫存目錄名稱加上隨機字元、補上防止列出目錄的 index.php,並避免把暫存的設定檔帶進正式環境。7.1.4 同時修補了其他多項問題,主要是需要登入帳號的儲存型 XSS,以及未公開 Customizer 變更可被未登入者讀取等。


攻擊者已經在「守株待兔」


Wordfence 在 2026-10-28 20:30(UTC)部署防火牆規則,9 分鐘後就攔到第一筆攻擊,前 21 小時記錄超過 18,500 次針對暫存安裝程式路徑的請求。其中兩個最大的來源,對一小批網站反覆輪詢約 14.5 小時,目的就是等到網站更新的那幾秒。



為什麼外掛型防火牆擋不住


Wordfence 與 Patchstack 都指出,這個攻擊是直接請求暫存目錄裡的 PHP 檔案,不會先載入正式網站的 WordPress,因此跟著 WordPress 一起載入的防火牆外掛不會執行。Wordfence 建議用戶確認已啟用 Extended Protection(讓防火牆在 PHP 檔案被執行前先載入),並強調防火牆規則不能取代更新;Wordfence 免費版用戶要到 2026-11-27 才會收到這條規則。


Patchstack 的建議則更直接:在網頁伺服器層禁止從網頁存取 wp-content/upgrade/,並關閉目錄列表。平常這個目錄應該只有一個 index.php,封鎖它幾乎沒有副作用。



對企業的影響


以下為 WeWinCloud 的分析與建議,非官方說法。


  • 「升級」本身就是風險時段。 還停在舊版的網站,在升級到 7.1.4 的過程中仍會經歷一次攻擊空檔。比較穩妥的順序是:先在網頁伺服器或雲端 WAF 封鎖 wp-content/upgrade,再執行升級。

  • 自動更新不等於已經更新。 自動更新可能因檔案權限、磁碟空間、主機設定或被手動關閉而失敗。企業常有多個由行銷部門或外包廠商建置的 WordPress 站台,很容易漏掉。

  • 官方標示 Low,不代表可以等。 這次官方評級、Wordfence 評分與 CISA KEV 的判斷差異很大。對外網站的修補優先順序,應同時參考是否已遭利用,而不是只看單一評分。

  • 防護要放在 WordPress 之前。 這類攻擊說明了為什麼網站防護不能只靠外掛,Nginx/Apache 規則、雲端 WAF 或 CDN 邊緣規則都能在請求抵達 PHP 前先攔下。



企業 6 步驟檢查與修補


  1. 盤點所有 WordPress 站台: 包含官網、活動頁、子網域、測試站與外包廠商代管的網站,記下版本與主機位置。

  2. 確認版本: 到「控制台 → 更新」確認已是 7.1.4,或所屬分支的修補版本;4.6 以前的版本需規劃升級。

  3. 先封鎖升級暫存目錄: 在網頁伺服器設定拒絕存取 wp-content/upgrade/(例如 Nginx 對該路徑 deny all,Apache 在該目錄設定 Require all denied),或在 AWS WAF、Cloudflare 等雲端 WAF 加上路徑封鎖規則,並確認關閉目錄列表。

  4. 再執行升級: 盡量安排在維護時段手動升級並確認結果,不要只等待自動更新。

  5. 使用資安外掛者,確認防護設定: 例如 Wordfence 確認已啟用 Extended Protection;但仍以完成更新為主。

  6. 檢查是否有入侵跡象: 回頭檢查存取日誌中對 wp-content/upgrade 底下 PHP 檔案的請求、陌生的管理員帳號、未知外掛,以及不是你們放上去的 PHP 檔案。曾有可疑紀錄的站台,應更換管理員密碼與資料庫帳密,並請資安人員進一步調查。


情境

建議優先順序

版本未修補、對外公開的官網或電商

立即封鎖 wp-content/upgrade,再升級並檢查日誌

已自動更新到修補版本

確認版本與目錄設定,保留封鎖規則作為縱深防禦

外包廠商代管的站台

要求廠商提供版本與更新紀錄,確認已修補

4.6 以前或已停止維護的舊站

評估升級或下線,暫時以 WAF 限制存取



常見問題 FAQ


網站已開啟自動更新,還需要處理嗎?


需要確認。Wordfence 建議實際到控制台檢查版本,而不是假設更新已完成。自動更新失敗或被關閉的情況並不少見。


安裝了 WordPress 資安外掛,就能擋下這個攻擊嗎?


不一定。攻擊直接請求暫存目錄裡的 PHP 檔案,不會載入正式網站的外掛。建議在網頁伺服器或 WAF 層封鎖 wp-content/upgrade,並盡快更新。


封鎖 wp-content/upgrade 會影響網站更新嗎?


依 Patchstack 說明,這個目錄在兩次更新之間只會有一個 index.php。更新是由伺服器端的 PHP 直接處理檔案,一般不需要從網頁存取這個目錄,因此封鎖的副作用很小;實際設定前仍建議先在測試環境確認。



WeWinCloud 能提供什麼協助


WeWinCloud 提供資安防護服務,包括 WAF 網站防火牆、DDoS 防護、EDR/MDR 端點防護,以及資安顧問與弱點評估;也提供架構規劃與上雲服務,協助檢視 WordPress 這類對外網站的主機架構、存取控制與備援設計。


如果你不確定公司有多少個 WordPress 站台、版本是否已修補,或想在雲端 WAF 加上防護規則,可以先和我們聊聊目前的環境。



需要協助盤點 WordPress 網站與 WAF 防護?👉 與我們聯繫,或查看資安防護服務。



延伸閱讀



參考資料

留言


bottom of page