
本文將介紹第二個 OT PLC 網路安全工作坊案例研究:鐵路感測器-訊號狀態監控 HMI 上的 ARP 欺騙攻擊。本案例研究將全面涵蓋攻擊戰術、技術和程序 (TTPs),並將在列車營運總部的 OT 人機介面 (HMI) 上進行實際演示。如果您對其他案例研究感興趣,請參考以下連結:
- 錯誤資料/指令注入攻擊
- OT 網路 ARP 欺騙攻擊
- Modbus 通道上的 DDoS 攻擊
- Modbus 通訊中的中間人攻擊
專案設計目的:本案例研究的目標是開發一個工作坊,利用鐵路(捷運)IT/OT 系統網路安全測試平台(迷你網路靶場)、紅隊指揮與控制 (C2) 系統以及 Ettercap Wrapper,以演示 OT 系統上的 ARP 欺騙攻擊。我們的目標是展示駭客(網路靶場紅隊成員)如何潛在地對 OT 系統人機介面 (HMI) 發動 ARP 欺騙攻擊,導致營運總部部分服務離線。此特定攻擊情境被提議作為 Cross Sword 2023 測試運行的一個演示案例,提供一個真實且受控的環境來評估鐵路基礎設施的網路安全韌性。
攻擊向量:ARP Spoofing、Network Traffic Blocking、DoS
匹配的 MITRE-CWE:CWE-284、CWE-494、CWE-300、CWE-937
映射的 MITRE-ATT&CK-TTP:T1562.001、T1573.002、T1499.002
Important : The demonstrated attack case is used for education and training for different level of IT-OT cyber security ICS course, please don't apply it on any real world system.
# 作者: Yuancheng Liu
# 版本: v0.1.3
# 建立日期: 2023/07/12
# 版權所有: Copyright (c) 2023 LiuYuancheng
# 授權: MIT License
引言
本攻擊案例研究包含三個子專案:
在本案例研究中,我們設想一個情境:紅隊攻擊者/駭客透過 IT 網路攻擊(例如利用網路釣魚電子郵件)成功地將 Packet Dropper(MITM 工具 Ettercap 的包裝程式)植入 SCADA 監控網路中的一台維護電腦。本攻擊案例研究將闡述紅隊攻擊者(位於鐵路迷你網路靶場外部)如何執行 Ettercap,向一台總部營運 HMI 電腦及相關 PLC 廣播偽造的 ARP,然後應用 Modbus-TCP 封包過濾器,丟棄兩種特定通訊資料(HMI 到 PLC 請求 + PLC 到 HMI 回應),導致營運室中的一個鐵路感測器-訊號 HMI 離線。這將透過從網際網路利用紅隊 C2 系統並成功繞過防火牆的偵測機制來實現。
詳細攻擊路線圖如下所示:

攻擊的關鍵戰術、技術和程序 (TTP)
根據詳細攻擊路線圖,ARP 欺騙攻擊情境中將包含 4 種 TTP:
遠端攻擊控制
-
戰術:集中式程式控制
-
技術:使用紅隊指揮與控制 (RTC2) 系統,使攻擊者能夠管理和控制受損的系統/節點/設備。
-
程序:紅隊攻擊者將透過 RTC2 的 web-UI/http-API 遠端控制惡意行動程式,攻擊控制可以來自網際網路上的任何位置。
偽裝通訊
-
戰術:流量加密與混淆
-
技術:使用加密演算法保護 RTC2 控制訊息,並採用混淆方法使加密資料更難以被解讀。
-
程序:為偽裝通訊,惡意行動程式與指揮與控制 (C2) 系統之間的所有互動都將偽裝成標準的 HTTPS POST 請求和回應,關鍵控制訊息將透過預設的會話金鑰加密。值得注意的是,封包大小將保持最小(小於 1KB),以防止觸發防火牆與下載/上傳活動相關的警報機制。
ARP 快取中毒
-
戰術:操縱 ARP 表。
-
技術:發送偽造的 ARP 封包,將攻擊者的 MAC 位址與目標系統的 IP 位址關聯起來,導致其他設備上的 ARP 快取中毒。
-
程序:使用 Ettercap 向目標營運室 HMI 主機和監控網路的交換機(路由器)廣播偽造的 ARP 訊息,以毒化這兩個節點的 ARP 快取表,將 HMI 主機與交換機/路由器之間的流量重定向到攻擊發起機器。
阻斷服務 (DoS)
-
戰術:中斷正常的網路操作。
-
技術:用 ARP 欺騙封包淹沒網路可能導致網路通訊中斷,對合法使用者造成阻斷服務。
-
程序:在 ARP 快取中毒攻擊成功後,對封包應用特定的網路封包丟棄過濾器 (Modbus),以阻斷/阻止 HMI 與 PLC 的通訊,而不影響其他流量。
背景知識
在本節中,我們旨在提供關於各個系統的基本通用知識,並闡明與攻擊向量相關的戰術、技術和程序 (TTP)。這些基礎資訊將作為理解所涉及系統的複雜細節以及攻擊情境中採用方法的入門。
ARP 欺騙攻擊
位址解析協定 (ARP) 是一種協定,可使網路通訊到達網路上的特定設備。ARP 將網際網路協定 (IP) 位址轉換為媒體存取控制(MAC) 位址,反之亦然。最常見的是,設備使用 ARP 來聯繫路由器或閘道器,使其能夠連接到網際網路。
ARP(位址解析協定)欺騙,也稱為 ARP 毒化,是一種網路攻擊,攻擊者向區域網路發送偽造的 ARP 訊息。ARP 欺騙的目標是將攻擊者的 MAC(媒體存取控制)位址與合法網路設備的 IP 位址關聯起來,導致網路流量被重定向到攻擊者。這可能導致各種惡意活動,例如中間人攻擊、竊聽或會話劫持。基本 ARP 欺騙攻擊圖如下所示:

