PHP2Shell 打進歐洲政府機構:AI 協助攻擊、北韓掃描、兩小時內竊密
Palo Alto Networks Unit 42 揭露歐洲政府機構在 PHP2Shell 漏洞利用後兩小時內遭竊取密碼雜湊與 MFA 密鑰,並建立 NTLM relay 通道嘗試提權為 Domain Admin。攻擊者使用的指令與輸出格式顯示「agentic AI」特徵。CYFIRMA 另揭露疑似北韓 Lazarus 組織透過 21 個被入侵節點對全球 216 台未修補主機進行低流量、輪替式掃描,目標涵蓋政府、金融、機場與線上交易平台。
- Palo Alto Networks Unit 42 於 2026 年 10 月 25 日揭露:威脅行為者利用 PHP2Shell(CVE-2026-109618/109619)攻擊歐洲政府機構,從初始利用到竊取密碼雜湊與 MFA 密鑰只花兩小時,並建立 NTLM relay 通道進 Active Directory 嘗試提權為 Domain Admin。攻擊者使用的指令被包在「==SHELLUSER==」與「==PASSWD==」等分隔符號中,Unit 42 判斷這是「agentic AI」(代理式 AI)的行為標記,用來產生機器可解析的輸出供 AI 模型讀取。
- CYFIRMA 揭露疑似北韓 Lazarus 組織透過 21 個被入侵節點,對全球 216 台未修補或僅部分緩解的主機進行低流量、輪替式掃描。目標分布於美國、日本、南韓、泰國、印尼、澳洲、台灣、印度、新加坡、阿聯、沙烏地與歐盟,涵蓋政府、金融機構、物流、機場航空、製造業與線上交易平台。行動透過封閉的 I2P 頻道協調,使用北韓方言(문화어)與 Lazarus 過去使用的 C2 基礎設施。
- ReliaQuest 在實驗室重現 CVE-2026-109618,識別出可協助防守方偵測利用的日誌序列:POST 請求回 500 錯誤、PHP 回報記憶體耗盡與 heap corruption、處理該請求的 Apache worker 崩潰。Cloudflare 表示公開揭露後偵測到數百萬次利用嘗試。Bitsight 掃描顯示全球約 3,700 萬個面向網際網路的系統跑 PHP 或相關軟體,主要曝險在美國、德國、法國、荷蘭與日本。
發生了什麼
PHP2Shell 漏洞修補釋出後,全球掃描與利用立即開始。本站已在 2026-10-21 的拆解 與 2026-10-25 數發部長貼文拆解 中整理過修補前外洩與修補釋出的時間軸。這篇聚焦在「修補之後,攻擊者做了什麼」。
2026 年 10 月 25 日,Palo Alto Networks Unit 42 與威脅情報公司 CYFIRMA 分別揭露兩起進行中的 PHP2Shell 野外利用行動:
-
歐洲政府機構被入侵(國家未公開):攻擊者在初始利用後兩小時內竊取密碼雜湊與多因素驗證(MFA)密鑰,建立 NTLM relay 通道進 Active Directory,嘗試提權為 Domain Admin。攻擊者使用的指令與輸出格式顯示「agentic AI」(代理式 AI)特徵。
-
疑似北韓 Lazarus 組織全球掃描行動:透過 21 個被入侵節點對全球 216 台未修補或僅部分緩解的主機進行低流量、輪替式掃描。目標涵蓋美國、日本、南韓、台灣等 12 個國家/地區的政府、金融機構、機場、線上交易平台。行動透過封閉的 I2P 頻道協調,使用北韓方言(문화어, Munhwaŏ)溝通。
來源:本文整理自 The Hacker News 於 2026 年 10 月 25 日發布的報導,原始情報來自 Palo Alto Networks Unit 42、CYFIRMA、Defused Cyber 與 ReliaQuest。原文連結
歐洲政府機構:兩小時內從 RCE 到 Domain Admin 嘗試
Unit 42 揭露的案例時間軸很緊湊:
初始利用 → 利用 PHP2Shell 取得遠端程式碼執行
↓ 兩小時內
竊取認證資料 → 存取密碼雜湊與 MFA 密鑰
建立 NTLM relay 通道 → 進入 Active Directory
嘗試提權 → 目標:Domain Admin
AI 協助攻擊的行為標記
Unit 42 觀察到攻擊者對被入侵端點的列舉行為,指令與行為標記顯示這是「agentic attacker」(代理式攻擊者)的工作。
攻擊者執行的指令包括:
- 偵察認證資料庫:使用竊取的憑證,針對密碼雜湊與雙因素驗證(2FA)密鑰
- Active Directory 偵察:透過 curl-based 匿名 LDAP 查詢到 domain controller(DC),尋找管理員帳號
- 主機偵察:搜尋 DNS/AD 整合、內部主機、特權群組與互動式使用者
關鍵的 AI 標記在指令輸出的格式:
「每批指令都被包在 section header 分隔符號中,例如
==SHELLUSER==與==PASSWD==。這些分隔符號產生的是機器可解析的輸出,供 AI 模型讀取。」
這不是人類攻擊者手工複製貼上的格式。這是設計給程式解析的——而 Unit 42 判斷,這個程式是 AI 模型。
疑似北韓 Lazarus 組織:21 節點掃描 216 目標
CYFIRMA 揭露的是一場「低調但精準」的掃描行動:
- 掃描來源:21 個被入侵節點(作為跳板)
- 目標數量:216 台未修補或僅部分緩解的主機
- 目標分布:美國、日本、南韓、泰國、印尼、澳洲、台灣、印度、新加坡、阿聯、沙烏地、歐盟
- 目標產業:政府、金融機構、物流、機場與航空、製造業、線上交易平台
低流量、輪替式掃描
CYFIRMA CEO Kumar Ritesh 向 The Hacker News 強調:
「掃描是刻意的低流量與節奏化。節點被輪替使用,一旦被阻擋或觸發速率限制就立即放棄,所以基於閾值的告警不太可能抓到它。」
這不是大規模的「全網掃描」,而是針對篩選過的目標清單進行試探。CYFIRMA 判斷行動已從「偵察」進入「主動低速掃描」階段。
北韓歸因
CYFIRMA 以「moderate confidence」(中等信心)將行動歸因於北韓 Lazarus Group 生態系統中的韓語操作者。歸因依據:
- 封閉的 I2P 頻道協調:兩個活躍帳號(전창혁 2 aka Jeon Chang-hyuk 2、최아린 aka Choi A-rin)曾被觀察到為威脅行為者執行秘密行動。
- 北韓方言:對話使用的詞彙與拼寫是北韓標準(문화어, Munhwaŏ),而非南韓標準。
- C2 基礎設施重疊:Lazarus 過去曾用於利用網頁資產的指揮控制基礎設施。
- 攻擊模式一致:Lazarus 過去記錄顯示入侵 PHP 與 WordPress 伺服器作為 C2、植入 PHP 與 ASP web shell(例如 SyncHole watering hole 行動)。
- 目標優先序:政府機構與銀行,特別是線上交易平台,符合 Lazarus 入侵金融機構進行金融與加密貨幣竊盜的歷史。
下一步:利用
CYFIRMA 引述 I2P 頻道的對話:
「利用是下一步。操作者說他們會在同一天篩選出最有潛力的目標,然後選擇要改造哪個公開 exploit。」
這代表 216 台目標已經完成掃描與評估,接下來是從公開的 exploit 程式碼中選擇工具、改造、並實際利用。
其他觀測:Palo Alto GlobalProtect 蜜罐也被掃描
威脅情報公司 Defused Cyber 於 2026 年 10 月 25 日在 X 發文,表示其 Palo Alto Networks GlobalProtect 蜜罐也被 PHP2Shell 掃描。
掃描來源:204.76.203[.]7,已知的大規模 exploit IP。
特徵:請求帶有 PHP_SESSION_UPLOAD_PROGRESS 標記(p2s-rider)與一個無 payload 的虛擬檔案上傳,用來檢查目標是否有易受攻擊的 upload-progress 行為。Defused Cyber 判斷攻擊者在建立 Palo Alto 裝置的目標清單。
如何偵測 PHP2Shell 利用
ReliaQuest 於 2026 年 10 月 22 日發布更新,表示在受控實驗室中重現了 CVE-2026-109618,並識別出可協助防守方偵測利用的「特定日誌序列」。
三個日誌事件要一起看:
- POST 請求回傳 500 錯誤(Apache access log)
- PHP 回報記憶體耗盡與 heap corruption(PHP error log)
- 處理該請求的 Apache worker 崩潰(Apache error log、system log)
這個序列不是「確認利用成功」,而是「確認有利用嘗試」。防守方看到這三個事件連續出現,就要檢查之後是否有異常的檔案存取、程序啟動、網路連線。
CVE-2026-115560:第三個 RCE(低風險)
PHP Foundation 警告第三個遠端程式碼執行漏洞 CVE-2026-115560,但只在「不尋常的組態與應用程式碼組合」下才會發生。預計在常規釋出週期中修補。
觸發條件:
- 應用程式在組態中設定
session.serialize_handler為php_binary或php_serialize - 然後在執行時用
ini_set()切換回php - 之後才呼叫
session_start() - 同時 session upload progress 仍啟用
Foundation 強調:從不在執行時變更 serialize handler 的應用程式可以保持功能啟用。這個漏洞的風險遠低於 CVE-2026-109618/109619。
全球曝險規模
Bitsight 的網際網路掃描顯示:全球約 3,700 萬個面向網際網路的系統跑 PHP 或 PHP 相關軟體。
主要曝險地區:美國、德國、法國、荷蘭、日本。
Bitsight 強調:
「PHP 跑著網路上很大一部分,從內容管理系統、線上商店到客製化內部工具。執行環境的漏洞無法透過修改應用程式碼修復,WAF 或外掛更新也無法移除它。只有更新主機上的 PHP 本身才能關閉缺口。」
Cloudflare 表示公開揭露後偵測到「數百萬次」利用嘗試。
攻擊者的利用技術細節
Datadog 發布技術分析,說明攻擊者如何利用 CVE-2026-109618(記憶體不足時的 RCE):
「攻擊者面對兩個主要限制:他們必須精確調整請求大小,讓記憶體配置在正確時機失敗,並且必須擊敗 ASLR 才能找到有效的記憶體位址。」
「Exploit 需要一個欄位名稱:小到能塞進被接受的請求主體,但大到複製其 key 時會超過 memory_limit。」
「當 PHP 解析 form-field 名稱時,途中會產生數個副本。攻擊者利用這個額外記憶體,在 PHP 將名稱複製進 hash table 時強制觸發記憶體配置失敗。」
這是技術層面的說明,但對防守方來說,關鍵仍是「更新到修補版本」。
如何避免
今天能做的事
-
更新到修補版本:8.5.12、8.4.27、8.3.36、8.2.35。8.1 以下無官方修補。
-
檢查日誌序列:POST 回 500 + PHP 記憶體耗盡 + worker 崩潰。若有,檢查後續是否有密碼檔被讀、LDAP 查詢、NTLM relay。
-
若已被入侵,立即撤銷所有認證資料:
- 強制重設所有使用者密碼(密碼雜湊已被竊取)
- 輪替所有 MFA 密鑰
- 檢查 Active Directory 權限變更(是否有帳號被加進 Domain Admins)
- 隔離並重建受影響主機
-
檢視來源 IP 與已知掃描節點:CYFIRMA 提到 21 個被入侵節點但未公開清單;Defused Cyber 提到 204.76.203[.]7。檢查你的日誌是否有來自這些 IP 的連線。
-
檢查是否有 PHP2Shell 掃描工具:Xint 已釋出掃描器,可檢查主機是否暴露於 PHP2Shell。
閾值告警無法抓到低流量掃描
CYFIRMA 強調:疑似北韓行動的掃描「節點被輪替使用、一旦被阻擋或觸發速率限制就立即放棄」,所以基於閾值的告警不太可能抓到。
防守方需要改用其他偵測方法:
- 關注「日誌序列」(POST 500 + 記憶體耗盡 + worker 崩潰)而非單一事件
- 監控異常的後續行為(密碼檔讀取、LDAP 查詢、NTLM relay)
- 追蹤已知攻擊 IP(但攻擊者會輪替節點)
你可以學到什麼
站在攻擊者的角度:修補釋出當天就開始掃描,歐洲政府機構兩小時內被打穿、密碼與 MFA 被偷、NTLM relay 通道建立。北韓那邊用低流量、輪替節點的掃描策略,不會觸發閾值告警。指令輸出被包在 ==SHELLUSER== 這種分隔符號裡,那不是手工複製貼上,那是 AI 模型在讀取。
- 01從 RCE 到 Domain Admin 嘗試可以在兩小時內完成:政府機構案例顯示攻擊者利用 PHP2Shell 後立即進行密碼雜湊與 MFA 竊取、建立 NTLM relay 通道、嘗提權,這是自動化與高度熟練的攻擊鏈。
- 02AI 協助攻擊的標記是輸出格式:指令被包在 ==SHELLUSER== 與 ==PASSWD== 分隔符號中,產生機器可解析的輸出供 AI 模型讀取。這不是傳統自動化腳本的風格。
- 03低流量、輪替式掃描能繞過閾值告警:疑似北韓行動每個節點只發少量請求,一旦被阻擋就換節點,讓基於流量閾值的 IDS/IPS 難以偵測。
- 04日誌序列比單一事件更有價值:POST 500 + PHP 記憶體耗盡 + worker 崩潰這三個連續出現,是 PHP2Shell 利用嘗試的強指標。
- 05密碼雜湊與 MFA 密鑰都要立即輪替:被打穿後兩小時內這兩樣都被偷走,代表所有使用者密碼與 MFA 都要視為已外洩。
- 06北韓 APT 持續鎖定金融與政府:Lazarus 過去記錄顯示持續入侵金融機構進行加密貨幣竊盜,這次 216 台目標中優先序是政府與線上交易平台。
- 07PHP 執行環境的漏洞無法從應用層修補:Bitsight 強調 WAF 或外掛更新無法移除執行環境的漏洞,只有更新主機上的 PHP 本身才能關閉缺口。
- 01PHP2ShellCVE-2026-109618 與 CVE-2026-109619 的統稱,PHP 核心的未驗證 RCE 漏洞。
- 02agentic AI(代理式 AI)Unit 42 判斷攻擊者使用 AI 模型協助攻擊,證據是指令輸出被包在機器可解析的分隔符號(==SHELLUSER==)中。
- 03NTLM relay攻擊者建立的通道,利用 NTLM 認證機制繞過密碼驗證、進入 Active Directory。
- 04Domain AdminActive Directory 最高權限角色,攻擊者嘗試提權的目標。
- 05Lazarus Group北韓 APT 組織,CYFIRMA 以中等信心歸因本次掃描行動。
- 06I2P 頻道匿名通訊網路,報導顯示攻擊者透過封閉 I2P 頻道協調行動並分享目標清單。
- 07북한 문화어(北韓方言)I2P 頻道對話使用的語言變體,CYFIRMA 用來支持北韓歸因。
- 08低流量、輪替式掃描攻擊者策略:每個節點只發少量請求,一旦被阻擋就換節點,繞過閾值告警。
- 09日誌序列偵測ReliaQuest 建議:POST 500 + PHP 記憶體耗盡 + worker 崩潰這三個連續出現是 PHP2Shell 利用嘗試的強指標。
- 10CVE-2026-115560第三個 PHP RCE 漏洞,但只在執行時變更 session.serialize_handler 的罕見情境下觸發。
全部唯讀,不改任何設定;做完你會知道自己有沒有同樣的破口。
- 檢視 PHP 錯誤日誌、Apache access/error 日誌,搜尋日誌序列
grep -E '(500|memory|heap|worker)' /var/log/php*.log /var/log/apache2/*.log /var/log/httpd/*.log | less看到什麼代表什麼:若看到 POST 回 500、PHP 回報 memory exhaustion 與 heap corruption、Apache worker 崩潰這三個連續出現,代表 PHP2Shell 利用嘗試。記下時間,檢查之後是否有異常行為。 - 確認 PHP 版本是否已更新到修補版本
php -v && dpkg -l | grep php && rpm -qa | grep php看到什麼代表什麼:修補版本:8.5.12、8.4.27、8.3.36、8.2.35。若未更新,現在就更新。8.1 以下無官方修補,要升級或下線。 - 檢查最近是否有密碼檔被讀取(/etc/shadow、/etc/passwd)
ausearch -f /etc/shadow -f /etc/passwd -ts recent || grep -E '(shadow|passwd)' /var/log/auth.log /var/log/secure看到什麼代表什麼:若有 web 程序(php-fpm、apache2、httpd)讀取這些檔案的記錄,且時間在上述日誌序列之後,代表可能已被利用。 - 檢查是否有異常的 LDAP 查詢到 Domain Controller
grep -i ldap /var/log/syslog /var/log/messages | tail -50看到什麼代表什麼:若看到 curl 或 web 程序發起的 LDAP 查詢、目標是 domain controller、查詢管理員帳號,代表攻擊者在進行 AD 偵察。 - 檢查是否有來自已知攻擊 IP 的連線(204.76.203[.]7)
grep '204\.76\.203\.7' /var/log/apache2/access.log /var/log/httpd/access_log /var/log/nginx/access.log看到什麼代表什麼:若有,檢查該請求的 user-agent、URL 路徑、是否帶 PHP_SESSION_UPLOAD_PROGRESS 標記。 - 若發現利用跡象,檢查 Active Directory 權限變更
# 在 Domain Controller 上: Get-ADGroup 'Domain Admins' -Properties Members | Select-Object -ExpandProperty Members看到什麼代表什麼:若有非預期的帳號被加進 Domain Admins 或其他特權群組,立即調查該帳號的活動並撤銷權限。 - 若確認已被入侵,準備撤銷所有密碼雜湊與 MFA 密鑰看到什麼代表什麼:歐洲政府機構案例顯示密碼雜湊與 MFA 密鑰在兩小時內被竊取。若你的主機在日誌序列出現後還繼續運行,要把所有使用者密碼與 MFA 視為已外洩,強制重設。
台灣也在目標清單上
CYFIRMA 揭露的 216 台目標清單中,台灣明確列在其中。目標產業涵蓋政府、金融機構、機場與線上交易平台。
若你的組織在這些產業,今天就檢查 PHP 版本、檢視日誌、確認是否有上述日誌序列或異常行為。疑似北韓行動的掃描是低流量、輪替式,閾值告警可能抓不到,要靠日誌序列與後續行為偵測。
修補釋出後兩小時內歐洲政府機構就被打穿,這不是演習。
來源
- The Hacker News 報導(2026-10-25)
- Palo Alto Networks Unit 42:PHP2Shell 政府機構案例(經 The Hacker News 引述)
- CYFIRMA:疑似北韓 Lazarus 組織 PHP2Shell 掃描行動(經 The Hacker News 引述)
- Defused Cyber:PHP2Shell 掃描 Palo Alto GlobalProtect 蜜罐(X 貼文,2026-10-25)
- ReliaQuest:PHP2Shell 實驗室重現與偵測序列(2026-10-22)
- 本站拆解:PHP 核心兩個 RCE 在修補前外洩(2026-10-21)
- 本站拆解:數發部長的「資安颱風」貼文(2026-10-25)
每篇新文章一封:三點摘要、關鍵字定義、今天能做的一件事。
延伸閱讀
PHP2Shell 結合 Linux 提權打穿 25 台伺服器:AI 協助攻擊、3 台美國政府機構主機被 root
以色列資安公司 Dream 揭露疑似中國行為者利用 PHP2Shell(CVE-2026-109618/109619)結合 Linux kernel 提權漏洞 Fragnesia(CVE-2026-46300),在美國、日本、台灣、南韓 root 25 台伺服器,包括 3 台美國政府關聯環境主機。攻擊者使用 Anthropic Claude Code、FOFA、aiscan 等 AI 工具輔助 exploit 開發與自動化攻擊,已建立持久 SSH 隧道進入內部網路並嘗試 Active Directory 權限提升。
CISA 將 PHP2Shell 漏洞列入主動攻擊清單:蜜罐已被成功 RCE,影響 3250 萬台伺服器
美國 CISA 確認 PHP 的兩個未經身分驗證遠端程式碼執行漏洞(CVE-2026-109618 與 CVE-2026-109619)已遭主動攻擊,Perplexity 的蜜罐系統在 2026 年 10 月 24 日偵測到成功的 RCE 攻擊。Censys 統計全球仍有超過 3250 萬台 PHP 服務執行受影響版本,PHP 基金會已在 10 月 21 日發布修補版本。
PHP 核心兩個 RCE 在修補前外洩,六成對外主機沒有官方修補版可裝
PHP 官方 10 月 21 日釋出 8.5.12、8.4.27、8.3.36、8.2.35,修補兩個 CVSS v4.0 9.2、不需登入就能遠端執行程式碼的漏洞。編號與「RCE」先在禁運期結束前外洩,官方隔天才正式確認;資安公司也回報修補釋出前後已有野外攻擊。真正麻煩的是另一個數字:依 Shodan 統計,回報版本的對外 PHP 主機有 59% 跑 8.1 以下,沒有官方修補版可裝。(2026-10-22 更新)