iT邦幫忙

2023 iThome 鐵人賽

DAY 28
1
Security

由淺入深,探索 NFV 與入侵偵測系統在其中的應用系列 第 29

[Day28] 透過資訊安全頂級研討會文章,進一步深思入侵偵測

  • 分享至 

  • xImage
  •  

因為這個鐵人競賽,讓我有督促自己的機會能不斷往入侵偵測系統的深處去挖掘,也決定透過這次機會,利用雙十連假來看一下入侵偵測系統相關的頂會文章,希望能在這領域中,有更多的啟發。

這次就來跟大家分享我最近閱讀的文章內容~
可能有點枯燥哈,不過也真的讓身為初學者的我又學到東西。


隨著大家對資訊的運用越來越依賴,也讓 IOT 的實際危害遽增。
常見的資安案例:

  1. 家中的智慧鎖或爐灶被入侵,並開啟,導致安全風險,更嚴重可能還會發生火災傷亡。(被攻擊)
  2. 暖氣系統故障導致室內溫度下降。(故障)
  3. 攻擊者利用被攻擊系統的上下文訊息來實施攻擊,因為是混淆或模仿合法用戶的操作,使其看起來像正常操作,所以這種攻擊不容易被偵測到。(Contextual Attacks上下文攻擊)

本篇大綱
一、論文的介紹
二、作者們發現的問題與解決方法
三、System Design:ARGUS 應滿足條件
四、System Design:實驗假設
五、System Design:架構概述
六、評估結果
七、ARGUS 可能會有的問題
八、結論


一、論文的介紹

  1. 文章名稱:ARGUS: Context-Based Detection of Stealthy IoT Infiltration Attacks
  2. 作者:Phillip Rieger, Marco Chilese, Reham Mohamed, Markus Miettinen, Hossein Fereidooni, and Ahmad-Reza Sadeghi, Technical University of Darmstadt
  3. 發表會議:The 32nd USENIX Security Symposium 2023

二、作者們發現的問題與解決方法

  1. 作者們發現的問題:

    • Network-Intrusion Detection(網路入侵偵測):
      1.無法偵測利用控制基礎架構的攻擊:某些攻擊是通過供應商的雲端平台發送的,這種網路流量難以跟良性操作區分開來。
      2.現有的方法通常著重在分析網路流量,也因為攻擊命令的網路流量與良性命令無法區分,所以無法偵測上下文攻擊。

    • Policy-Based Detection(基於策略的偵測):
      1.需要使用者進行繁瑣的設置。
      2.攻擊者可能會發現策略中的漏洞:他們就可以去避開。

    • Contextual Anomaly Detection(情境異常檢測):
      1.需要有關設備的附加訊息。
      2.僅限於已知攻擊。
      3.只考慮命令:沒辦法自主偵測。

  2. 作者提出的解決方法:
    提出 ARGUS,一種基於上下文的入侵偵測框架。

    • 可以有效偵測 IOT 中的 contextual attacks(攻擊者在錯誤的上下文中執行良性操作的攻擊)。
    • 無需手動配置或了解設備即可操作。
    • 自動調整偵測邊界以對異常分數(anomaly scores)進行分類。
    • 發布的 dataset 可以作為未來的基準。
      https://ithelp.ithome.com.tw/upload/images/20231012/20156517vJrmxzjNHh.jpg

三、System Design:ARGUS 應滿足條件

  • R1 Fast detection 快速偵測:當系統中發生新的事件時,必須即時偵測到攻擊,以便有足夠的反應時間來採取適當的對策。
  • R2 Cause identification 原因識別:必須能辨識導致觸發警報的設備或事件。
  • R3 Minimizing false alarms 最大限度地減少誤報:減少誤報,不然使用者可能會開始忽略傳入的警報,或完全停用保護系統以避免不必要的不便。
  • R4 Autonomous operation 自主操作:必須在使用者輸入最少配置的情況下運作,不然會不實用,因為使用者不太可能都有專業知識並且願意花時間來配置系統。

四、System Design:實驗假設

  • 安全設備未破壞
  • 處於良好的環境
  • IOT 設備本身不會受到損害

五、System Design:架構概述

架構主要由三個實體元件組成:

https://ithelp.ithome.com.tw/upload/images/20231012/20156517An8yolMrhW.jpg

  1. Device Monitoring 監控設備

    • 為了管理不同 IOT 生態系統的不同 API,ARGUS 利用家庭自動化平台連接到系統中安裝的各種 IOT 設備的各個 API。
    • 這個監控元件會從觀察到的 IOT 設備收集更新的狀態和事件,並讓接下來的元件進行處理。
      https://ithelp.ithome.com.tw/upload/images/20231012/20156517muJwsAd9YJ.jpg
    • 能接受各 IOT 設備的異質性:IOT 中的不同製造商的設備使用不同的通信協議,連接到不同的雲端平台和行動應用程式,增加了監控的複雜度。而大多數現有的 IDS 只有針對 LAN 和 WiFi 流量,忽略了其他無線通信協議,而這個 ARGUS 整合多種 IOT 設備。
    • 整合家庭自動化系統:ARGUS 使用家庭自動化系統來解決 IOT 設備異質性的問題。這些自動化系統允許整合多種 IOT 設備。設備供應商也須提供這種整合以促進 IOT 設備的部署和使用者的接受度。
    • 設備監控的自動化:ARGUS 的監控設備元件,利用自動化系統,整合各種 IOT 設備,能使用不同 IOT 生態系統的API,並收集來自不同供應商的技術、數據,就能監控所有可用的設備,並記錄設備的更新狀態。
  2. Context Modeling 上下文建模:自動編碼器 (AE) 架構,這是一種無監督的 DNN 方法,因為它僅使用良性資料進行訓練。

    • Scores:代表每個新傳入事件的異常分數。 表示捕獲的事件與建模的預期行為的相似性。
    • AE 預測設備監控組件捕獲的每個新傳入事件的異常分數。
    • ARGUS 的上下文建模組件,是根據先前收集的訓練資料對預期行為及其上下文進行建模。
    • 接下來會來說明,如何將描述資料做資料前處理,以及用在對使用者預期行為進行建模的DNN(深度神經網路)的架構。
      https://ithelp.ithome.com.tw/upload/images/20231012/20156517v3I2XUB2Sq.jpg
    1. 資料前處理
      • 目的:處理大量的設備狀態並方便後續機器學習。

      • 設備狀態:各個 IOT 設備的狀態、各個感測器的捕獲值。
        https://ithelp.ithome.com.tw/upload/images/20231012/20156517gkxFLWeYF5.jpg

      • 這些被收集起來的狀態,會使用這個算式處理。

        • 這算式包含三個內容,每個觀察到的狀態,首先會,映射到一個基數,將其標準化,變成 Si 的部分。
          https://ithelp.ithome.com.tw/upload/images/20231012/20156517kX6V3jPJZF.jpg
      • 所有設備狀態都被映射為這個 r 範圍裡,也就是有限範圍[0,1]內的數值。

      • 其中,i ∈ {0,...,9} (i範圍0到9)是新映射的每個數值。

      • 事件列表:[event0, event1,..., eventn],其中:
        https://ithelp.ithome.com.tw/upload/images/20231012/201565173sO2oupBJh.jpg

        • 在時間 i 的特定時刻,event0 是記錄的第一個事件,eventn 是最後一個事件。
    2. Deep Learning Model
      • 目的:區分異常行為和正常行為。
      • ARGUS 透過使用深度神經網路 (DNN) 的自動編碼器 (AE) 架構,對使用者的正常行為和上下文進行建模,來區分異常行為和正常行為。
      • 它們由兩部分組成:編碼器和解碼器。
        https://ithelp.ithome.com.tw/upload/images/20231012/20156517LfhLQQ6CWC.jpg
      • 由於處理的資料類型具有時間結構,作者們設計了一個由循環單元層組成的不完整 AE,並選擇使用 GRU (門控循環單元 ),它能夠更快地收斂、需要更少的記憶體、可以更好地處理長期記憶問題,讓 ARGUS 能學習所需的隨機行為。
      • 編碼器和解碼器由兩個循環層組成,每個循環層的隱藏單元數量分別減少和增加。
      • 超過一定的閾值,ARGUS 系統就會將事件識別為惡意事件。
  3. Anomaly Score Classification 異常分數分類:如果異常分數高於閾值T,那這個事件就被視為攻擊。

    • 目的:確定給定的狀態更新是良性的還是惡意的。
    • 為了區分這些值,根據先前觀察到的異常分數,來動態確認閾值 Td 並將其用作分類邊界。
    • 當誤差小於或等於 Td 時,事件就會被分類為良性,否則會發出警報。為了計算第 d + 1 天使用的閾值 Td,因此要計算所謂的候選閾值 Cd *。
    • 其中 Ed* 是在 d* 天收集的所有事件的重建誤差集,β 表示安全等級。
    • 為了防止異常高的重建誤差顯著影響閾值,使用動量將Cd與先前的閾值Td−1結合。
    • 閾值 Td 由下面兩個式子呈現出:
      https://ithelp.ithome.com.tw/upload/images/20231012/20156517ZZcSPolitY.jpg
      • 其中α是老化因子,決定了先前閾值的影響。 α越高,前一個閾值的影響越大。
      • 當α = 0.2 時,ARGUS 表現最好。
    • 也因為 ARGUS 可以毫不延遲地擷取事件並計算異常分數,因此 ARGUS 滿足設計 R1(快速偵測)。
    • 由於為每個新事件確定異常分數,因此可以透過向使用者呈現最後一個事件以及先前事件的簡短清單來識別異常原因,因此 ARGUS 也滿足 R2。

