名詞解釋

什麼是 IOC(入侵指標):顯示入侵已經發生的痕跡

IOC(Indicator of Compromise/入侵指標)是已經發生的入侵所留下的「痕跡」——可疑檔案的雜湊、通訊對端的 IP 或網域、異常程序等。本文從防禦視角講解它的含義與種類、與紀錄比對的用法,以及「痕跡很容易被事後更換」這一侷限。

發布於 2026-06-11 更新於 2026-10-06 閱讀時間 3 分鐘
本頁內容

IOC(入侵指標)是用來判斷自己是否已被入侵的線索。本文從防禦視角講解它的含義與種類、用法,以及不可過度依賴的理由(不涉及攻擊手法)。

IOC 的主要種類

按「痕跡留在哪裡」大致分為 4 類。

網路
通訊對端的 IP・網域・URL
檔案
惡意軟體的雜湊・檔名
主機
異常程序・登錄檔變更
行為
深夜大量外發・可疑登入
種類例子在哪裡比對
網路類攻擊者伺服器的 IP/網域、C2 的 URL防火牆/代理/DNS 紀錄
檔案類惡意軟體的 SHA-256 雜湊、特徵性檔名EDR/防毒軟體/檔案清單
主機類可疑的登錄檔機碼、陌生的常駐程序作業系統紀錄・程序清單
行為類與平時不同的時間/國家的登入、突發的大量通訊認證紀錄・通訊量監控

IOC 與 IOA — 「痕跡」與「行為」

常被拿來對比的是 IOA(Indicator of Attack=攻擊指標)。理解了二者的區別,就能看清 IOC 的長處與短處。

IOC(入侵指標)=結果的痕跡

  • 已經發生之事的證據(雜湊・IP 等)
  • 能對已知惡意機械地命中=快
  • 但攻擊者可以輕易更換(用完即棄)
  • 本質上是事後追溯

IOA(攻擊指標)=進行中的行為

  • 「權限提升→橫向移動→對外傳送」等手法的流程
  • 能在接近即時的階段察覺
  • 比痕跡更難更換(因為它是攻擊的本質)
  • 需要理解其機理,因此落地較重

對攻擊者而言的「更換難易度」(痛苦金字塔)

同樣是 IOC,攻擊者更換它的成本(=我們卡住它時的效果)也天差地別。越往下越容易更換,越往上越難更換。

手法・TTP(最難更換=最有效)
工具
網域
IP 位址・檔案雜湊(一瞬間就能更換)
下=攻擊者一瞬間就能更換(效果薄)。上=更換起來很費勁(效果強)。

也就是說,雜湊和 IP 的比對見效快,但代價是很快就會過時。越是連手法(對方會怎麼打過來)都理解到位地去防備,防禦就越能持久。

小團隊也能做的 IOC 用法

即使沒有專門的 EDR 或威脅情資訂閱,現實中也有可以做的事。

1

從可信來源取得 IOC

使用官方的入侵揭露、當局或 CSIRT 的預警、廠商的調查報告所發布的 IOC。來路不明的清單不要用。
2

與自己的紀錄・相依套件比對

把拿到的 IP/網域/雜湊與存取紀錄、DNS 紀錄、相依套件逐一對照,確認有無命中(例如:供應鏈事故被揭露時,確認自己是否在用同一個被汙染的版本)。
3

一旦命中就隔離並調查

把相關終端/金鑰/權杖切離,確認影響範圍。按照備份與復原的步驟還原。網站或伺服器的情況,也請參考 如何確認是否遭入侵,以及首先要做的事。
4

記錄自己環境的 IOC 並排查其他終端

把這次發現的痕跡記下來,擴大到其他終端、其他服務,排查是否存在相同的痕跡。

實際案例:什麼成了比對的線索

IOC 不只是 IP 位址與雜湊。在本站介紹過的供應鏈案例中,套件的「版本」本身就是最先要確認的東西。

案例線索使用者確認了什麼
XZ Utils(2024)含有惡意程式碼的版本(5.6.0 與 5.6.1)自己的作業系統或容器中是否有這些版本。美國 CISA 建議降版到 5.4.6 等未受汙染的版本
Codecov(2021)散布的指令碼雜湊(SHA-256)與官方值不符竄改是因為有一家公司做了這項檢查才被發現。使用者確認了自己在 CI 中執行它多久、它能觸及哪些機密
Trivy(2026,英文)遭惡意發布的版本(v0.69.4 等)與公布的檢查項目CI 在該期間是否使用了這些版本或標籤。若有,就輪替所有認證資訊

三起案例中,線索都由受害方或當局公布,比對則由使用者自己進行。官方公告一出來,先確認自己的環境中是否有相同的版本或雜湊。這就是使用 IOC 的基本方式。

IOC 有保存期限