參考資料:https://www.imperva.com/learn/application-security/arp-spoofing/
鐵路[捷運] IT/OT 迷你網路靶場系統
關於鐵路 IT/OT 系統的總體介紹,請參考案例研究 1,網路靶場系統圖如下所示:

人機介面:在工業自動化和控制系統的背景下,OT HMI 指的是在營運技術 (OT) 環境中使用的人機介面。OT 涵蓋用於監控和控制製造、能源、公用事業和運輸等領域的實體設備、流程和基礎設施的技術和系統。
目標主機/應用程式/服務:在本攻擊案例研究中,如詳細攻擊路線圖所示,目標是鐵路 IT/OT 迷你網路靶場中運行的一個 HMI 應用程式(監控道岔和車站感測器與訊號)。HMI 程式運行在系統監控網路(營運室)中的一台工作站上。它提供營運狀態、即時資料和控制選項的圖形表示,使操作員能夠有效監控和管理工業流程,供總部操作員監控整個鐵路軌道感測器-訊號自動控制狀態。主使用者介面如下所示:

感測器-訊號監控 HMI 包含以下組件和功能:
-
列車感測器-訊號關係圖,顯示感測器狀態、訊號狀態以及感測器-訊號自動控制關係(軌道交叉路口和火車站)。
-
三個 PLC 面板,顯示道岔感測器-訊號控制系統的數位輸入/輸出狀態、PLC 保持暫存器狀態和 PLC 線圈狀態。
-
三個 PLC 面板,顯示車站感測器-訊號控制系統的數位輸入/輸出狀態、PLC 保持暫存器狀態和 PLC 線圈狀態。
紅隊 C2 模擬系統與 Ettercap 封包丟棄器
關於紅隊指揮與控制 (RTC2) 伺服器,請參考案例研究 1 中的介紹。
此 Ettercap 包裝器 ARP 欺騙惡意軟體旨在供紅隊攻擊者透過 Ettercap 在路由器/交換機上的 ARP 欺騙功能,對網路流量應用不同類型的封包過濾器,以便他們可以輕鬆發動封包丟棄、流量阻斷甚至中間人攻擊。ARP 欺騙攻擊者是透過添加我們客製化的 Ettercap Wrapper 模組,從標準的 c2BackdoorTrojan 模組擴展而來,因此 C2 模擬系統可以控制它向鐵路 HMI 節點、營運室子網路的交換機/路由器甚至相關連接的 PLC 組廣播特定的 ARP 毒化訊息。RTC2 控制和攻擊工作流程如下所示:

攻擊者將對鐵路 SCADA HMI 與兩個 PLC 組(交通道岔感測器-訊號控制 PLCx3 和車站感測器-訊號)之間的流量應用封包丟棄過濾器,以阻斷所有 Modbus-TCP 流量封包,從而拒絕鐵路 HMI 的狀態監控服務。
Ettercap wrapper attack program repo: GitHub Repo
鐵路營運與攻擊程序
列車營運基本背景知識介紹
在實施攻擊之前,將有一個簡短的工作坊,介紹鐵路系統中列車的基本控制方面。列車模擬的網路靶場網路拓撲如下所示:

