玩家正常打開官方遊戲啟動器,程式便從官方管道取得頁面與資源。當這條發佈路徑中的腳本被竄改,惡意程式就可能跟著日常的開遊戲動作進入電腦。這是《勝利女神:妮姬》(GODDESS OF VICTORY: NIKKE)這次 PC 啟動器事件最值得理解的地方。

官方已於 11 月 5 日補上後續說明與檢查指引。本文從官方公告與公開研究出發,整理攻擊鏈、快取造成的修復落差,以及玩家可以如何檢查裝置和處理帳號風險。

查核日期:2026 年 11 月 5 日,台灣時間。 下文將官方說法、研究者發現與本文的工程建議分別標示;本文未執行惡意樣本,也未實測官方清理功能。封面為 AI 生成概念插畫,攻擊鏈則依公開分析繪製。

官方已有後續說明,閱讀時要看公告日期

11 月 4 日的初次公告表示,PC Launcher 腳本可能遭第三方竄改,並稱已於當天約 01:30(UTC+8) 修正與更新客戶端。英文公告使用的是 02:30(UTC+9),換成台灣時間要減一小時。NIKKE:初次異常公告

到了 11 月 5 日,官方進一步說明檔案遭竄改與惡意程式執行風險,並表示目前分發的啟動器已完成安全措施與檢查、可安全使用。這是營運方對目前分發版本的說明;曾經使用舊版本的裝置,仍有另外的檢查與復原工作。NIKKE:後續措施公告、NIKKE:道歉與處理說明

官方同時發布手動安全檢查指引,將建議檢查的對象界定為:自 9 月 27 日 14:41(台灣時間)起,曾啟動 Windows PC 啟動器的玩家,並提供官方客戶端 ACE 功能與手動檢查兩種途徑。指引也明確表示,本次事件限於 PC 啟動器,僅使用手機版的玩家不需為此事件額外處置。

因此,看見「官方已更新」時,可以再確認自己接下來需要的是哪一步:取得目前版本、檢查舊裝置上的痕跡,還是處理可能曝光的帳號資料。

攻擊鏈:遠端頁面怎麼走到本機執行?

研究者 MotherSphere 指出,Level Infinite CDN 上四個 JavaScript 資產被加入載入程式,導向 insightjs[.]com,再透過啟動器原生介面下載、執行 LuaJIT 載荷。MotherSphere:原始技術報告

依這份分析,攻擊鏈可以簡化成以下關係。圖中的步驟代表已報告的程式路徑,各台裝置是否走完整條路徑,仍須檢查自身證據。

flowchart TD
    A[PC 啟動器取得官方 CDN 資產] --> B[遭竄改的 JavaScript 載入外部腳本]
    B --> C[透過啟動器原生介面下載載荷]
    C --> D[執行 LuaJIT 遠端控制代理]
    D --> E[可能存取本機檔案與帳號資料]

這裡的 JS bridge(JavaScript 與原生功能的橋接介面),可以理解為頁面向桌面程式提出操作要求的入口。桌面軟體常需要下載資產、管理檔案或啟動另一個程序,因此會讓頁面呼叫部分本機功能。

這類設計的安全重點,在於每次呼叫如何判斷來源與權限。當遠端載入的腳本被替換,原本為合法頁面提供的能力,也可能被外來程式利用。閱讀本案時,應沿著「載入了什麼程式、它能呼叫什麼介面、介面能操作哪些本機資源」追查。

報告的靜態分析指出,代理可執行命令、讀檔、截圖與取得憑證,並有 Windows Chrome DLL 的持續載入機制。這些能力與機制,不能直接換算成每位玩家實際被取走的資料清單。MotherSphere:載荷與持續載入分析

為什麼這是供應鏈問題?

軟體供應鏈包含開發者交付給使用者的整條路徑:原始碼、相依元件、建置系統、發佈權限、更新管道,以及執行時還會取得的程式資產。

在這次事件中,玩家原本信任啟動器及其官方資產來源;遭竄改的內容則沿著這條信任關係被取得與執行。從這個角度看,檢查安裝包的來源,還需要延伸到程式啟動後載入的內容。

例如,一個桌面程式可以在安裝時完全正常,啟動後卻取得新的遠端 JavaScript。如果這些腳本能呼叫高權限的本機功能,就必須和其他可執行程式一樣,受到發佈、完整性驗證與權限管理的保護。

HTTPS 能保護傳輸,但被竄改的檔案若已存在合法伺服器上,仍可能透過正常的 HTTPS 連線交付。網址屬於官方、連線有加密、實際取得的內容符合預期,這三件事需要各自驗證。

CDN 與本機快取,讓修復有不同完成時間

公開研究與交叉查核曾指出,部分 CDN 節點在來源檔案更換後仍提供舊內容;後續檢測則觀察到受檢節點已回復乾淨版本。這是特定時間、特定節點的觀察,不宜把早期的污染結果一直當成即時狀態。SpringZali:CDN 與事件證據交叉查核

要理解修復落差,可以把交付路徑拆成三層:

位置 儲存什麼 修復時要確認什麼
來源儲存與發佈系統 要交付的正式檔案 未授權寫入管道已處理,檔案符合可信任的發佈版本
CDN 邊緣節點 靠近玩家的資產副本 舊副本失效,各區域實際取得的內容一致
玩家本機快取 已下載的頁面、腳本與應用資料 舊內容不再被載入,已落地的額外程式另行處理

這個表格是一般交付流程的拆解,不代表已確認本案最初入侵了哪個內部系統。攻擊者如何取得寫入權限,仍是需要追查的根因問題。

從維運角度看,只覆寫來源檔案,無法證明玩家之後一定取得新內容。事件應變還需要處理邊緣快取失效、本機快取更新,以及客戶端如何拒絕已知有問題的版本。

