隨著網路攻擊日益複雜,傳統安全防護措施已力不從心。人工智慧,特別是機器學習和深度學習,為網路威脅偵測提供了新的解決方案。藉由分析網路流量、系統日誌等資料,這些技術能自動識別和預測攻擊行為,例如利用人工神經網路、深度遞迴神經網路和雙隱藏層極限學習機等模型進行惡意軟體狩獵和電力竊電檢測。資料預處理、特徵選擇和模型評估是確保偵測系統有效性的關鍵技術,相關研究已提出根據支援向量機迴歸的缺失值填補方法和結合遺傳演算法與粒子群最佳化的特徵選擇方法。然而,根據 AI 的網路威脅偵測仍面臨資料品質、模型解釋性和未知攻擊檢測能力等挑戰。快照整合技術和物聯網安全等新興技術為提升偵測系統效能和應對物聯網安全挑戰提供了新的方向。

根據人工智慧的網路威脅偵測技術綜述

隨著網路技術的快速發展和物聯網(IoT)裝置的普及,網路安全威脅日益增加。傳統的安全防護措施已難以應對日益複雜的網路攻擊,因此,根據人工智慧(AI)的網路威脅偵測技術成為了研究的熱點。本文將綜述近年來根據AI的網路威脅偵測技術的研究成果,分析其關鍵技術和應用前景。

人工智慧在網路威脅偵測中的應用

人工智慧技術,尤其是機器學習(ML)和深度學習(DL),已被廣泛應用於網路威脅偵測領域。這些技術可以透過分析網路流量、系統日誌等資料,自動識別和預測網路攻擊行為。

機器學習技術

機器學習技術透過訓練模型來識別已知和未知的威脅。例如,文獻[22]提出了一種根據人工神經網路的網路威脅偵測方法,利用事件輪廓(Event Profiles)來檢測網路攻擊。同樣,文獻[23]和[24]分別利用深度遞迴神經網路和雙隱藏層極限學習機(Two-Hidden-Layer Extreme Learning Machine)來進行惡意軟體狩獵。

深度學習技術

深度學習技術由於其強大的特徵提取和模式識別能力,在網路威脅偵測中表現出色。文獻[27]綜述了深度學習在不同領域的應用,包括網路安全。文獻[30]提出了一種根據深度卷積神經網路的電力竊電檢測模型,用於智慧電網的安全監控。

網路威脅偵測中的關鍵技術

資料預處理

資料預處理是網路威脅偵測中的關鍵步驟。文獻[45]提出了一種根據支援向量機(SVM)迴歸的方法來填補缺失值,提高了模型的準確性。

特徵選擇

特徵選擇直接影響模型的效能。文獻[32]提出了一種結合遺傳演算法(GA)和粒子群最佳化(PSO)的特徵選擇方法,用於入侵偵測系統。

模型評估

模型評估是確保偵測系統有效性的重要步驟。文獻[39]對KDD CUP 99資料集進行了詳細分析,為入侵偵測研究提供了基礎。

網路威脅偵測的挑戰與未來方向

儘管根據AI的網路威脅偵測技術取得了顯著進展,但仍面臨著諸多挑戰,如資料品質、模型解釋性、以及對未知攻擊的檢測能力等。

快照整合深度神經網路模型

文獻[47]提出的快照整合(Snapshot Ensembles)技術,透過訓練一個模型即可獲得多個模型的效果,為提高偵測系統的效能提供了一種新的思路。

物聯網安全

隨著IoT裝置的普及,物聯網安全成為了新的挑戰。文獻[43]和[44]分別探討了根據機器學習的IoT感測器攻擊和異常檢測方法。

內容解密:

此Plantuml圖表清晰地呈現了網路威脅偵測的整體流程。首先,資料收集是基礎步驟,用於蒐集網路流量和系統日誌等資料。接著,資料預處理步驟對收集到的資料進行清理和格式化,以提高後續分析的準確性。特徵選擇步驟則是挑選出對威脅偵測最有價值的特徵,以減少計算複雜度和提高模型效能。模型訓練階段利用機器學習或深度學習演算法對選定的特徵進行學習,建立能夠識別威脅的模型。模型評估階段透過測試資料集驗證模型的準確性和可靠性。最後,威脅偵測階段利用訓練好的模型對即時資料進行分析,以檢測潛在的網路威脅,並觸發相應的安全防護措施。整個流程體現了AI技術在提升網路安全方面的關鍵作用。

工業網路物理系統安全性的聯邦學習隱私保護方案

隨著社會的進步,人們越來越傾向於使用互聯的裝置來改善日常生活。資訊與通訊技術(ICT)的出現徹底改變了經濟活動和城市基礎設施,這促使研究人員開始研究將ICT整合到智慧電網和智慧城市等城市發展專案中。

簡介

傳統上,監控和控制物理過程是透過嵌入式電腦透過回饋迴路來實作的。然而,隨著ICT的發展,一種新的系統——網路物理系統(CPS)應運而生。CPS將計算技術與傳統的嵌入式物理系統相結合,提高了物理系統的效率並增強了其監控和控制過程。

CPS的主要組成部分包括感測器、執行器和控制器。這些元件的協作有助於降低營運成本並最佳化資料預處理。感測器和執行器的作用是在網路和物理元件之間傳遞資訊。同時,控制器向系統的不同部分傳送命令。

大多數CPS都不是集中式的,它們由許多分散的物理系統組成。網路系統與這種結構合作,以控制所有物理系統。CPS涵蓋了多個領域,如智慧製造、醫療保健、智慧建築和基礎設施、智慧城市、可穿戴裝置、智慧電網等。

網路物理系統(CPS)安全性

如今,CPS涵蓋了我們生活的許多關鍵領域。由於CPS具有物理和網路技術兩方面的特點,這些關鍵領域也同樣面臨著許多網路威脅,可能會導致災難性的後果。例如,在醫院中,許多裝置都連線到網路。如果攻擊者試圖破壞這些裝置,可能會產生毀滅性的影響。此外,不僅僅是醫療保健領域,其他領域也可能面臨同樣的後果。

一個安全的CPS必須滿足以下幾個類別:

  • 保密性:某些資訊需要保密,不應被未授權的個人取得。保密性是隱私的一個子組成部分,旨在保護個人資料。例如,在醫療保健系統中,患者的個人資訊需要在醫生和醫療裝置之間以加密的方式傳輸。

工業CPS面臨的安全威脅

由於CPS高度依賴網路技術,因此面臨著各種新的漏洞,如網路攻擊。因此,考慮CPS的安全性至關重要。然而,每個參與CPS的使用者都希望能夠免受任何潛在威脅和漏洞的影響,但在實際系統中這幾乎是不可能的。

本文將討論CPS的安全性以及威脅CPS的不同威脅,接著介紹一些主要攻擊在CPS的不同領域中的表現。然後,本文將介紹隱私問題及其一些對策。最後,將介紹聯邦學習(FL)作為一種使用機器學習模型保護隱私的解決方案。

聯邦學習在CPS隱私保護中的應用

聯邦學習是一種分散式的機器學習方法,它允許多個參與者在本地訓練模型,並將模型的更新上傳到中央伺服器進行聚合,從而實作模型的共同訓練,而無需將原始資料上傳到中央伺服器。這種方法可以有效地保護CPS中的隱私資料。

聯邦學習的工作原理

# 客戶端訓練模型
def client_train(client_id, model, data):
    # 本地訓練模型
    model.train(data)
    # 上傳模型更新
    return model.get_weights()

# 伺服器端聚合模型更新
def server_aggregate(model, updates):
    # 聚合模型更新
    model.set_weights(aggregate_updates(updates))
    return model