六、評估結果

在這個評估中,使用 5 種不同的智慧家庭設置,並配置了居民日常使用的各種 IOT 設備和感測器。

在每個設定中,使用前 7 天來訓練模型,其餘資料用於測試。
訓練資料分別為 90% 的實際訓練資料和 10% 的驗證資料。

以下是評估結果:
誤報率(FPR)、準確率 (Pr)、召回率 (Re) 和 F1 分數。

https://ithelp.ithome.com.tw/upload/images/20231012/201565178Y81FKYaIq.jpg

(FPR ≤ 0.3%),代表:ARGUS 正確識別了幾乎所有的良性事件,滿足 R3最大限度地減少誤報。
(Re ≥ 99.64%),代表:ARGUS 幾乎偵測到了所有的攻擊。

https://ithelp.ithome.com.tw/upload/images/20231012/20156517O9M1qdnNMy.jpg

7 天的訓練資料對於ARGUS 來說足夠了。
而若在 80 天的測試數據上則實現 99.64% 的 F1 分數。
這表明 ARGUS 能夠學習使用者的行為,而無需長時間的訓練資料收集階段。

七、ARGUS 可能會有的問題

  • 如果入侵者知道 ARGUS 的存在,就可以嘗試以某種方式操縱系統,以避免偵測,同時仍能成功執行攻擊。
  • 因為記錄的使用者行為可能包含敏感資料,資料集的收集引起道德問題。

八、結論

  1. 因為發現:

    • IOT 設備容易受到不安全控制設備的攻擊。
    • 因為網路流量無法區分,而無法偵測基於網路的偵測機制的攻擊。
    • 現有的上下文防禦需要手動設定或有關設備的訊息。
  2. 因此,作者提出:

    • ARGUS 監控 IOT 設備環境以偵測利用不安全控制平面的攻擊。
    • 它是第一個可以偵測連接裝置設定的上下文攻擊的動態系統。
    • 就算在非常異質的環境中,也就是這些設備來自不同製造商,使用不同的通訊技術和協定,也能夠監控設備。
    • 在7天的訓練資料中,對 5 種不同設定的 ARGUS 進行了廣泛評估,結果顯示,即使在複雜的設定中,也能有效偵測 IOT 設備上的上下文攻擊,同時只產生很少的誤報(FPR ≤ 0.03%) 。

看了這篇文,再加上有同學之前做過 IDS 跟 AI 結合的應用,讓我思考是否最好跟 AI 掛上,才能應對更多的狀況,且是不是也是趨勢。
/images/emoticon/emoticon19.gif


上一篇
[Day27] 從產品了解入侵偵測系統:自駕車
下一篇
[Day29] 入侵偵測系統與 AI 結合的應用及方法
系列文
由淺入深,探索 NFV 與入侵偵測系統在其中的應用31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言