采用Zynq SoC實現(xiàn)Power-Fingerprinting網(wǎng)絡安全性
驅(qū)動工業(yè)物聯(lián)網(wǎng) (IIoT) 的“任意連接”實現(xiàn)了超高速增長,這不僅僅只是連接眾多迥然不同的設備。這還與跨各種廣泛應用收集、分析和操作的數(shù)據(jù)有關(guān)。IIoT 概念的關(guān)鍵點在于能夠確保設備的安全性,以便能夠收集和同化數(shù)據(jù)并向其他位置進行傳輸。
“任意連接”這一理念的超高速增長所引發(fā)的新漏洞遠遠快于公司可以實施的安全措施。通常最容易被忽略的漏洞之一就是資源受限制的硬件平臺,例如,2010 年攻擊伊朗核反應堆的震網(wǎng) (Stuxnet) 病毒就引發(fā)了全球范圍內(nèi)的關(guān)注。
PFP Cybersecurity 是一家科技公司,其制定的獨特方法能解決眾多安全性問題,例如因資源受限制的硬件平臺和網(wǎng)絡安全威脅(如震網(wǎng)等病毒)的增長所導致的問題。iVeia 通過充分利用 賽靈思’s Zynq-7000 All Programmable SoC 來幫助 PFP Cybersecurity 面向 IIoT 應用實施新穎、高效的算法型網(wǎng)絡安全解決方案。與 PFP 的基于 PC 的概念驗證相比最終設計在體積和功耗方面均減少或降低了一個數(shù)量級。
在探討我們兩家公司如何在 Zynq SoC 上使用名為 Power Fingerprinting (PFP) 的專有技術(shù)來開發(fā)和商用化某個 IIoT 網(wǎng)絡安全解決方案之前,我們首先來深入了解一下資源受限硬件平臺不斷增長的安全漏洞。
資源受限型硬件平臺的漏洞
由于標準工業(yè)控制設備使用資源受限制的嵌入式平臺,因而控制關(guān)鍵基礎設施的大量系統(tǒng)幾乎沒有網(wǎng)絡安全性規(guī)定。如今,這種系統(tǒng)級別漏洞正被認為是關(guān)鍵基礎設施的嚴重威脅。在關(guān)鍵基礎設施環(huán)境中,很多系統(tǒng)具備陳舊的處理器,使用唯一硬件,并且不支持典型網(wǎng)絡安全措施所引入的性能降級,它們?yōu)槿肭至粝铝撕箝T。最近的一次是在 2014 年 11 月,調(diào)查人員發(fā)現(xiàn)控制美國電廠、電網(wǎng)、水處理工廠和石油天然氣基礎設施的系統(tǒng)感染了病毒。[1]
四年前,由于震網(wǎng)病毒感染了伊朗負責運行核離心機的可編程邏輯控制器 (PLC),從而導致了離心機的毀壞。[2] 平臺過于僵化,就非常容易遭到入侵, PLC 就是其中的典范。PLC 很大程度上由嵌入式 MPU 組成,能自動對工業(yè)設備進行控制和監(jiān)控。企業(yè)通常會建立其 PLC 平臺網(wǎng)絡,但卻趨向于不為任何類型的安全監(jiān)控或完整性評估提供資源。[3] 同時為了防范零日攻擊(zero-day attack)或供應商未意識到的安全漏洞,他們也不會特別頻繁地去更新這些平臺。[4]
POWER FINGERPRINTING:一種新穎且有效的安全方法
PFP Cybersecurity 開始尋求能解決這類問題的解決方案,其不僅是能與現(xiàn)有安裝設備高效協(xié)作運行的非侵入式解決方案,同時也不需要安裝任何重要的設備或產(chǎn)生大量軟件更新。。該公司開發(fā)的 PFP 技術(shù)可作為完整性評估的創(chuàng)新方法。正如人類指紋是個人的唯一標識一樣,相同的理念也適用于特定系統(tǒng)或芯片。PFP 使用物理側(cè)通道(例如,功耗)來獲取在處理器中全面執(zhí)行協(xié)議棧內(nèi)部執(zhí)行狀態(tài)的相關(guān)信息,并且這與平臺或應用無關(guān)。PFP 技術(shù)將識別被系統(tǒng)認為正常運行的“指紋”。如果之后獲取的某個指紋不匹配,則可能表明某些方面出錯。
這可通過外部監(jiān)控器來實現(xiàn),該監(jiān)控器在物理上與目標處理器分離,并且在網(wǎng)絡攻擊破壞了目標時能以極高的準確度進行檢測。PFP 同時適用于新系統(tǒng)和原有系統(tǒng),是現(xiàn)有網(wǎng)絡安全性解決方案的補充,并且不需要在目標上安裝任何軟件或硬件。
PFP 可支持能捕獲通道側(cè)信號的各種傳感器,并依賴于計算密集型信號處理算法進行功能抽取,而且依賴機器學習進行分類。能通過各種方法來完成感應側(cè)通道,包括 AC 或 DC 電流或者在目標周圍獲取電場或磁場變化的電磁 (EM) 傳感器。PFP 從捕獲的信號中抽取唯一有差別特征,將其與一組基線參考進行比較并查找偏差?;€參考是“指紋”,可唯一識別的正常執(zhí)行目標軟件,并且是通過機器學習方法來抽取的。PFP 使用存儲的參考來實時檢測未經(jīng)授權(quán)的執(zhí)行偏差。
PFP Cybersecurity 成功開發(fā)了概念驗證用的監(jiān)控系統(tǒng),并使用如下設備對該系統(tǒng)進行了演示:個人計算機 (PC) 、 具備高速模數(shù)轉(zhuǎn)換器 (ADC)以及能將 EM 傳感器與數(shù)據(jù)采集設備(如圖 1 中所示)實現(xiàn)接口相連的定制模擬前端。PFP 算法引擎在 PC 上執(zhí)行,并以從數(shù)據(jù)采集設備收集原始 ADC 數(shù)據(jù)為切入點。系統(tǒng)的前端處理在設計方面類似于眾多多通道數(shù)字無線電接收器,即,在 ADC處收集可用于由多個數(shù)字調(diào)諧器進行處理(通常稱為數(shù)字下變頻,也可簡稱 DDC)的寬波段。這些 DDC 可調(diào)諧到更廣波段中的更窄相關(guān)波段,然后對這些波段進行過濾和抽取。此方法能產(chǎn)生高得多的可管理數(shù)據(jù)帶寬以進行后續(xù)跟蹤處理,并可極大簡化系統(tǒng)設計的模擬部分。
功能抽取和分類算法可處理 DDC 的輸出,并將其與一組基線參考進行比較,所有這些都必須進行實時操作才能確保它們察覺到任何入侵。控制算法的并行運行能夠確定ADC 采樣率及相關(guān)波段的處理參數(shù)。此進程可在原始 ADC 樣本的大型相鄰模塊上執(zhí)行大量操作,其中包括快速傅里葉變換 (FFT)。 此方法可基于目標平臺提供連續(xù)的 24/7 全天候完整性監(jiān)控。 如果檢測到入侵,F(xiàn)PP 監(jiān)視器就會通過提醒操作人員、將事件數(shù)據(jù)記錄到中央監(jiān)控站和/或采取積極措施來根據(jù)特定于應用的策略進行響應。
基于 PC 的概念驗證系統(tǒng)能夠產(chǎn)生的出色的結(jié)果,但由于多種原因,無法作為能夠在商業(yè)上廣泛部署可行系統(tǒng)。PC 系統(tǒng)基本包含一個監(jiān)視器節(jié)點,而每一個現(xiàn)實世界的安裝都可能需要幾百個監(jiān)視器節(jié)點。對算法性能的要求標明 PC 需要擁有功能強大的高端處理器。因而,其通常將需要風扇散熱、相對大型的機柜以及大功率電源。
為了最大限度降低系統(tǒng)的抗擾性,傳感器信號的模數(shù)轉(zhuǎn)換應在靠近目標的一端進行。目標處理器附近適當?shù)奈锢砜臻g和電源可用性因各個安裝的不同而有所差異,并且對于大部分安裝而言,PC 的大小與電源要求過于大型,而無法行得通。盡管 PC 的成本可能較低,但將其余組件與 PC 進行集成所帶來的成本和復雜性反而會讓導致難以承受的高昂成本。更不必說, PC 會使得監(jiān)視節(jié)點自身更容易受到網(wǎng)絡的攻擊。
從架構(gòu)方面而言,一種選擇可能是將所有原始數(shù)字信息通過標準網(wǎng)絡傳輸?shù)街醒胩幚砥骰蚍掌鳌?但由于 ADC 極高的采樣率,支持如此大量數(shù)據(jù)所需要的網(wǎng)絡基礎設施在安裝時可能會不可用,并且購買和安裝不僅復雜而且成本過高。
因此,分布式計算架構(gòu)是最理想的選擇,因為每個傳感器都具備一個計算節(jié)點。 此外,分布式架構(gòu)還能在同一單元中將傳感器模擬前端和算法處理高度整合在一起,從而降低成本和復雜性。此外,對于大部分安裝來說,現(xiàn)有的網(wǎng)絡基礎設施足以支持目前被認為是超低的數(shù)據(jù)速率。但是,在采用分布式處理處理的情況下,監(jiān)控器節(jié)點的設計就變得更具挑戰(zhàn)性,因為其自身必須滿足傳感器節(jié)點和監(jiān)控器算法處理的綜合要求。
因此監(jiān)控器節(jié)點必須體積小、功耗低、成本低。其必須能夠處理和緩沖來自于高速 ADC 的數(shù)據(jù),并且還能夠滿足算法的計算需求。此單元必須足夠小才能緊靠目標器件放置,進而不僅能限制線纜長度,而且還可提高傳感器的抗擾度。大小和潛在的安裝空間限制確定該單元可在無風扇的情況下運行;因而必須設計為低功耗。
由于在需要監(jiān)控的既定安裝中可能有數(shù)百個目標器件,因此該單元的成本必須非常低才能保持較低的總體安裝成本低廉。很多嵌入式處理器都能夠滿足上述大部分條件,例如部分基于流行的 ARM® 架構(gòu)的嵌入式處理器。除了大部分由 ARM 器件實現(xiàn)的低功耗和低成本之外,ARM 產(chǎn)品還擁有更多優(yōu)勢,例如對大型社區(qū)的支持、嵌入式操作系統(tǒng)和開發(fā)工具的可用性以及針對大部分器件的原生千兆以太網(wǎng)支持。
其中幾乎所有器件都欠缺處理原始 ADC 數(shù)據(jù)的能力(速率高達 8 Gbps)。它們也不具備對該數(shù)據(jù)進行任何有意義操作的數(shù)字信號處理 (DSP) 功能。
充分利用 ZYNQ SOC 以實現(xiàn) FFP CYBERSECURITY
這些更嚴格的要求使得 Zynq SoC 理想適用于該應用。Zynq SoC 可在單個全功能器件中將雙核 ARM 處理系統(tǒng)與高性能可編程邏輯高度整合在一起。這種組合不但可提供能滿足應用的處理需求的異構(gòu)計算架構(gòu),同時還能簡化基于 PC 系統(tǒng)的代碼移植工作。
Zynq SoC 的處理系統(tǒng)能提供上述嵌入式 ARM 處理器的所有優(yōu)勢,而增加的可編程邏輯也擁有若干優(yōu)勢。它們包含與 ADC 的無縫連接,并且還能夠處理 ADC 的全數(shù)據(jù)速率。此外,Zynq SoC 在可編程邏輯結(jié)構(gòu)中包含幾百個 DSP 模塊和幾萬個邏輯模塊,能夠利用它們對檢測和訓練算法實現(xiàn)顯著加速。Zynq SoC 還可全方位滿足針對低功耗、低成本和小尺寸的要求。
通過采用 28 納米可編程邏輯結(jié)構(gòu)和 ARM 處理系統(tǒng),器件可實現(xiàn)相對較低的功耗。由于 Zynq SoC 擁有極高的集成度,因而無需采用之前本來所必需的眾多支持電路和外設,這不僅能縮小總體系統(tǒng)設計,同時還可降低成本。此外,為了降低風險并加速上市進程,理想的情況是在設計中添加基于 Zynq SoC 的小型模塊級系統(tǒng) (SoM)。
iVeia 公司推出的 Atlas-I-Z7e 理想適用于嵌入式監(jiān)控器設計,因為其擁有如下優(yōu)勢:極高的性能功耗比(歸功于低功耗 Zynq 7020 器件和 LPDDR2 內(nèi)存);專用的可編程邏輯內(nèi)存在無需處理器干預的情況下對 ADC 數(shù)據(jù)進行緩沖;以及能在工業(yè)環(huán)境中可靠運行。Atlas 高度靈活的無縫接口可簡化基礎板設計。此外,SoM 開發(fā)套件還包含具備參考設計的免版權(quán)信號處理 IP 資源庫,其不僅能提供監(jiān)控器應用代碼的主要部分,而且還能快速提升設計功能。圖 2 描述了的基于 Zynq SoC 的最終監(jiān)控器設計。
如何執(zhí)行計算密集型系統(tǒng)功能
一旦選定硬件,現(xiàn)在的重點將轉(zhuǎn)變成為爸代碼從基于 PC 的設計移植到基于 Zynq SoC 的嵌入式平臺。由于對 PC 的計算負載具有重要意義,因此必須將 Zynq SoC 的可編程邏輯部分必須用于加速代碼并且不能僅充當無縫邏輯。一種可能的方法是將 PC 代碼移植到 ARM 處理器,對代碼進行概要分析以確定計算瓶頸制定計劃以將軟件分組為要在可編程邏輯中加速的代碼(對比于 ARM 處理器上運行的代碼)。但是,在側(cè)重加速上市進程的情況下,我們的最初方法是通過將這些具有等效、隨時可用的 IP 核(并且已知為計算密集型)功能轉(zhuǎn)移到可編程邏輯中,從而對設計進行分組。接下來,我們重構(gòu)并移植了 PC 代碼,然后對其余代碼進行概要分析以確定是否還需要任何其他加速。圖 3 對此方案進行了說明。
毋庸置疑,DDC 是可編程邏輯實現(xiàn)方式的理想之選,因為 DDC 內(nèi)核被納為 SoM 開發(fā)套件的一部分 ,并且 DDC 組的合并計算要求可超過 20 gigaflop。DDC 組是入侵檢測算法的一部分,其必須實時運行才能避免錯失入侵事件。DDC 組的抽取輸出可傳遞到 ARM 處理器,以便在軟件中進一步處理入侵算法。雖然輸出速率可達 2 Gbps,但卻能被高性能 AXI 端口輕松處理,這些端口可將 Zynq SoC 的可編程邏輯連接到 ARM 內(nèi)存。
通過使用應用編程接口的通用型 AXI 總線從 ARM 處理器對 DDC 內(nèi)核進行配置。API 允許在 ARM 上運行的軟件動態(tài)更改 DDC 參數(shù),以便中心頻率、帶寬和抽取速率方面的更新可以根據(jù)控制算法命令實時進行。
由于通過轉(zhuǎn)移 DDC 負載而顯著降低數(shù)據(jù)速率,因而以 766 MHz 頻率運行的兩個 ARM 中央處理單元 (CPU) 具有足夠的性能來支持后續(xù)處理進程。由于該設計在對稱多處理 (SMP) 模式中采用 Linux 操作系統(tǒng),因而能分離兩個 ARM CPU 內(nèi)核之間的處理,一個處理入侵檢測,而另一個處理控制算法以及可與中央監(jiān)控站的通信接口。此外,Linux 還具備穩(wěn)健可靠的網(wǎng)絡支持和安全性,可允許進行遠程網(wǎng)絡管理(這正是大部分安裝所必需的),同時禁用任何在不久的將來可能會出現(xiàn)漏洞的不必要特性。
控制處理需要原始 ADC 樣本的大型相鄰模塊。一個需注意事項是將原始 ADC 樣本通過高性能 AXI 端口從 ADC 接口邏輯直接串流到 ARM 內(nèi)存。但是,為了保留處理器系統(tǒng)的內(nèi)存帶寬以用于處理算法,我們反而選擇了將 ADC 數(shù)據(jù)緩沖在可編程邏輯專用的物理內(nèi)存中。這種內(nèi)存具有確定性的帶寬并確保相鄰 ADC 樣本的大量集合,而不會干擾 ARM CPU 的操作。
可將從專用可編程邏輯內(nèi)存中收集的數(shù)據(jù)通過其中一個高性能 AXI 端口傳輸?shù)?ARM,以保持低延遲并最大限度降低 ARM CPU 的開銷。我們使用多端口內(nèi)存仲裁器提供了一個收集端口和一個檢索端口。這種方法可提供在收集樣本的同時并發(fā)檢索樣本所需的仲裁,從而進一步減少延遲。
在對新分區(qū)的設計進行分析時,控制算法不會足夠頻繁地運行來充分地保持檢測精度。性能瓶頸在很大程度上歸因于 16,000 點 FFT 運算。借助賽靈思的 Vivado Design Suite 提供的 FFT IP 核,F(xiàn)FT 的性能將遠遠足夠,因為其設計為實時運行。但是,對可編程邏輯的其他資源需求將強制設計利用更大的 Zynq 7030 器件。
幸運的是,來自 Project Ne10 的開源 Ne10 庫提供了專為 ARM 的 NEON 架構(gòu)擴展優(yōu)化的 FFT 功能,這加速了通用浮點和固定點數(shù)學運算。盡管來自 Ne10 庫的 FFT 功能不會像賽靈思 IP 核那樣實時運行,但其可充分地加速控制算法以保持檢測精度。
最終的基于 Zynq SoC 的監(jiān)控設計平臺可與基于 PC 的原型相媲美,有時甚至略勝一籌。而且,最終的設計比基于 PC 的設計制造成本明顯降低,并且消除了 PC 設計存在的尺寸大、功耗高這兩大市場壁壘。相對來說,Zynq SoC 設計在尺寸和功耗方面幾乎降低了一個數(shù)量級。
PFP Cybersecurity 開發(fā)了 Power Fingerprinting 技術(shù)來解決在關(guān)鍵設備中檢測由于工業(yè)物聯(lián)網(wǎng)趨勢而暴增的網(wǎng)絡攻擊的復雜問題。借助業(yè)經(jīng)驗證的技術(shù),出現(xiàn)了如何設計系統(tǒng)以實現(xiàn)技術(shù)并同時滿足市場需求的問題。借助 Zynq SoC,PFP 技術(shù)可在復雜且計算強度大的處理能力需求與低成本、小尺寸、低功耗的市場需求之間取得最佳平衡,從而在商業(yè)上具有可行性。
圖 1 – 基于PC的監(jiān)控系統(tǒng)中的模塊包含前端模擬、數(shù)據(jù)采集和處理系統(tǒng)功能。
圖 2 – 基于Zynq SoC的監(jiān)控系統(tǒng)是通過iVeia的Atlas-I-Z7e系統(tǒng)級模塊構(gòu)建的。
圖 3 – 該圖表顯示了Zynq SoC的PS和PL模塊(包含數(shù)據(jù)流)的功能分區(qū)。
評論