# 聯邦學習流程
def federated_learning(clients, model, data):
    updates = []
    for client_id in clients:
        update = client_train(client_id, model, data[client_id])
        updates.append(update)
    model = server_aggregate(model, updates)
    return model

內容解密:

  1. client_train函式負責在客戶端本地訓練模型,並傳回模型的更新。
  2. server_aggregate函式負責在伺服器端聚合來自各個客戶端的模型更新。
  3. federated_learning函式負責協調客戶端和伺服器端的聯邦學習流程。

網路物理系統(CPS)安全威脅與攻擊型別分析

網路物理系統安全的重要性

網路物理系統(CPS)結合了計算、通訊和物理過程,在現代基礎設施中扮演著至關重要的角色,例如智慧電網、醫療裝置和工業控制系統。然而,這些系統也面臨著多重安全威脅,可能導致嚴重的後果。CPS的安全性取決於三個主要屬性:完整性(Integrity)、可用性(Availability)和真實性(Authenticity)。

  • 完整性:資料在整個過程中必須保持完整和準確,防止未經授權的修改。
  • 可用性:CPS的所有元件和系統必須始終可用並準備好提供服務,涵蓋實體控制和通訊通路。
  • 真實性:所有交易和通訊必須是真實和可靠的,確保與預期的物件進行通訊。

網路物理系統面臨的安全威脅

CPS的安全不足可能導致災難性的後果,根據應用領域的不同,這些威脅可以分為五種型別:

  1. 犯罪威脅:攻擊者可能利用系統組態知識或無線功能遠端控制工業控制系統,或透過智慧電表與公用事業公司之間的通訊推斷私人資訊進行盜竊。
  2. 財務威脅:客戶可能透過篡改智慧電表來減少電費,或者公用事業公司收集客戶的隱私資訊並將其出售給廣告商以取得利益。
  3. 政治威脅:在政治問題上,一國的政策可能導致對另一國的網路戰爭,遠端存取智慧電網的基礎設施,造成大規模停電或財務損失。
  4. 隱私威脅:未經授權存取私人資料一直是攻擊者的動機之一,例如在醫療基礎設施中,醫療裝置與其他方(如醫院)進行通訊,可能導致隱私侵犯。
  5. 實體威脅:攻擊者可能破壞電力網中物理暴露的元件,造成服務中斷甚至停電。

網路物理系統的主要攻擊型別

為了確保CPS的安全,需要識別不同型別的威脅和漏洞。攻擊可以分為兩類別:被動攻擊和主動攻擊。

被動攻擊與主動攻擊

  • 被動攻擊:旨在保持隱蔽,不被發現,例如攔截敏感資料而不造成破壞。
  • 主動攻擊:旨在造成直接損害或控制系統,例如惡意資料注入、重放攻擊和拒絕服務(DoS)攻擊。

