深扒一下設備指紋技術(一)
一、設備指紋的用途
物聯網時代,網絡環境中充斥著數量巨大、功能各異且種類繁多的物聯網設備。如何在復雜且危險的網絡環境中準確識別并有效監管這些設備,是物聯網生態里各行各業都亟需解決的問題。
傳統的解決方案一般依賴設備名稱、簽名、標簽、編碼等標識符來標識設備,然而這類基于標識符的技術存在明顯的不足。首先,在日益復雜且充斥大量各類設備的網絡環境中,標識符很容易被修改或復制偽造。此外,為了避免與其他設備重復,復雜度較低的單個標識符很難滿足唯一標識一個設備的需求,多標識符解決方案日漸復雜;而設備標識符由設備生產廠商分配,設備的識別和監管卻由設備的使用者負責,種類繁多的標識符方案對于使用者是不通用且難以修改的。最后,在隱私合規日漸重要的當下,由于通過一些設備唯一標識符可以很容易關聯到使用設備的用戶個體(如手機IMEI號),不當使用這些標識符極易造成合規風險。
通過設備的行為生成設備的指紋并對指紋進行評估,可以有效解決以上問題。有鑒于此,基于行為的設備指紋技術逐漸成為設備指紋技術研究的熱點。
1.1識別設備
識別設備是設備指紋的核心能力。該能力對網絡空間測繪、資產管理、攻擊朔源、威脅情報等任務至關重要,只有能夠準確識別網絡中的設備,相應的網絡安全治理工作才能發揮相應作用。此外,不光網絡安全治理的許多任務需要依賴識別設備,許多業務也需依賴識別設備才能開展,諸如用戶畫像、廣告投放、風險控制、反欺詐等業務都出現了通過基于行為的設備指紋來識別設備的優秀實踐案例。
對于不同的任務,對識別設備粒度的要求也不同。依照識別設備的粒度劃分,用于識別設備的設備指紋方案主要可分為:識別設備種類、識別設備型號、識別設備個體三種。
1.1.1 識別設備種類與型號
并非所有的設備指紋方案都需要能夠關聯到設備個體。一些任務,如粒度較大的網絡空間測繪,關注于識別某一網絡中存在多少個人電腦、攝像頭、手機等設備。除此之外,一些任務,如盤點某一類型工業設備各軟硬件版本的臺數,也僅需關注于區分同類設備的不同型號。
由于這些任務不需要精確關聯到設備個體,我們可以收集對應設備種類或型號的特征行為,以此作為指紋,再通過簡單的規則匹配進行指紋評估,就可以完成設備種類與型號識別。
1.1.2 識別設備個體
以識別設備個體為目標的設備指紋方案通常需要收集更多的設備行為數據來構建設備指紋以達到更高的識別粒度。這樣的設備指紋不光可以用來標識個體設備,也可以用來對設備用戶進行建模畫像和身份認證。
該類設備指紋通常基于用戶的輸入與設備軟硬件行為這兩類行為數據構建。由于用戶輸入在不同設備、不同業務上存在較大差別,缺乏一般規律,故本文不詳細展開介紹。關于設備行為數據的介紹詳見第三章。
1.1.3 粒度與應用場景
以識別設備為目的的設備指紋方案中,設備指紋起到類似標識符的作用,標識設備的種類、型號或個體。在具體應用中,這類設備指紋一般僅作為設備的標識,需要結合其他應用數據才能實現具體任務。表1展示了不同識別粒度的設備指紋與對應的應用場景。