鐵路感測器-訊號 SCADA-HMI 介紹
HMI 程式包含 2 個主要部分:
-
主使用者介面:一個 UI 地圖,顯示道岔和車站的感測器-訊號狀態、道岔控制 PLC 組 [PLC-00、PLC-01 和 PLC-02] 的數位 I/O 資訊狀態,以及車站控制 PLC 組 [PLC-03、PLC-04 和 PLC-05] 的數位 I/O 資訊狀態。
-
PLC 通訊執行緒:透過 Modbus TCP 與鐵路道岔感測器-訊號系統控制 PLC 模擬器和鐵路車站感測器-訊號系統控制 PLC 模擬器通訊,以獲取 OT 資料。
這是程式模組工作流程圖:

因此在攻擊期間,為了阻斷 HMI 服務,我們需要丟棄這兩個 Modbus-TCP 通訊通道。
OT 網路攻擊程序
在此演示中,攻擊工具 Ettercap 將透過先前的 IT 系統攻擊預先安裝。如前一節所述,我們需要實施兩種攻擊者類型:ARP 欺騙和封包丟棄。OT 網路中受影響的虛擬機器如下所示:

此攻擊演示將展示一個 Ettercap 包裝器程式,對鐵路 OT 感測器-訊號系統控制鏈進行 ARP 毒化:鐵路感測器-訊號控制 HMI -> SCADA 監控網路路由器 -> 道岔控制 PLC 和車站控制訊號。攻擊者將應用一個封包過濾器(如下所示的簡單範例):
#-----------------------------------------------------------------------------
# 名稱: arp_spoofing.filter
#
# 目的: 此過濾器用於對 SCADA-HMI 和 PLC01 之間的 Modbus
# 通道進行 ARP 欺騙攻擊。它將丟棄所有
# Modbus 封包,以切斷 PLC 控制通道。
#
# 作者: Yuancheng Liu
#
# 版本: v_0.1
# 建立日期: 2019/10/02
# 版權所有: Copyright (c) 2019 LiuYuancheng
# 授權: MIT License
#-----------------------------------------------------------------------------
if (ip.proto == TCP && tcp.dst == 502 && ip.dst == '10.107.105.5') {
# 過濾所有從 PLC 到 HMI 的 Modbus-TCP 傳入封包
drop();
msg("丟棄 HMI Modbus 回應封包!\n");
}
if (ip.proto == TCP && tcp.dst == 502 && ip.src == '10.107.107.5') {
# 過濾所有從 HMI 到 HMI 的 Modbus-TCP 傳出封包
drop();
msg("丟棄 PLC Modbus 請求封包!\n");
}
#-----------------------------------------------------------------------------
# 過濾器用法:
對鐵路 SCADA HMI 與兩個 PLC 組(道岔和車站網路中的所有 6 個 PLC)之間的流量,丟棄所有 Modbus-TCP 流量封包,以切斷鐵路狀態監控服務的連接。
攻擊期間的觀察:
-
當攻擊發生時,鐵路 SCADA HMI PLC 連接指示器將顯示完全失去連接。鐵路 SCADA HMI 上的所有資料將不會更新。
-
鐵路總部操作員能夠偵測到攻擊。但如果他嘗試使用 ping、ssh 或其他非 Modbus(TCP 埠 502)來測試網路連接,他將不會發現任何網路問題。(因為過濾器只丟棄特定的協定封包)
攻擊效果(觀察)詳情如下所示:

當攻擊發生時,鐵路總部操作員可能會觀察到以下情況:
-
鐵路 SCADA HMI 上的所有資料將不會更新。
-
鐵路 SCADA HMI 上的 PLC 連接指示器將顯示失去連接(從綠色變為灰色)。
紅隊攻擊詳細步驟
鑑於紅隊攻擊者在鐵路網路靶場網路之外運作,他們依賴攻擊控制指揮與控制 (C2) 系統來執行攻擊。如攻擊前置條件介紹部分所詳述,ARP 欺騙攻擊者程式已預先部署在網路靶場內的一台維護電腦上。因此,當紅隊攻擊者存取 C2 系統時,他們將看到 ARP 欺騙攻擊者程式 "packetDropper" 已在 C2 中註冊,如下所示:

從 C2 啟動 ARP 欺騙封包丟棄攻擊
選擇 PacketDropper 控制頁面,然後選擇透過 Json 分配特殊任務,然後填寫任務詳情:
-
任務類型:
packetDrop -
重複:
1 -
任務資料:
packetDropper