具體攻擊型別

  1. 金鑰洩露攻擊:攻擊者獲得金鑰後,可以存取任何所需資訊,例如破壞具有預分享金鑰的感測器節點的安全金鑰。

  2. 虛假資料注入攻擊(FDIAs):攻擊者嘗試將惡意資料新增到系統測量中,以誤導狀態估計和控制系統效能而不被檢測到。

    # 虛假資料注入示例
    import numpy as np
    
    # 原始測量資料
    measurements = np.array([10, 20, 30])
    
    # 注入惡意資料
    malicious_data = np.array([100, 200, 300])
    compromised_measurements = measurements + malicious_data
    
    print("原始測量資料:", measurements)
    print("被惡意資料注入後的測量資料:", compromised_measurements)
    
    #### 內容解密:
    # 上述程式碼展示瞭如何將惡意資料注入原始測量資料中。
    # 首先,我們定義了原始測量資料 `measurements`。
    # 然後,我們建立了一個 `malicious_data` 陣列,代表要注入的惡意資料。
    # 將原始測量資料與惡意資料相加,得到被破壞的測量資料 `compromised_measurements`。
    # 這種攻擊方式可能誤導系統的狀態估計和控制效能。
    
  3. 重放攻擊:攻擊者重複或延遲有效的資料傳輸,以欺騙系統。

    # 重放攻擊示例
    import time
    
    # 原始資料包
    packet = "DATA_PACKET"
    
    # 模擬重放攻擊
    def replay_attack(packet, delay=2):
        print("傳送原始資料包:", packet)
        time.sleep(delay)  # 延遲
        print("重放資料包:", packet)
    
    replay_attack(packet)
    
    #### 內容解密:
    # 上述程式碼模擬了一個重放攻擊的過程。
    # 首先,我們定義了一個原始資料包 `packet`。
    # 然後,我們定義了一個 `replay_attack` 函式,該函式接收一個資料包和一個延遲時間作為引數。
    # 在函式內部,我們首先傳送原始資料包,然後等待一段時間(由 `delay` 指定),最後重放該資料包。
    # 這種攻擊方式可能欺騙系統,使其認為是合法的資料傳輸。
    
  4. 竊聽攻擊:攻擊者被動監聽網路通訊,以取得私人資訊,如節點識別號、路由更新或應用程式敏感資料。

  5. 中間人攻擊:攻擊者在兩方之間秘密轉發並可能修改通訊,傳送虛假訊息給操作員。

  6. 拒絕服務(DoS)攻擊:包括永久DoS、分散式DoS和反射攻擊,旨在阻止合法使用者存取服務。

  7. 欺騙攻擊:攻擊者偽裝成系統的合法部分,例如IP欺騙、ARP欺騙和GPS欺騙。

網路安全威脅與隱私保護在工業控制系統中的重要性

隨著工業控制系統(CPS)日益普及,網路安全威脅和隱私保護成為了重要的關注點。CPS結合了物理和計算過程,廣泛應用於能源、醫療保健、交通運輸等關鍵基礎設施領域。然而,這些系統也面臨著各種安全威脅和隱私風險。

網路安全威脅的多樣性

CPS面臨著多種網路安全威脅,包括網路攻擊、物理攻擊和網路-物理攻擊。這些攻擊可能導致系統故障、資料洩露甚至是嚴重的基礎設施損壞。例如,在醫療保健領域,重放攻擊和流量分析是常見的威脅;在智慧電網中,錯誤資料注入(FDIA)攻擊可能導致大規模停電。

常見的網路攻擊型別

  • DoS攻擊:拒絕服務攻擊,旨在使系統無法正常運作。
  • 重放攻擊:重複傳送合法資料以幹擾系統正常運作。
  • 錯誤資料注入:將惡意資料注入系統測量中,可能導致嚴重後果。

隱私保護的挑戰

CPS的隱私保護是一個複雜的問題,尤其是在智慧電網和醫療保健等領域。個人資料的洩露可能導致嚴重的後果,因此需要強有力的隱私保護方案。目前,已有多種密碼學技術被提出來保護資料隱私,但大多需要使用者保管金鑰,增加了計算成本。

隱私保護技術

  • 匿名化技術:如k-anonymity,旨在保護個人身份不被識別。
  • 差分隱私:透過新增噪音來保護統計資料和即時資料的隱私。

聯邦學習(FL)在CPS安全中的應用

為瞭解決CPS中的網路安全威脅和隱私保護問題,聯邦學習(FL)技術受到越來越多的關注。FL是一種分散式機器學習方法,可以在不分享原始資料的情況下進行模型訓練,從而保護資料隱私。

FL的優勢

  • 保護資料隱私:FL允許在本地進行模型訓練,無需將原始資料上傳至中央伺服器。
  • 提高安全性:減少了資料洩露的風險。

聯邦學習(Federated Learning)在工業資安中的隱私保護解決方案

聯邦學習的興起背景