以識別設備個體為目標的設備指紋方案具有豐富的應用場景,也是當前設備指紋研究的熱點方向。
1.2異常檢測
基于設備行為的設備指紋方案通過設備的行為數據來構建指紋。然而這些行為數據不光能夠用來構建設備指紋,也能夠反映設備的運行狀態。以檢測異常為目標的設備指紋方案,通過采集這些行為數據以監測設備的運行狀態。按照目標異常來分類,這類設備指紋方案主要可分為以監測惡意行為為目的與以監測設備故障為目的兩大類。
1.2.1 惡意行為監測
以惡意行為監測為目標的設備指紋通常以IDS的形式部署。基于目標惡意行為的不同,這類設備指紋方案收集的行為數據維度也不同。近年來,設備指紋研究面向的惡意行為包含了:流量異常、僵尸網絡、DDoS攻擊、Flash Crowd、端口掃描、網絡嗅探、未授權連接、勒索軟件、中間人攻擊、漏洞利用、軟件篡改、固件篡改等[1-5]各類惡意行為。
1.2.2 設備故障監測
以設備故障檢測為目標的設備指紋通過設備的異常行為數據來判斷設備是否存在硬件、服務或網絡上的故障。近年來,設備指紋研究面向的故障主要覆蓋:傳感器故障、物理損壞、系統錯誤、資源耗盡、網絡服務故障等方向[6-8]。
1.2.3 應用場景
以異常監測的設備指紋方案,一方面依靠指紋對設備進行標記和識別,一方面可以直接根據通過指紋收集的設備行為數據對設備的異常進行監測與分析。評估設備是否出現異常的方法,不光基于規則和知識,也可以基于數理統計、機器學習或時序分析。具體評估方法將在下一期進行介紹。
二、覆蓋設備種類
設備指紋的研究覆蓋各類設備。由于不同設備的屬性、行為、交互方式、工作環境和數據收集方式均不相同,對于不同設備的設備指紋方案之間往往存在很大差別。
大致上來分,近年關于設備指紋的研究主要面向以下設備:
· 個人電腦:家庭或工作環境使用的電腦,按照供能機制可分為臺式機與筆記本。
· 移動設備:主要包含智能手機和平板。這些設備的功率和能耗有一定的限制,且需要內置電池。
· 嵌入式系統:功耗低,性能較低,功能較少,通常被設計和部署來執行一些特殊任務的設備。
· 工控設備:這類設備用來監管、控制或執行工業流程中重要任務,諸如一些傳感器、制動器等部署于數控系統中的設備。
· IoT設備:其他一切擁有處理能力且聯網的設備,都可以被看作IoT設備。這類設備覆蓋面很廣,如智能穿戴設備、無人機等,都可算作IoT設備。
值得注意的是,伴隨著虛擬化技術的發展和網絡的復雜化,設備指紋近年也被應用于一些不符合傳統“設備”概念的軟件組件與服務中,以取代傳統軟件中一些基于簽名的方案:
· 云服務系統:包含IaaS、PaaS、SaaS、霧計算、邊緣計算在內的,通過網絡獲取遠程服務資源的系統。
· SDN/NVF系統:遵循SDN架構(網絡控制與數據平面解耦)或NVF架構(網絡設備通過虛擬化技術由軟件實現)的系統。
· 容器與微服務:通過容器(將應用代碼和依賴一起打包以實現輕量級部署)或微服務(將單個功能以應用的方式部署以減少耦合)方式部署的系統。
集群:一些列電腦、服務器等(大多數使用linux系統)的設備整合資源作為一個整體提供服務的系統。