IETF 關於處理 IOC 的文件 RFC 9424(2023)描述了 IOC 從發現、評估、共享、部署、偵測、因應到終止的管理流程。之所以有最後一個階段,是因為 IOC 會過時。

  • 攻擊者棄用的 IP 位址與網域,之後可能被正當的服務重新使用。依舊清單封鎖,可能擋到正常流量
  • 只要改動一個位元組,雜湊就會不同,所以同一攻擊的新建置版本不會命中
  • 因此要記錄每個 IOC 的日期與來源,並定期重新檢視

如何在自己的環境中比對 IOC

即使沒有專門的產品,也能自己比對三類公布的 IOC:版本、雜湊與網域。

  1. 版本:把 lockfile 貼到相依套件漏洞掃描器,看是否含有已知的惡意或有漏洞的版本。作業系統的套件,請用各自的命令確認版本,例如 xz --version
  2. 雜湊:用 sha256sum 檔案(Windows 為 certutil -hashfile 檔案 SHA256)計算下載檔案的值,與官方值或公布的 IOC 比對
  3. 網域與 IP:在 DNS 紀錄與 Web 伺服器存取紀錄中搜尋公布的網域或 IP。沒有紀錄的期間無法確認,所以也要確認紀錄的保存期間

一旦命中,就切離相關的裝置、金鑰或權杖,並進入上面的步驟 3。

本站的觀點:IOC 用於事後確認入侵,首要目標是防止入侵

IOC 比對很重要,但它是在入侵發生之後確認痕跡的工作。等到能找到痕跡時,早就已經被入侵了。所以本站把 IOC 比對作為排查工具保留在手,而把重心放在防止入侵的設計上:最小權限・迅速打修補程式(CVE 監控)・抗釣魚 MFA・不要把機密以明文存放。依賴事後痕跡比對的防禦,永遠會慢半拍。用痕跡察覺入侵的能力,和防止入侵的能力,兩者都需要。

出處(一手資料)

  • IETF RFC 9424, "Indicators of Compromise (IoCs) and Their Role in Attack Defence"(2023 年 8 月)— rfc-editor.org(IoC 的定義、痛苦金字塔、IoC 的生命週期與終止)
  • 美國 CISA, "Reported Supply Chain Compromise Affecting XZ Utils Data Compression Library, CVE-2024-3094"(2024 年 3 月 29 日)— cisa.gov(受影響版本與建議措施)
  • Codecov 與 Trivy 的出處列在各案例的解說中

接下來閱讀

FAQ

QIOC 是什麼?
A

它是 Indicator of Compromise(入侵指標)的縮寫,指已經發生的入侵所留下的「痕跡」。具體來說,是指可疑檔案的雜湊值、攻擊者的通訊對端 IP 位址或網域、惡意 URL、異常的程序或登錄檔變更等。把這些作為一份已知惡意清單保留下來,再與自己的紀錄和終端比對,用來發現『是否有被入侵的跡象』。

QIOC 和 CVE 有什麼區別?
A

CVE 是『哪裡有漏洞(漏洞的識別碼)』,IOC 是『是否有被入侵的痕跡(攻擊的證據)』,二者是兩回事。CVE 是打修補程式的對象,IOC 是用來確認『是否已經被入侵』的比對材料。按順序來說,先依 CVE 修補漏洞,再用 IOC 檢查是否已被入侵。

Q只看 IOC 就能守住嗎?
A

守不住。IOC 本質上是「事後追溯」,攻擊者可以輕易地把檔案雜湊或 IP 用完即棄、隨意更換。IOC 比對在『是否命中已知惡意』的最終確認上有效,但主要的防禦是不易被入侵的設計(最小權限・及時打修補程式・抗釣魚 MFA),以及對比痕跡更難更換的「行為」的監控。

QIOC 和 IOA 有什麼不同?
A

IOC(入侵指標)是已經發生的入侵所留下的痕跡,例如檔案雜湊、通訊對端的 IP 或網域。IOA(攻擊指標)是進行中攻擊的行為,例如從權限提升到對外傳送資料的一連串流程。IOC 可以機械且快速地比對,但攻擊者容易更換;IOA 較難更換,但需要更多理解與監控的工夫。

QIOC 有哪些例子?
A

惡意軟體的 SHA-256 雜湊、攻擊者使用的通訊對端 IP 位址與網域、惡意 URL、可疑的檔名或登錄檔機碼,以及遭汙染的套件版本。例如在 XZ Utils 事件(2024)中,含有惡意程式碼的版本(5.6.0 與 5.6.1)就是使用者需要確認的第一個線索。

QIOC 要從哪裡取得?
A

主要來源是遭入侵的公司或專案的官方公告、美國 CISA 與 JPCERT/CC 等當局或 CSIRT 的預警,以及資安廠商的調查報告。不要使用來路不明的清單,其中可能含有錯誤的值而擋到正常流量。記錄取得日期與來源,並隨著時間經過重新檢視 IOC。