<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    通過更改3D打印機編譯器進行的信息泄漏攻擊

    VSole2022-10-27 09:05:40

    在網絡物理增材制造系統中,側信道攻擊已被用于重建正在生產的 3D 對象的 G/M 代碼(這是給制造系統的指令)。在產品大規模制造并投放市場之前的原型設計階段,這種方法通過最意想不到的方式從組織竊取知識產權是有效的。然而,由于缺乏足夠的側信道信息泄漏,攻擊者可能無法完全重建 G/M 碼。在本文中提出了一種放大信息泄漏的新方法,通過暗中改變編譯器來提高 G/M 代碼恢復的機會。通過使用該編譯器,攻擊者可以輕松控制各種參數以放大 3D 打印機的信息泄漏,同時生產所需的對象并對真實用戶隱藏。這種類型的攻擊可能由有權訪問工具鏈并尋求高度隱身的強大攻擊者實施。本研究已經實現了此編譯器,并證明與之前的攻擊相比,它從四個側信道(聲學、功率、振動和電磁)恢復 G/M 代碼的成功率提高了39%。

    Introduction

    信息物理系統 (CPS,Cyber-Physical System) 已被公認為第四次工業革命 (工業 4.0) 的推動者。由于網絡和物理世界的緊密結合,CPS 能夠增強與周圍物理世界的互動。事實上,以 CPS 為基礎,到 2030 年,工業 4.0 預計將創造 15 萬億美元的全球 GDP 價值。然而,該預測并未考慮與 CPS 在生活的各個方面(包括最敏感和最關鍵的方面)廣泛傳播相關的挑戰。設計人員必須解決的主要挑戰之一是確保這些系統的安全可靠運行。

    安全性必須保證的基本屬性之一是機密性。違反保密規定會造成重大的經濟損失。例如,當丟失的信息是知識產權 (IP,Intellectual Property) 時,情況確實如此。總體而言,失去知識產權將增加制造業的財務損失。保證IP機密性的問題已被研究界廣泛研究,也與CPS領域有關。有趣的是,使用增材制造構建的 IP 的機密性可以通過利用側信道信息來重建 3D 打印機用于生成對象的 G/M 代碼來破壞。G/M 代碼是發送到 3D 打印機以控制其運動和機器參數的指令。

    3D 打印機的數字流程鏈涉及編譯 G/M 代碼的各種步驟(見下圖)。第一步是創建 3D 模型。該模型是使用計算機輔助設計 (CAD) 工具設計的,該工具生成立體光刻文件 (STL),其中包含用于描述模型的 3D 坐標。在下一步中,計算機輔助制造 (CAM) 工具(G/M 代碼編譯器),如切片和刀具軌跡生成,獲取 STL 文件,逐層切片,并找到最有效的路徑來遍歷一個單層。然后將該路線轉換為 G/M 代碼并發送到 3D 打印機。然后這些代碼由 3D 打印機固件解釋以生成物理對象。

    與任何其他系統一樣,3D 打印機會通過側信道泄漏信息。例如,聲學或電磁等側信道取決于正在執行的特定操作,并最終取決于正在打印的對象。利用這種關系,可以對發送到 3D 打印機的模型進行逆向工程并重建生成文件(例如 STL 文件、G/M 代碼等)。此外,通過側信道收集的信息允許 獲取有關過程和機器參數的信息。由于 3D 打印機用于實際制造和快速原型制作,因此泄露打印對象的信息將使對手獲得復制它所需的所有信息,從而給相關公司造成重大經濟損失。然而原始文件的重建可能非常困難,因為攻擊者需要精確記錄 3D 打印機側信道中發出的信號。

    A.示例

    本文中的方法類似于其他領域中使用的方法,在這些領域中,添加木馬、惡意軟件或更改系統軟件以從隱蔽渠道泄漏信息已被證明是一種有效的攻擊形式。例如在系統中插入惡意軟件,以將硬盤驅動器的 LED 轉換為從氣隙計算機泄漏敏感數據。

    B.貢獻

    在本文中介紹并演示了一種新穎而強大的攻擊,其中攻擊者更改編譯器以增加原型設計過程中泄漏的信息量。這可以顯著簡化通過利用側信道執行的逆向工程攻擊。將本文分成多個部分,系統地分析了這種更強的攻擊場景。第一部分將解釋如何利用側信道來獲取有關 G/M 代碼的信息。接下來的兩節將解釋新攻擊模型以及如何修改編譯器以連續增加泄漏。最后演示了如何通過利用側信道計算的互信息來重構 G/M 碼。

    通過這項工作證明了跨域攻擊模型的可行性,其中攻擊者引入網絡域變量的變化以增加物理域中的信息泄漏量。相信在不久的將來,當信息物理設備將完全滲透到生活時,這將非常重要。為了演示,已經在基于 3D 桌面打印機的熔融沉積建模 (FDM,Fused Deposition Modeling) 技術中實現了所提出的攻擊模型。

    Information Leakage through Side Channels of 3DPrinter

    從高層次的角度來看,任何 3d 打印機都具有軟件(例如 G/M 代碼)、電子設備(控制器、步進電機等)和機械設備(軸運動、皮帶和滑輪等),這些方法與信息論方法高度相關。G/M 代碼可以根據力學劃分成組,例如噴嘴速度、線段角度等。并且,以這樣的方式選擇側信道,使得它們中的每一個都與每個分割的G/M碼共享互信息。并且以這種方式對編譯器進行調和以減少側信道數據的同質性以增加信息增益。將信息與機械裝置耦合的側信道如下所述。

    1.電磁(EM):地球磁場因打印機金屬結構(即擠出機、皮帶和皮帶輪等)的運動以及步進電機的電磁網而發生偏移。這被稱為磁偏差,這種非線性效應的準確模型很復雜。這種偏差的數據驅動建模可以對金屬結構的運動進行建模,由此可以重建直接涉及金屬結構運動的 G/M 代碼。可以通過使用 G/M 代碼(例如 M566)來增強這種信息泄漏,該代碼用于控制線段末端的速度。

    2.能量:大多數最先進的桌面 3D 打印機使用兩相混合步進電機,產生扭矩來移動噴嘴。扭矩的產生取決于負載,即物體的形狀。另一方面,電機中產生的扭矩與定子繞組中產生的磁通量 (TαH) 成正比,這也取決于提供給每個電機的步進功率 (H α I)。因此,幾何形狀的形狀與電機的功率數據之間存在相關性。例如,可以通過更改控制電機功率的 G/M 代碼 M17、M18 來增加功率數據中的這種互信息。

    3.振動:3D打印機有四個步進電機。其中三個用于在 X、Y 和 Z 軸中的每一個上移動打印機噴嘴,第四個電機用于在打印時擠出燈絲。這些電機由于作用在不同軸上的定子鐵芯上的波動徑向力而產生振動。這種振動具有噴嘴運動方向的相互信息,可以通過收集振動側信道數據來建模。這種互信息對于重建直接控制噴嘴在不同軸上運動的 G/M 代碼集是必要的,并且可以通過改變編譯器以受控方式增加電機的振動來增強這種信息增益(例如,M566)。

    4.聲學:聲學側信道與機體的振動和電機的轉速密切相關。下圖顯示,隨著電機速度的增加(從 500 mm/min 到 4800 mm/min),較高的頻率分量逐漸被引入到音頻頻譜。因此,通過調整 G/M 代碼(例如 M204),可以在線路末端提高電機的速度,從而通過聲學側信道泄漏有關 IP 的信息。

    Attack Model Description

    在先前提出的對 3D 打印機的側信道攻擊中,攻擊者有動機竊取設計者打印的 3D 對象中固有的知識產權(下圖)。在本文中設想了一個更強大的攻擊者,其動機與之前的攻擊者相同,但還可以訪問 3D 打印過程中使用的工具鏈。攻擊的 IP 目標最終包含在打印對象的設計文件中,攻擊者以各種參數的形式竊取該文件,例如幾何嘗試、工藝參數、機器參數。

    由于側信道攻擊不需要更改設備本身,也不需要其他侵入性更改(例如訪問網絡),因此它們可能更難被識別和預防。這些攻擊可以由有權訪問進行打印的位置但無法訪問設計文件的惡意員工進行,以進行非法復制。已經表明,這些類型的側信道攻擊可以成功地用于重建有關由用于原型制作的 3D 打印機打印的 IP 的信息。

    正如在模板攻擊中通常所做的那樣,在訓練階段,攻擊者將通過使用與將成為攻擊目標的設備類似的設備從各個側信道中提取各種時域和頻域特征來表征 G/M 碼。這些數據將用于訓練和創建一個模型,將 G/M 代碼與相關的模擬發射聯系起來。由于此訓練是使用類似于目標打印機的 3D 打印機完成的,因此攻擊者可能還會使用高級機器學習算法(例如,隨機森林或神經網絡)來創建模型,從而提高模型的準確性和,最終改進攻擊。在攻擊階段,攻擊者通過暗中放置傳感器(如麥克風和加速度計)來非侵入性地監視側信道,從而獲取這些模擬發射信號。使用先前訓練的分類器重建部分 G/M 代碼,并最終重建打印對象的整個設計文件。然而,如前圖所示,由于潛在空間中的低熵,這種方法可能無法準確預測復雜設計的部分 G/M 代碼。因此,攻擊者可能會重建與打印的 3D 對象不完全匹配的 G/M 代碼。

    A.新攻擊模型

    在當前的攻擊模型中都假設攻擊者無法訪問軟件編譯工具鏈。然而,這種情況正在迅速改變。由于現在更強大的攻擊者能夠結合設計變更(例如硬件木馬),因此深入研究這種現實的攻擊模型非常重要(例如,以前的工作證明了增加受保護邏輯的側信道泄漏的可能性,通過改變邏輯門的摻雜極性來改變風格)。來自設計工具的威脅是現實的,因為它們在其他安全領域也越來越重要。在文中考慮一個攻擊者,它有可能改變用于生成要打印的文件的設計工具,并將這種修改與側信道攻擊相結合,以更容易的方式恢復設計文件。

    B.工具鏈更改

    在攻擊模型(下圖)中,攻擊者只需要修改和更改工具鏈一次,即添加惡意修改代碼,從而在不妨礙 3D 打印機正常運行的情況下增加通過側信道的信息泄漏。大多數用于原型制作的桌面 3D 打印機使用開源 CAD、CAM 和固件,攻擊者可以輕松訪問這些。

    至少在三種情況下可以更改工具鏈。在第一種情況下,工具提供商或打印機制造商在工具鏈或打印機固件中引入了惡意修改,并且該修改將存在于所有打印文件中。這種威脅類似于前面提到的硬件木馬的威脅模型,其中由惡意代工廠插入的木馬通過削弱對策來改變芯片的側信道穩健性。在第二種情況下,可以訪問制造工具鏈或固件(其中大部分是桌面 3D 打印機的開源)源代碼的惡意員工惡意修改它們。與設計文件的簡單副本(示例 CAD 設計)相比,工具鏈的修改可能是更吸引人的網絡攻擊形式,因為它們更隱蔽且更難以檢測。因此,他們可以在公司不知情的情況下將逆向工程設計的可能性保留更長的時間。第三種情況是攔截,過去曾有傳言稱其被使用,最近已被證明是切實可行的。在這種情況下,競爭對手可以在交付過程中攔截打印設備,修改編譯器或固件,然后繼續向客戶發貨。在這種情況下,增加打印過程的側信道而不是注入其他類型的修改的主要原因主要是由于攻擊的隱蔽性和(幾乎)不可能證明修改的惡意性質。

    C.實驗:擴大信息泄露

    信息論中的一個基本思想是,同質事件比確定性較低的事件具有更少的信息。本文采用了這個思路。為了證明編譯器修改可以通過減少側信道的同質性來增加信息泄漏,對現有設置進行了實驗。3D 打印機制造的物體的表面紋理是噴嘴流量的直接函數。通過從泄漏表面紋理信息(例如,厚度、尺寸)的側信道中提取各種時域和頻域特征,使用隨機森林回歸器等數據驅動建模方法對創建的表面紋理之間的關系進行建模。來自噴嘴的物體和流速。現在,從這個數據驅動模型預測表面紋理的質量,發現預測誤差在增加流量的同時減少,如下圖所示。在 3D 打印機中,最佳流量在于80% 到 120% 的范圍。通過更改工具鏈中的代碼 M108,該流速在最佳流速的 20% 到 200% 之間變化,步長為 10%。從下圖可以看出,平均預測誤差隨著流量的增加而減小。可以通過以下方式在數學上解釋這一點。如果 X = {修改后的編譯器指令},Y = {收集的側信道數據},條件熵可以寫為 H(Y|X) = H(X,Y) – H(X)。這里,作為聯合熵,H(Y|X)大于H(Y),由于X的引入,H(X,Y)增加。隨著流量的增加(即M代碼的改變)增加了設計潛在空間的聯合熵,這反過來又增加了互信息。

    在本文中,為了證明通過側信道最大化信息泄漏的攻擊的可行性,針對 CAM 工具進行分析,它從 STL 文件編譯 G/M 代碼。通過合并更改的代碼,將證明攻擊者可以提高他們預測部分 G/M 代碼的成功率,而不會妨礙 3D 打印機的正常運行。舉一個例子,在使用和不使用對編譯器的攻擊的情況下重建部分 G/M 代碼。在重構 G/M 碼時,部分 G/M 碼之一是在每一層中移動的線段的角度。當移動角度為 45度時,該線在 X 軸和 Y 軸上的移動相等。這意味著負責移動 3D 打印機噴嘴的執行器(例如步進電機)具有類似的控制信號。如果它們的物理實現(承載的負載、支撐步進電機的框架等)相同,那么它們將發出非常相似的模擬發射,例如聲學。這將使區分 X 和 Y 運動之間的角度變化成為一項重要的任務。在這種情況下,攻擊者可以通過引入每次角度改變時觸發的代碼,利用改變的編譯器來揭示角度信息。例如,可以通過在每次角度變化時稍微改變噴嘴冷卻風扇的速度來實現,而不會被用戶察覺。

    Compiler Attack

    攻擊概述如下圖所示。旨在從側信道分析開始重建 G/M 碼的攻擊包括兩個階段:分析階段和攻擊階段。

    A.分析階段

    在分析階段,假設攻擊者可以訪問目標設備或目標設備的相同副本。這個分析階段類似于在模板攻擊 [30] 期間進行的分析,之前的研究已經證明模板攻擊是一種非常強大的側信道攻擊形式。使用 n 個訓練 G/M 碼,Gn={g1;g2; …; gn} ,攻擊者可以表征 m 個側信道,Sm={S1;S2; …; Sm}。從每個側信道,能夠觀察到由隨機變量表示的模擬發射 Om={O1;O2; …; Om}。用隨機變量表示這些發射,因為希望通過最大化發射和設計變量之間的互信息來增加泄漏。攻擊者從這些側信道中的每一個收集數據,對其進行過濾,并提取多個時域和頻域特征(假設總共有 l 個特征)。攻擊者最終會為每個側信道獲得以下矩陣:

    其中ofl-in 是側信道Si 的隨機變量Oi的值,n 是收集的總排放數據,l 表示從發射數據中提取的總特征。盡管可以從每個側信道中提取不同數量的特征,但這里假設提取的特征數量相似且相同。根據攻擊者的不同,他們可能會使用單變量或多變量分析來估計模型函數 M^,該函數近似于側信道發射和網絡數據之間的關系。假設攻擊者可以無限制地訪問接近目標 3D 打印機的系統,這樣他們就可以獲得與 G/M 代碼 Gi 對應的模擬發射 Oi 的大樣本,從而使用機器學習算法準確估計模型函數。如前所述,這些假設已被大量處理模板攻擊的文獻證明是現實的。模型函數可以簡單地選擇為滿足以下條件的具有 k 個值的函數:

    其中k = 1; 2; …; N是用于估計模型函數的各種模型函數(如神經網絡、隨機森林、支持向量機等)的數量。給定相應的模擬發射,訓練模型函數以估計 G 代碼 g^i=f^k(oi,φ)。φ={φ1,φ2,φ3,…φt} ;是用于調整模型函數的參數向量。對應于所使用的模型函數(由上式中的 k 索引),確定長度 t 和 f 的值。

    在一個相對受保護的環境中進行了分析階段,將打印機放在一個在整個階段都沒有人訪問的房間里。然而,房間僅通過一扇關著的門與其他環境隔開,因此可能來自外部的噪音可能已包含在模型中。打印機被放置在一張普通的桌子上,不支持衰減振動。還對在非絕緣環境中運行的常規設備進行了功率和電磁測量。相信在更加隔離的環境中進行分析會帶來更好的結果,因為它會將攻擊者置于更理想的情況下。但是由于對提議攻擊的實際影響感興趣,因此構建了設置以模仿攻擊者可以使用相對便宜的設備輕松安裝的設置。與任何模板攻擊一樣,目標分析設置越接近,成功的機會就越高。在這里提出的攻擊旨在放大信息的泄漏,從而在分析設置與攻擊設置非常不同的情況下也更容易被攻擊者檢測到。

    B.攻擊階段

    在攻擊階段,模型函數 m : G→O 或 f^k(., φ)從前式中獲得的 fT 用于重新構建 G/M 代碼。使用各種算法(如神經網絡、隨機森林、支持向量機等)來估計模型函數。對于這些算法 k 中的每一個,選擇對 G 代碼估計誤差給出最少模擬發射的函數。攻擊者必須從側信道獲取所有模擬信號以估計完整的 G/M 碼。估計函數的準確性決定了攻擊的準確性。在大多數攻擊中,G/M 代碼的重建是使用多個模型函數完成的,每個模型函數負責估計 G/M 代碼的部分信息。將 G/M 代碼劃分為{Q1;Q2;Q3;…;Qr}的不相交塊,使得UQi=G。這個劃分是基于G/M-code的每條指令負責同時完成多個驅動(例如確定線段的角度和長度為打印)。因此,可以將這種 G/M 代碼進一步分解為更小的控制動作。有模型函數{m^1(Q1i,Qi), m^2(Q2i,Qi) ,…, m^r(Qri,Qi)}共同估計 G/M 代碼。在增材制造中尤其如此,因為 IP 隱藏在物體的幾何形狀中,打印時揭示物體幾何形狀的主要信息是:噴嘴的移動進給速度、線段的角度、距離每個軸的運動等。此信息與其他信息一起出現在 G/M 代碼中。因此,可能只需要{Q1; Q2; Q3; …;Qr}的子集來重建幾何。此外,不同的側信道揭示了關于 G/M 代碼的不同信息集。

    然而,考慮到攻擊者在實際場景中可能無法訪問可以收集每個側信道發射的無噪聲樣本的環境,重建 G/M 代碼可能會出現問題。為了改善這種情況,設想了一個更強大的攻擊者,它能夠通過編譯器修改和生成 G/M 代碼,以最大限度地通過側信道泄漏信息。事實上,通過修改計算機輔助制造工具(如切片算法和刀具軌跡生成算法),攻擊者可以很容易地在設計變量中引入變化{α1; α2; α3; …; αn},使得估計的模型函數f^k(., φ)可以更準確地重構 G/M 代碼。

    C.編譯器修改

    在這項工作中為了惡意修改編譯器,確定了三種可以在不影響 3D 打印機正常運行的情況下增加信息泄漏的方法。這些變量是機器特定的。詳細地說,使用的變量是:

    1.風扇轉速(A1):機器碼M106控制風扇轉速,也控制噴頭溫度。風扇速度可以在 0 到 255 的范圍內變化。風扇速度的微小變化可以增加聲、磁、功率和振動側信道內的熵,從而更容易提取時域和頻域特征.風扇速度的這些變化不得導致噴嘴溫度對更改的編譯器中考慮的材料的平穩流動產生負面影響。

    2.線段末端的速度(A2):為了進行逆向工程,攻擊者需要逐層重建用于打印 3D 對象的每個線段。因此,通過使用 M566 改變線段末端的速度,攻擊者可以大幅增加兩條線段之間的速度變化(即增加信息增益),從而使他們能夠破譯線路的變化。然而,速度變化不能太大以引起機械沖擊或阻礙材料通過噴嘴的沉積。

    3.步進電機的電源 (A3):M 代碼 M17 為所有步進電機供電,而 M18 禁用所有步進電機。該變量可用于增強電源和電磁側信道中的信息泄漏。然而,步進電機應該快速關閉,這樣它就不會影響操作,同時影響到足以顯示某些信息的側信道。

    還有其他幾種 G/M 代碼可用于在合法用戶不知情的情況下優化從側信道泄漏信息,例如 M108 設置擠出機速度,M113 設置擠出機脈沖寬度調制,M140 設置打印床溫度,M204 設置步進電機的加速度等。這里只提供少數幾個來證明攻擊模型的有效性。

    為了量化從側信道泄漏的信息量,使用分區 G/M 碼 Qr 和每個側信道中觀察到的模擬發射之間的互信息作為度量。直觀地,互信息表示如果已知模擬發射 Om,特定 G/M 碼 Qr 的信息有多少可用。用大寫字母O,Q,G表示離散隨機變量,并用小寫字母o,g,q表示這些隨機變量所取的值。盡管可以使用描述系統物理特性的基于第一原理的方程來計算來自側信道的模擬發射值,但這一步并非微不足道。相反,可以將這種模擬發射表示為隨機變量,并使用傳感器觀察其實現。此外,根據打印的 3D 對象、切片算法、工藝參數等,可以將不同的 G/M 代碼傳遞給 3D 打印機。由于不假設攻擊者事先知道 3D 對象或過程參數,因此將這些傳遞給 3D 打印機的 G/M 代碼視為具有某種底層分布的隨機變量。然后將互信息定義為:

    其中p(qr,om)是聯合概率分布函數,p(qr)和p(om)是隨機變量 Qr 和 Om 的邊際概率分布。聯合概率函數可以使用由 Qr 的均勻分布值范圍組成的訓練 G/M 代碼來計算,并收集來自側信道的相應模擬發射。由于使用了以 2 為底的對數,因此互信息的單位是比特。

    D.泄漏最大化

    如前所述,提議的攻擊包括兩個階段:首先是分析階段,第二階段是攻擊階段。分析階段只執行一次,這樣做有兩個原因。第一個是了解如何以及在何處在編譯器(或打印機的固件)中注入惡意修改,第二個是構建模板,用于在第二階段重構代碼攻擊。在分析階段,攻擊者估計模型函數。基于模型函數,計算模擬信號和 G/M 碼之間的互信息以及重構的 G/M 碼的精度。然后,探索了各種設計變量,并相應地修改了可以在不影響 3D 打印機正常運行的情況下最大化給定側信道的互信息的變量。然后將更改后的編譯器插入到增材制造系統的設計鏈中,以生成可以被攻擊者輕松重建的 G/M 代碼。

    攻擊者的目標是最大化側信道信息。為了以系統的方式做到這一點,開發了一種互信息最大化算法。算法采用部分 G/M 代碼 Qr 和模擬發射 O 之間的當前互信息值,并最大化可用信息。

    算法 1 執行互信息最大化。算法的輸入是所考慮的設計變量{A1;A2; …;An}。對于每個設計變量,算法返回值 {αm1,m2,…,mn}最大化 m 個側信道中的每一個中的互信息量。從第 1 行到第 8 行,算法收集用于估計第 9 行聯合概率分布函數的數據。使用該聯合概率函數,以及模擬發射的熵和預先確定的分區 G/M代碼 Qr用于分析,在第 10 行計算基于每個設計變量值的條件互信息。然后使用非線性函數 f^mn (.) 估計互信息與第 11 行中的設計變量。然后對于每個設計變量和側信道,使用優化算法最大化每個側信道中的互信息量。優化算法的約束條件是:(a) 保持打印時間 Tp<=TI + △T ,其中 TI 是原始打印時間,△T 是時間變化的允許閾值,(b) 避免噴嘴溫度的大變化θI-△θL<=θp<=θI+△θH,其中 θI 是原始溫度和 △θL ;△θH 是溫度變化的允許上下閾值,(c) 避免大的速度波動θi-△θ<=θp<=θI+△θ,其中θI 是原始打印速度,△θ是允許的閾值速度變化,(d) 并且不要讓步進電機閑置的時間長于 TIDLE<=△IDLE,其中 △IDLE 是允許的閑置時間,而不會導致步進電機自由移動。為了獲得這些閾值,攻擊者首先需要向上找到這些參數的最優值θp,TIDLE 和 TI 。如果攻擊者擁有與目標 3D 打印機相似的分析 3D 打印機,則可以輕松訪問這些參數。對于某些參數,用戶手冊中給出了這些值的最佳范圍。但是,攻擊者可能會通過增加或減少閾值并分析其對 3D 對象質量的相應影響來超出最佳范圍。

    攻擊的第二階段是經典的模板側信道攻擊。為此,攻擊者需要在打印過程中物理訪問設備。所需的訪問類型取決于攻擊者想要利用的特定“渠道”。對于電源,可能需要復雜且可能可見的測量設置。對于聲學、振動和 EM 側信道攻擊,簡單的現代智能手機已被證明具有足以重建整個 G/M 代碼的潛力。在收集到信道軌跡后,攻擊者將嘗試使用在分析階段估計的模型函數來重建 G/M 代碼。

    Experimantal Result

    實驗設置如下圖所示。使用了Cartesian桌面 3D 打印機(Printrbot),它使用 FDM 技術進行打印。為了監測來自側信道的模擬發射,使用了三個聲學傳感器 (Audio-Technica AT2021)、AC/DC 電流鉗 (PIC0 TA018)、磁場傳感器 (HMC5883L) 和加速度計 (uxcell) ADXL335)。聲學傳感器放置在彼此垂直的 X、Y 和 Z 軸上,振動傳感器放置在 3D 打印機的底座上,磁傳感器放置在靠近 3D 打印機的桌子上,功率傳感器放置在電源和 3D 打印機之間的電源線上。來自所有側信道的數據采集是使用 NI 數據采集硬件 (NI USB-6229) 完成的。然后在 Matlab (R2015b) 中處理收集的模擬發射。為了測量由于改變各種參數而引起的互信息的變化,創建了與 X 軸成角度的多層線段。為了計算成功率,使用了不同邊和高度的多邊形作為測試對象。已經在同一臺 3D 打印機中實現了所提出的攻擊模型的第一階段和第二階段。將 G/M 代碼分成三組。能夠準確重構這些 G/M 代碼子集的攻擊者能夠在任何時間重構 3D 打印機打印的任何線段。

    1.線段角度(Q1):G/M 代碼的每一條指令都將 3D 打印機的噴嘴從起點移動到終點,形成一個線段。由于對象是逐層打印的,因此這些線段中的大部分位于 XY 平面中。因此,將線段與 X 軸的夾角定義為 G/M 代碼的變量之一。

    2.換層(Q2):當3D打印機在一層完成打印后,它會移動到另一層。每個 G/M 代碼都包含有關它打印在哪個層上的信息。因此,將 Q2 定義為決定層變化的變量。

    3.線段的變化(Q3):線段的變化不是直接來自G/M-code,而是來自G/M-code指令開始和結束時獲得的模擬發射。將此變量指定為 Q3。

    這三個變量不是 G/M 代碼的詳盡分區。然而,它們足以跟蹤噴嘴運動,并確定被打印的 3D 對象的幾何形狀,因為結合起來,這些變量定義了構成每一層的線段向量,定義了各個層,以及最后將模擬發射分配給特定的 G/M 代碼指令。

    可以任意增加信息泄露,而無需讓編譯器的改動變得可以理解。為此憑經驗確定了閾值,并將它們作為優化算法的約束條件。選擇的閾值如下:(a) △T=1% 的 TI,假設 1% 的打印時間對于正在打印的任何對象都不會引起注意。(b) △θL =10°和 △θH =5°。在給定的 3D 打印機中擠出的熱塑性塑料是聚乳酸 (PLA),它是一種生物聚合物,熔化溫度在 180°到 220°之間。給定 3D 打印機的原始打印溫度通常設置為 205°。因此,這為編譯器提供了一些空間來改變風扇速度而不影響打印質量。(c) △θ= 正常打印速度的 10%,這不足以引起抖動,但可能會導致側信道中的模擬發射明顯。(d) 分配了 △IDLE<=30 ms 以最小化步進電機的自由運動。

    精度指標:評估攻擊有效性的更好指標是攻擊者的成功率。直觀地說,成功率衡量的是在給定特定泄漏的情況下攻擊者恢復 G/M 代碼(或其中具有特定錯誤閾值的部分)的能力,并且與互信息相反,取決于特定的攻擊場景。假設任意側信道 S’ ∈{S1 ;S2; …; Sm} 泄漏信息 Q‘屬于Q 的子集,Q’={Q1;Q2;…; Qt}。其中 t<=r 和 t∈Z > 0,其中 r 是 G/M 代碼可以劃分成的不相交集的可能數量。假設這個信息子集能夠解釋 3D 對象的幾何形狀。定義一個變量 ei=1,使得當 jqri – m^r(omi,.) <=△e,其他情況下為 0。其中△e ∈ R 是誤差閾值,估計的部分 G/M 碼可用于重建完整的 G/M 碼。理想情況下,重建的錯誤閾值應該接近于攻擊者具有完全重建能力的過程變化。但是,為了證明可以通過使用細微的編譯器更改來提高成功率,參考給定 3D 打印機最強大的側信道之一的準確性(通過實驗確定)來固定錯誤閾值。假設從實驗中獲得了四個錯誤閾值 △ea ;△ev; △em 和△ep 分別用于每個部分 G/M 代碼的聲學、振動、EM 和功率側信道,這使重建成功率超過 75%。然后選擇了最小的△e,用于計算所有側信道的成功率。對于為側信道 S’估計的每個模型函數m^r(.),定義估計部分 G/M 代碼 Q’t 的部分成功率如下:

    其中 N 給出了用于描述 3D 模型的 G/M 代碼指令的總數。然而,在計算總成功率時,考慮了對所有部分 G/M 碼的準確估計。因此,當且僅當 ei1=1; ei2=1 …; eit = 1攻擊者才能成功重建 G/M 碼。其中 eij 是估計第 i 個指令的第 j 個部分 G/M 代碼時的誤差。有了這個,給定側信道 S‘的總成功率可以寫成如下:

    對于每個側信道和分割的 G/M 碼,測量泄漏的信息量和估計模型函數 m^r(.) 的相應成功率。然后,結合互信息最大化算法來修改設計變量,并查看相同估計模型函數的成功率的相應變化。在量化泄漏時,提取功率譜密度作為 0 Hz 到 10 KHz 范圍內的一個特征,以 20 Hz 的間隔均勻分布,因為發射在初始頻譜分析期間處于該范圍內,并且 20 Hz 間隔分辨率能夠捕獲頻域中的變化,對特征集進行主成分分析(PCA),這將使相關的頻率成分轉換為不相關的主成分成為可能,并降低攻擊模型的維數,并呈現最高主成分的互信息。為了測量每個劃分后的 G/M 碼的互信息{Q1; Q2; Q3},需要計算相應的模擬發射信號。因此,在實驗中,對于角度 (Q1),以 9°的步距角將角度從 0°改變到 360°。假設 Q1 是一個均勻分布的隨機變量。因此,它的總熵將為 log2(40)= 5.32 bit。隨機變量Q2和Q3只有兩個可能的值,層是否改變,是同一線段還是不同線段。因此,它們的熵是 log2(2)= 1bit。出于演示目的,訓練數據由不同角度、層(10 層)和方向(通過打印相反方向的線段)的線段組成。

    互信息:對每個部分更改編譯器(切片和刀具軌跡生成工具)之前和之后的G/M 碼 {Q1; Q2; Q3} 計算互信息,這些值是根據聯合概率分布計算得出的,該分布假設部分 G/M 碼為均勻分布,并收集來自側信道的相應模擬發射。在下圖中,前后的互信息編譯器的更改顯示在每個側信道和部分 G/M 代碼 Q1 之間。可以觀察到,盡管與其他側信相比,電源側信道的整體互信息較低,但在更改編譯器后互信息的增幅最高(+ 21.5%)。振動側信道與部分 G/M 碼的互信息最高。這意味著與其他側信道相比,可以從振動側信道推斷出更多關于 Q1 的信息。

    在下圖中,每個側信道和部分 G/M 碼 Q2 之間顯示了編譯器更改前后的互信息。可以看出,電磁側信道的互信息最高,而編譯器更改后互信息的增加(+10.3%)是最低的。而電源側信道在編譯器更改后顯示互信息大幅增加(+ 61.5%)。

    在下圖中,每個側信道和部分G/M碼Q3之間顯示了編譯器改變前后的互信息。對于Q3,與Q2類似,電磁側信道的互信息最高,編譯器更改后互信息增加了+26.3%。然而,功率側信道顯示互信息顯著增加。與電磁側信道相比,它的互信息相對非常低。

    可以看到,對于分割的 G/M 碼 Q1,振動側信道的互信息最多,而功率側信道的互信息最少。這是因為角度變化不會影響恒定的直流電源。所有側信道互信息的增加表明,編譯器的改變在不改變最終設計的情況下,有助于攻擊者更準確地推斷原始 G/M 代碼。與通過訪問設計文件破壞機密的其他形式相反,這些修改允許攻擊者以極難檢測的方式獲取 G/M 代碼。

    部分成功率:在計算成功率之前,將使用均勻分布的部分 G/M 碼收集的數據分別拆分為 3:1 的訓練和測試集。然后訓練隨機森林回歸算法從側信道收集的模擬發射預測角度,并使用隨機森林分類算法預測層和線段的變化。由于只有角度是連續值,所以根據振動側信道將△e 設為3°,對于3°誤差的預測提供75% 以上的準確度。然后計算單個側信道和分割的 G/M 碼的平均部分成功率。

    在下圖中,部分G/M代碼Q1顯示了編譯器改動前后的部分成功率。可以看出,振動側信道重構Q1的成功率最高,而編譯器改動后的成功率僅增加了+6.53%。而電源側信道的成功率增幅最高,增加了75.77%,而預測 Q1 的總體成功率最低。

    在下圖中,部分 G/M 代碼 Q2 顯示了編譯器更改前后的部分成功率。可以看出,電磁側信道的總體成功率最高。然而,成功率下降了 0.17%。這可能是因為成功率已經更高了,而設計變量的改變并沒有顯著提高成功率。另一個原因可能是,雖然 Q2 的互信息增加了,但它只給出了在給定模擬發射的情況下推斷隨機變量 Q2 的上限,并且成功率高度依賴于估計函數的準確性( f^k(.,φ))。而在這個實驗中,估計函數無法利用互信息的增加。然而,隨著互信息的增加,振動側信道的成功率急劇增加了 56.05%。

    在下圖中,部分G/M代碼Q3顯示了編譯器改動前后的部分成功率。與 Q2 類似,電磁側信道重建 Q3 的成功率最高。然而,編譯器改動后的成功率僅比振動側信道提高了1.46%,其中成功率的提高(24.27%)是最高的。

    總成功率:為了計算總成功率,打印了邊數從 3 到 12 的各種正多邊形,并測量了重建部分 G/M 碼信息(Q1、Q2 和 Q3)的精度。對于每個多邊形,印刷五層,邊長從 5 毫米到 20 毫米不等。然后根據訓練的模型函數進行預測以計算部分成功率。然后根據這些預測計算編譯器更改前后的總成功率。從下圖中可以觀察到,在更改編譯器后,所有側信道的總成功率都有所增加。振動側信道的總成功率最高,約為 24.27%。但是,與其他側信道相比,它的成功率增幅最低。電源側信道總體成功率最低,但成功率增幅最高(39.71%)。攻擊模型為攻擊者提供了很大的余地,可以找到跨各種側信道的互信息最大化的最佳組合,以提高成功率,同時實現更高的隱蔽性。

    Discussion

    完成對象重建:在這里,提出了一個新的、強大得多的攻擊模型的概念驗證工作,其中攻擊者可能能夠執行一次性訪問以更改生成打印文件的編譯器(或解釋它的固件),旨在竊取知識產權的側信道攻擊的強度增加。與其他形式的信息泄漏相反,使用側信道發布的信息更難被識別(因此被阻止)。已經通過使用改變的編譯器證明了這一點,預測由線段組成的對象的成功率已顯著提高。然而,為了實現帶弧的 3D 對象的準確重建,將結合攻擊者可能使用的進一步設計變量分析。盡管如此,并不是所有的運動都是非線性的,這種方法仍然會給出 3D 對象中各種線段的部分信息。此外,僅對基于 FDM 的桌面 3D 打印機進行了分析。更高端的 FDM 3D 打印機可能會利用更好的技術來降低噪音和振動。因此,需要進一步分析以在高端 3D 打印機中實施這種攻擊。

    編譯器改動的難度:編譯器上的任何形式的更改都必須秘密放置以避免檢測。修補過的 Win-RAR 漏洞以前曾被用來操縱設計文件,并從網絡域破壞物理結構的完整性。假設攻擊者有興趣在原型設計階段竊取 3D 對象的 IP。目前,有多種第三方編譯軟件可以生成 G/M 代碼。盡管臺式 3D 打印機可能無法連接到互聯網,但裝有此軟件的 PC 可以連接到互聯網。因此,為了改變編譯器,攻擊者需要精通黑客技能以及增材制造過程鏈知識,以引入用戶不會注意到的細微變化。

    更改 CAD 和固件:已經演示了一種攻擊,其中 3D 打印機的編譯器被更改。然而,正如論文中提到的,提出的原則對于想要改變固件或 CAD 工具本身以增加通過側信道泄漏的信息的攻擊者也是有效的。因此在未來的工作中,將通過更改固件和 CAD 工具來完成演示,以增加側信道中的信息泄漏。

    多信道組合:在本文中考慮了一個攻擊者,它同時可以訪問一個側信道(或者,至少旨在一次利用一個側信道),并旨在使用更改的編譯器最大化它。這是朝著這個方向邁出的第一步。未來一個有趣的研究方向是探索多側信道攻擊的組合(以及側信道泄漏的聯合增加),將對這方面的系統探索留作未來的工作。

    傳感器位置:由于攻擊者依賴于側信道的物理發射,因此放置的傳感器的位置和數量可能會影響攻擊者的成功率。對此,攻擊者可能需要探索多個傳感器位置和傳感器數量,以提高其成功率。在實驗中,通過將傳感器放置在與負責發射物理輻射的組件非常接近的位置來執行原始傳感器定位。然而,需要探索更廣泛的方法來確定傳感器的最佳數量和位置。

    對策

    所提議的攻擊使用側信道攻擊導致信息丟失,可能很難被檢測到,因為合法用戶無法感知 3D 打印機正常運行的任何變化(最終對象保持不變,打印時間也以難以察覺的量增加)。提出以下對策:

    1.減少通過側信道的信息泄漏:當流速較低時,由于信息泄漏的減少,無法輕易預測表面紋理。通過增加從側信道提取的數據集的同質性,可以減少信息泄漏。分區 G/M 代碼 Q1、Q2 和 Q3 可以采用這個想法。為了使發射數據集同質化,可以在 G/M 代碼 {Q1; Q2;Q3} 可以在電機的運動中添加受控的隨機性,使側信道數據均勻。但是 G 代碼中的這種冗余會通過延遲它來影響總打印時間。需要深入研究以找到合適的有效算法,在提高安全性的同時為系統增加隨機性。

    一般而言,對抗側信道攻擊是一項非常艱巨的任務。例如,隱藏側信道信號需要生成一個恒定的側信道信號(但是,很難保證每個形狀都使用相同的時間打印,產生相同的噪聲,產生相同的振動)或覆蓋它產生人為噪聲,使重建階段復雜化。然而,這種方法相對較新,需要更深入地探索。

    2.G/M 代碼的形式驗證方法:需要使用傳統的形式驗證方法來檢查 G/M 代碼的完整性,以確保 3D 打印機固件或 CAD 和 STL 文件不受損害。

    3.金參考:另一種方法是使用未更改的 CAD、CAM 和 3D 打印機固件的金參考,以檢查側信道中的任何異常行為。

    4.屏蔽:屏蔽3D打印機可以抑制電磁輻射以及打印機發出的聲音。這種方法是有效的,但會增加系統的額外成本。

    Conclusion

    本研究已經提出了一種新攻擊的概念證明,該攻擊包括修改編譯器以生成 G/M 代碼,從而允許使用側信道攻擊更容易地重建打印文件。本文展示了如何使用多個設計變量來提高 G/M 代碼重構的成功率,并且實施了一個惡意編譯器來證明攻擊的可行性,能夠實現高達 39% 的成功率提升 與僅依賴于監聽側信道的傳統攻擊模型相比,在聲學、功率、振動和電磁側信道上測量的速率。本文工作證明了使用改變的工具鏈進行攻擊的可行性,這會給制造業造成巨大的經濟損失。未來的工作將探索控制 3D 打印機參數的其他變量的作用以及多個側信道的融合,以提高 G/M 代碼恢復能力。

    信道估計編譯器優化
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    事實上,以 CPS 為基礎,到 2030 年,工業 4.0 預計將創造 15 萬億美元的全球 GDP 價值。違反保密規定會造成重大的經濟損失。總體而言,失去知識產權將增加制造業的財務損失。由于 3D 打印機用于實際制造和快速原型制作,因此泄露打印對象的信息將使對手獲得復制它所需的所有信息,從而給相關公司造成重大經濟損失。
    例如,攻擊方可能會使用無人機進行監視、運輸非法物品,或通過侵入機場上方的封閉空域造成經濟損失。該fuzzer發現了可用于獲得根訪問權限,目前大疆已修復所有錯誤。鑒于大疆的實際重要性,本研究的工作重點關注該供應商在 200 克到 1 千克之間的消費級無人機。逆向工程結果證實了這些發現。
    本文發表在 WOOT'18: Proceedings of the 12th USENIX Conference on Offensive Technologies 在本文中,作者介紹了通過一些側信道形式嗅探用戶是否訪問過某網站的方法,盡管發的會不是很出名,但是個人認為整個思路還是很有意思的,也學到了一些東西,所以寫了一下比較長篇的筆記介紹。因為自己不經常寫筆記,所以寫的有點像翻譯文章,今后如果
    6G移動通信網絡將通信的領域邊界從物理世界進一步拓展至數字世界,通過在物理世界和數字世界之間提供即時、高效和智能的超連接來重塑世界,這一趨勢將開啟移動通信的新篇章。6G網絡超大規模的全局性連接將給網絡的運營和管理帶來巨大挑戰,亟待革命性的理論和技術創新。
    沒有數據安全就沒有國家安全,數據安全治理作為數據安全體系重要的組成部分引起了各行各業越來越多的關注。從大數據環境下海量數據面臨的安全風險出發,結合數據在使用過程中的安全需求,給出了一種動態防御的數據安全治理架構,并對該架構下的關鍵技術進行了研究。該架構能夠為數據安全治理提供體系化安全治理思路,其中的關鍵技術可以為該架構的實現提供有效支撐。 《中華人民共和國數據安全法》(下文簡稱:數據安全法)的正
    新冠疫情所致遠程辦公和云端遷移的大潮,為網絡罪犯開辟了新的途徑。2021年,在遠程工作狀態影響下,世界各地的網絡攻擊急劇上升,勒索軟件、網絡釣魚、人為錯誤操作等導致的數據泄露不斷增加,全球范圍內網絡威脅依舊不斷。特別是勒索軟件的高度猖獗,在上半年的攻擊次數已達到3.047億,同比增長達151%,遠超2020年全年攻擊總數,對多國家、多行業、多領域造成不同程度的影響。
    JLink固件漏洞
    2022-04-21 16:35:07
    JlinkV10的固件驗證缺陷我年前已發布刷機工具,但缺陷是利用就得刷機一次再刷回。發布前在某移動設備開發群談論時候,群友說v10會檢查固件簽名,你怎么搞。
    家里WiFi都能來搞監控了?
    目前智能手機上的運動傳感器對振動敏感,已經被用于竊聽音頻。然而,存在兩個公認的局限性,第一個限制是與麥克風不同,運動傳感器只能接收通過固體介質傳播的音頻信號,因此之前唯一可行的設置是將運動傳感器和揚聲器放置在同一張桌子上;第二個限制是由于傳感器的采樣率上限是200Hz,而成年人的整個語音頻段是85-255Hz,使用傳感器只能采集到一部分的聲音信息。
    OCR指出,對健康專家公司的調查源于對個人數據訪問權的投訴。該投訴者是已故病人的親屬,據稱盡管她多次提出要求,但健康專家公司仍未能及時向她提供所需醫療記錄。具體而言,在數字資產管理過程中,管理者遵守反洗錢法及稅法規定的報告義務可能侵害客戶的個人隱私。如果這兩家公司未能糾正評級,各州將對這兩家公司允許TikTok實施虛假陳述的行為保留采取法律行動的權力,包括訴訟和民事處罰。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类