2017年中國實施的《網路安全法》和《民法總則》對資料收集和交易實施了嚴格的控制[53]。由於這些法規,直接將不同組織的資料集中到資料中心的做法變得不可行[54, 55]。如果忽視隱私保護,許多網路威脅和風險將對敏感資料構成威脅。近年來,一些涉及隱私侵犯的事件值得關注,例如2017年攻擊Equifax事件,影響1790萬客戶;2018年Marriott資料洩露事件,涉及5億客戶;以及2014年的eBay攻擊事件,影響1.45億使用者[56]。

聯邦學習框架

Google提出了一種名為聯邦學習(Federated Learning, FL)的隱私保護分散式機器學習框架,用於在不損害隱私的情況下訓練機器學習模型[57-60]。在FL框架中,不同的邊緣裝置或客戶端可以在保持本地訓練資料不被分享的情況下,共同參與全域性模型的訓練。

FL的工作流程

  1. 伺服器初始化一個模型並將其與其他客戶端分享。
  2. 每個客戶端使用自己的資料集訓練分享模型,並將模型更新發送回伺服器。
  3. 伺服器透過加權聚合這些更新,對全域性模型進行單次更新,從而完成一輪訓練。

聯邦學習的架構

聯邦學習的架構可以根據資料的特徵和樣本空間在不同參與方之間的劃分方式,分為橫向聯邦學習(Horizontal Federated Learning, HFL)、縱向聯邦學習(Vertical Federated Learning, VFL)和聯邦遷移學習(Federated Transfer Learning, FTL)。

橫向聯邦學習(HFL)

在HFL中,客戶端分享相同的特徵但具有不同的資料樣本,也稱為樣本劃分聯邦學習[56, 63]。

縱向聯邦學習(VFL)

在VFL中,客戶端分享相同的資料樣本但具有不同的資料特徵,也稱為特徵劃分聯邦學習。

聯邦遷移學習(FTL)

FTL適用於客戶端之間既沒有重疊的資料樣本也沒有重疊的特徵的情況。FTL在多個領域中很常見,例如醫療保健[64],並使用加密技術來保護隱私[65]。

聯邦學習的演算法

聯邦學習中有多種演算法被提出,包括:

  • 聯邦平均(FedAvg):最常見的演算法之一,透過客戶端訓練區域性模型並將更新傳送到伺服器進行平均來更新全域性模型。
  • 聯邦隨機方差減少梯度(FSVGR):針對稀疏資料進行最佳化。
  • FedProx:是FedAvg的泛化和重新引數化,能夠更好地處理資料異質性問題。

聯邦學習的挑戰與弱點

聯邦學習(FL)網路能夠靈活地佈署於各種產業和應用中。儘管聯邦學習在多個應用領域和範疇中展現出令人振奮的成果,但仍有一些挑戰使得這個框架容易受到威脅,並阻礙了聯邦學習的全面採用。這些挑戰主要源於隱私、安全以及在某些情況下技術上的需求。

資料品質與挑戰

用於訓練的資料並不總是完美的。在某些攻擊和正常樣本中,可能會出現標籤缺失或不平衡的情況。這將導致模型的不準確。此外,通訊、系統異構性和隱私是聯邦學習的其他挑戰。在許多領域,如醫療領域,通訊對於聯邦學習至關重要。

通訊效率

聯邦學習中有大量的裝置,這對通訊產生了很大的影響。為瞭解決這個問題,需要一個通訊效率高的模型。這意味著在訓練過程中,傳送較小的訊息或較小的模型更新,而不是僅僅傳送整個訓練資料集。因此,需要考慮兩個因素:

  • 減少通訊的迭代次數
  • 減少每次迭代的訊息大小

隱私問題

在聯邦學習中,隱私往往是最大的擔憂。在訓練階段,敏感資訊可能會在通訊模型更新時被提取出來。然而,文獻中有許多論文提出了新的方法來解決隱私問題,但它們會影響效能和準確性。找到一個折衷方案來解決隱私問題至關重要。