圖1 設備指紋技術覆蓋的設備種類 引用自
虛擬化技術普遍應用和高速發展的當下,諸如云手機這樣的虛擬設備仍在不斷涌現。從監測和管理的層面看,軟硬件之間的差別正在逐漸縮小。故而設備指紋的研究范圍日漸廣泛,幾乎覆蓋網絡中的所有軟硬件資產。雖然該技術仍被稱為設備指紋,但設備指紋技術實際覆蓋的范圍已脫離傳統“設備”的定義。不論是取代標識符或簽名來識別軟硬件資產,還是通過行為數據來監測軟硬件異常,設備指紋技術在各類資產上都能發揮作用。
三、行為數據來源
設備指紋技術通過收集設備的行為數據來標識設備或監測設備異常。雖然針對不同的任務與不同的設備,不同設備指紋方案搜集的數據大相徑庭,但依照行為主體,可以將其分為:用戶行為、設備行為兩大類。雖然用戶行為數據是許多設備指紋方案中非常重要的一部分,但如前文所述,不同設備不同任務的用戶行為可能存在巨大偏差,故本文暫不詳細介紹。
對于設備行為,依照行為數據與設備的關系,大體上可以分為以下兩大類:外部數據與內部數據。篇幅所限,本期先為大家帶來外部數據的介紹。
3.1外部數據
外部數據指通常需要在設備外部添加額外的收集器(如網關、天線等)進行收集的設備行為信息。這些信息一般通過設備對外發送的信號進行收集。
3.1.1 網絡通信
設備發出流量包的請求頭與請求負載均包含許多有意義的行為特征。通信地址,協議種類,協議中各類參數的設置,負載包的內容,往往能很直觀地反映設備的種類、型號與工作狀態。
采用網絡通信行為這一特征維度來構造指紋的設備指紋方案非常常見,該方案具有非常明顯的優點。網絡通信是一個對網絡中各類設備都普遍適用的方案,幾乎所有網絡中的設備都會通過網絡對外通信,且僅需一個網關就可以捕捉這些設備的通信行為數據。此外,網絡通信流量包含許多信息,分析通信流量信息能夠為監測設備的運行狀態提供許多便利。
然而,網絡通信行為數據可能因通信遭受攻擊被重放或篡改,許多網絡通信也會對信息進行加密。這些因素給通過網絡行為數據的采集和分析帶來了困難。
在網絡通信行為數據這一特征維度,部分研究僅通過設備在單位時間內的通信吞吐量與通信地址來構建設備指紋。復雜一些的方案會對流量包頭中的屬性與流量負載的統計信息進行分析。最復雜的設備指紋方案,不光會嘗試結合應用層對流量的負載內容進行分析,甚至會嘗試對加密流量進行分析。
3.1.2 時鐘偏移
由于設備中各部件布線長度及負載不同,同一個時鐘信號到達相鄰兩個時序單元的時間會存在細微的不一致。由于生產工藝的原因,即使對于同類不同個體的設備,其時鐘偏移也會有細微差別,且這一細微偏差可從設備外部進行采集。

圖2 時鐘偏移的產生原理
時鐘偏移這一維度的特征雖然在各類硬件設備中普遍存在,難以偽造,且能夠比較方便地進行收集,但仍存在明顯的缺點。首先,時鐘偏移這一維度的特征包含的信息太少,導致該特征基本僅可用于標識設備;此外,時鐘偏移是一個接近0的細微偏差,因此對該數據的測量精度要求很高,且若網絡中存在大量設備,極易產生重復。因此,時鐘偏移這一維度的特征一般用來在已知設備類型或型號的前提下,從網絡中的少量該類設備中標識設備個體。
3.1.3 電磁信號
所有硬件設備均會對外部散發電磁信號,且這些電磁信號的特征很難被篡改或干預。一些研究通過廣播信號的頻率、相位等特征來識別無人機的型號。

圖3 電磁信號的頻率與相位特征
電磁信號這一維度的特征雖然通用且難篡改,但也存在明顯的缺點。首先,與時鐘偏移類似,電磁信號包含的信息難以被分析從而用來監測設備運行狀態;此外,由于電磁波在傳播中會出現損耗,電磁信號的測量必須在物理空間上靠近目標設備。
四、小結
伴隨物聯網、虛擬化等技術的發展,加之網絡攻擊的常態化與隱私保護需求的強化,傳統的標識符或簽名技術已很難適應當前技術環境。本文對已廣泛受到關注的設備指紋技術進行系統性的介紹,并跟蹤近年來關于設備指紋技術的研究成果,闡述其研究對象與研究手段。
本期我們對設備指紋技術的用途、研究范圍做了介紹,并對近年設備指紋研究中涉及到的部分設備外部行為數據進行了闡述。下一期本文將從設備行為數據中的內部行為數據繼續介紹設備行為數據,以及這些研究中對設備指紋采用的評估方法,敬請期待!