submit 按鈕,當 Ettercap 包裝器報告任務正在運行時,Ettercap 將應用過濾器以持續阻擋進出目標受害節點的流量。有關過濾器配置資訊,請參閱 filter.json 文件,下面是一個丟包過濾器範例,您可以創建自己的過濾器並將其放入 filters 文件夾中,並在 filter.json 文件中給予過濾器一個獨特的名稱,以便您可以將其應用於流量:
"packetDropper" : {
"ipaddress": "10.107.107.5",
"protocalType": "TCP",
"port":502,
"description": "丟棄所有進出該 IP 位址的封包",
"filterFile": "atk.ef"
}
攻擊演示影片
要查看演示影片,請參閱我的 YouTube 頻道中的此連結: https://www.youtube.com/watch?v=QmB0nJU1_q4
MITRE CWE 匹配與 ATT&CK 映射
Massachusetts Institute of Technology Research and Engineering (MITRE)
MITRE CWE(通用弱點列舉)匹配
CWE-284
-
CWE 名稱: 不當的存取控制
-
CWE 匹配: 在此情境中,攻擊者利用不當的存取控制,透過總部操作室的交換機廣播偽造的 ARP 訊息,並應用 Modbus-TCP 封包過濾器,導致 HMI 和 PLC 之間的通訊中斷。此安全弱點可匹配至
CWE-284: Improper Access Control -
CWE 詳細資訊: 此 CWE 涉及與不充分的存取控制機制相關的漏洞,允許未經授權的用戶存取或操縱資源。連結: https://cwe.mitre.org/data/definitions/284.html
CWE-494
-
CWE 名稱: 下載程式碼未經完整性檢查
-
CWE 匹配: 在此情境中,攻擊者可能使用紅隊 C2 系統遠端控制受害者(維護工程師的筆記型電腦),以下載並執行用於 ARP 欺騙的丟包過濾器,而未經 OT 子網防火牆的完整性檢查。此安全弱點可匹配至
CWE-494: Download of Code Without Integrity Check -
CWE 詳細資訊: 此 CWE 涉及攻擊者可以在未經適當完整性檢查的情況下從網際網路下載程式碼的漏洞,可能導致惡意程式碼的執行。連結: https://cwe.mitre.org/data/definitions/494.html
CWE-300
-
CWE 名稱: 非端點可存取的通道(中間人)
-
CWE 匹配: 在此情境中,攻擊者使用中間人工具 Ettercap 執行 ARP 攻擊,透過攔截和修改 ARP 訊息,導致 HMI 和 PLC 之間的通訊中斷。此安全弱點可匹配至
CWE-300: Channel Accessible by Non-Endpoint ('Man-in-the-Middle') -
CWE 詳細資訊: 此 CWE 涉及攻擊者可以在兩方不知情的情況下攔截或修改其通訊的漏洞。連結: https://cwe.mitre.org/data/definitions/300.html
CWE-937
-
CWE 名稱: OWASP Top Ten 2013 A5 類別 - 安全配置錯誤
-
CWE 匹配: 在此情境中,攻擊者能夠繞過防火牆檢測機制並操縱子網的交換機和受害者的 ARP 表,這利用了防火牆和網路基礎設施中的安全配置錯誤。此安全弱點可匹配至
CWE-937: OWASP Top Ten 2013 Category A5 - Security Misconfiguration -
CWE 詳細資訊: 此 CWE 涉及與安全配置錯誤相關的弱點,例如預設配置、不安全的配置或不完整的配置,這些都可能導致安全漏洞或操作失敗。連結: https://cwe.mitre.org/data/definitions/937.html
MITRE ATT&CK(對抗性戰術、技術和通用知識)映射
Initial Access (TA0001) > T1562.001: Impair Defenses: Disable or Modify Tools
-
攻擊者使用中間人攻擊工具 Ettercap 修改網路流量,以中斷 HMI 和 PLC 之間的通訊,從而削弱防禦並獲得對網路的初始存取權限。
Command and Control (TA0002) > T1573.002: Encrypted Channel: Asymmetric Cryptography
-
攻擊者和 ARP 欺騙程式利用加密通道與紅隊 C2 系統通訊,在攻擊期間保持隱蔽性和安全性。
Impact (TA0004) > T1499.002: Endpoint Denial of Service
-
攻擊者透過丟棄特定的 Modbus-TCP 通訊數據,中斷 HMI 和 PLC 之間的通訊,導致操作室中的鐵路感測器-信號-HMI 離線。
Last edit by LiuYuancheng([email protected]) at 13/01/2026, if you have any problem, please send me a message. Copyright (c) 2023 LiuYuancheng
No comment for this article.