聯邦學習的弱點

由於聯邦學習依賴所有客戶端的協作來訓練一個機器學習模型,因此,即使只有少數客戶端工作異常,也會影響機器學習模型。我們可以根據以下兩個方面來探討聯邦學習的弱點:

  • 惡意客戶端:由於智慧裝置越來越複雜,缺陷是不可避免的,這些裝置很容易被攻陷。此外,許多聯邦學習網路設計並不包含任何安全機制,如驗證機制,因此無法防止攻擊者設定惡意客戶端加入聯邦學習網路。
  • 不安全的連線:在聯邦學習網路中,許多連線可能是不安全的,但要確保其安全性並區分安全和不安全的連線並不容易。目前,有許多方法,如加密和驗證,用於確保連線的安全性,但它們會導致其他問題,如額外的負擔,因此並不總是被採用。

中毒攻擊

全域模型聚合很容易被篡改,效能和準確性會因注入中毒模型更新而降低。這些型別的攻擊稱為中毒攻擊。中毒攻擊的目的是透過篡改聯邦學習的全域模型聚合,以獲得糟糕的機器學習模型準確性。根據中毒模型更新的來源,中毒攻擊可以分為以下幾類別:

  • 資料中毒:資料中毒可以透過更改目標客戶端的訓練資料來實作。例如,攻擊者可以更改訓練資料中的標籤符號,使得目標客戶端使用中毒資料訓練本地模型並生成錯誤的模型更新。
  • 模型中毒:為了產生中毒模型更新,需要設定一些規則,而不是修改訓練資料。例如,Dong等人描述瞭如何從高斯分佈中取樣模型更新。此外,攻擊者可以操縱良性模型更新成為中毒模型更新。

內容解密:

上述段落介紹了聯邦學習中的兩種主要中毒攻擊型別。資料中毒是透過更改訓練資料來實作的,而模型中毒則是透過設定規則或操縱模型更新來實作的。這些攻擊都會對聯邦學習模型的準確性和安全性造成威脅。

搭便車攻擊

聯邦學習還容易受到一種稱為搭便車攻擊(Free-Riding Attack)的威脅,其中攻擊者希望在不參與學習過程的情況下取得模型的利益。這將導致在訓練階段消耗越來越多的資源。

聯邦學習中的攻擊型別

@startuml
skinparam backgroundColor #FEFEFE
skinparam componentStyle rectangle

title 人工智慧網路威脅偵測技術綜述

package "機器學習流程" {
    package "資料處理" {
        component [資料收集] as collect
        component [資料清洗] as clean
        component [特徵工程] as feature
    }

    package "模型訓練" {
        component [模型選擇] as select
        component [超參數調優] as tune
        component [交叉驗證] as cv
    }

    package "評估部署" {
        component [模型評估] as eval
        component [模型部署] as deploy
        component [監控維護] as monitor
    }
}

collect --> clean : 原始資料
clean --> feature : 乾淨資料
feature --> select : 特徵向量
select --> tune : 基礎模型
tune --> cv : 最佳參數
cv --> eval : 訓練模型
eval --> deploy : 驗證模型
deploy --> monitor : 生產模型

note right of feature
  特徵工程包含:
  - 特徵選擇
  - 特徵轉換
  - 降維處理
end note

note right of eval
  評估指標:
  - 準確率/召回率
  - F1 Score
  - AUC-ROC
end note

@enduml

圖表翻譯: 此圖示呈現了聯邦學習中可能面臨的三種主要攻擊型別,包括資料中毒、模型中毒和搭便車攻擊。資料中毒是透過更改訓練資料來實作的,模型中毒則涉及設定規則或操縱模型更新,而搭便車攻擊則是指攻擊者在不參與學習過程的情況下取得模型的利益。