同樣地,如果額外程式已經離開原本的遊戲資料夾、留下其他執行入口,更新或移除遊戲能覆蓋的範圍,就和整台主機的清理範圍不同。

玩家先做什麼:依官方指引檢查,再處理帳號

先確認手上的是官方最新流程。若需要向客服或公司資安團隊提供證據,本文建議先保留相關日誌與必要的檢查紀錄,再進行清理;個別發現應連同檔案位置與檢查時間記錄,方便後續比對。

手動檢查時,先關閉程式並保留紀錄

官方手動流程要求先斷開網路,關閉遊戲、啟動器與 Chrome,再檢查安裝目錄中的 Launcher\intl_service\debug.log,搜尋 k2f_chan registered。若需移除登錄項、DLL 與快取,請依原指引逐項核對;Chrome 的相關資料夾內也有合法檔案,不能整個刪除。NIKKE:手動檢查與移除步驟

這個字串可以作為檢查線索,但判讀仍要看它出現在哪裡,以及前後發生了什麼。研究者的文件區分了以下幾種證據:

找到的紀錄 可以支持什麼判斷 還不能直接證明什麼
與啟動器相關的外部載入痕跡 曾接觸可疑載入來源 載荷已成功下載並執行
下載要求,但結果為失敗或零位元組 嘗試取得載荷 該次下載成功
代理通道註冊、狀態或持續載入痕跡 需要按代理已載入或感染跡象處理 哪些遠端命令已執行、哪些資料已外洩
沒找到上述紀錄 在檢查到的檔案與位置中沒有命中 裝置完全未受影響

上述判讀依據為研究者的檢查規則與限制。日誌可能隨重裝而消失,搜尋位置與解析方式也會影響結果,因此檢查報告需要連同檢查範圍一起閱讀。

裝置清理之後,還有帳號與工作憑證

官方也要求玩家變更在受影響電腦使用過的帳號密碼,並撤銷、重發曾使用或儲存的 API key 與 access token;這些操作可由未受影響的另一台裝置進行。NIKKE:帳號安全建議

對同時拿電腦工作、寫程式與玩遊戲的人,本文建議把復原清單連到實際服務:電子郵件、程式碼託管、雲端平台、套件發佈與部署服務。逐項確認憑證是否曾放在這台裝置、原有憑證是否已撤銷,以及是否出現異常登入或操作紀錄。對可管理登入工作階段的服務,也一併檢查並撤銷不再信任的工作階段。

這些作業要處理的是外部系統上的存取權。即使本機惡意檔案已移除,已被複製出去、仍有效的憑證仍須另外撤銷。

掃描是復原工作的一部分

官方指引包含更新防毒軟體、完整掃描與 Windows Security 離線掃描。Microsoft 說明,Defender Offline 會在重新啟動後的 Windows 復原環境中進行掃描;執行前需先儲存工作。Microsoft:病毒與威脅防護及掃描選項

若確認載入過可執行任意命令的代理,而裝置上又有重要工作資料,本文建議請資安人員協助判斷是否需要從可信任媒體重建系統。已知檔案與登錄項的移除結果,無法完整重建攻擊者先前的操作歷史。

研究亦回報 Proton 裝置案例,因此以 Proton 或 Wine 執行 PC 版的玩家,也應檢查對應環境。MotherSphere:Proton 環境分析

對開發與維運的提醒:執行時資產也要有發佈邊界

以下是從事件推導的通用工程建議,供開發啟動器、桌面軟體與自動更新系統時參考;它們不是對 NIKKE 內部設定的推定。

將執行時載入的程式納入完整性驗證

安裝包、更新檔與遠端腳本應連到同一套可信任的發佈紀錄。資產雜湊可用來確認取得的內容是否符合預期,但雜湊值本身也需要可信任的來源;若檔案與驗證資訊都能被同一組失陷權限任意更改,驗證就失去意義。

可採用受保護的簽署資訊、不可覆寫的版本資產,以及執行前的驗證失敗處理。設計時還要定義如何撤銷已知有問題的版本,涵蓋客戶端手上的舊副本。

NIST SSDF 將保護軟體元件免於竄改、未授權存取列為一組核心實務。把遠端執行資產一起納入保護範圍,是這個原則在桌面軟體上的具體應用。NIST:Secure Software Development Framework

將頁面能力和本機權限分開設計

顯示活動公告的頁面,應只取得完成該工作需要的能力。涉及下載、寫入、啟動程序的介面,則需要更嚴格地限制呼叫來源、參數、目的地與可執行內容。

尤其要檢查不同內容是否共用同一個有權限的執行環境。遠端頁面能顯示在視窗內,並不代表其中每段程式都應具有更新器的權限。

把修復驗證寫成可觀察的結果

一次完整的修復驗證,可以留下來源檔案的可信任版本、不同區域實際取得的資產雜湊、快取失效結果,以及客戶端拒絕舊內容的測試紀錄。對使用者的說明則要包含檢查期間、受影響產品、已知痕跡、清理步驟與帳號處理方式。

這些紀錄能讓「已修復」連到具體的檢查範圍,也讓後續調查分辨發佈管道、本機殘留與外部帳號存取三個問題。

仍需要追蹤的問題

截至本文查核時,公開資料仍不足以完整回答最初寫入權限如何失守、實際感染規模,以及各裝置上哪些資料遭存取。研究中的程式能力、個別玩家回報與官方整體調查,提供的是不同層次的證據。SpringZali:證據分類與未解問題

玩家現在可以依官方最新流程完成檢查,並保留自己的處理紀錄。開發與維運團隊則可以沿著實際執行路徑盤點:程式啟動後還會信任哪些來源、取得哪些程式,以及這些內容最後能碰到哪些本機資源。