
摘要
本報告深入探討ONEFLIP,一種針對深度神經網絡(Deep Neural Networks, DNNs)的創新推理時後門攻擊,僅需單一 Bit 翻轉即可危害全精度模型。傳統後門攻擊需操縱訓練資料或程序,而近期 bit-flip 攻擊則因需同時翻轉多個 Bit 或僅針對量化模型而受限,ONEFLIP克服了這些挑戰。它提出了一種高效的方法,用於識別有漏洞的權重並生成有效觸發器,展現高攻擊成功率且對正常精度的影響極小。本研究突顯了 DNNs 中基於硬體的關鍵漏洞,強調了開發進階防禦機制的必要性。

1. 簡介
深度神經網絡(Deep Neural Networks, DNNs)已成為眾多應用程式的基礎,提升了其安全性的重要性。在眾多威脅中, 後門攻擊 因其隱秘性質尤為突出。這些攻擊涉及將木馬植入模型,使其在乾淨輸入下正常運作,但在應用程式特定預定觸發器時,產生攻擊者期望的意外輸出。
傳統上,後門攻擊假設攻擊者可污染訓練資料或操縱訓練程序。然而,這些威脅模型通常不切實際,因為檢查訓練資料集是否被污染是可行的,且有方法可在部署前檢測木馬感染的模型。近期研究轉向更實際的後門注入方法,無需存取訓練設施。這些方法利用 bit-flip攻擊(BFAs) ,如Rowhammer,在推理階段修改模型權重。廣泛研究顯示,Rowhammer攻擊可精確翻轉記憶體中的目標 Bit ,無需控制訓練程序即可實現後門植入。
儘管有這些進展,現有的推理時後門注入方法仍面臨重大限制。首先,它們通常需要同時翻轉多個 Bits ,這因DRAM中可翻轉單元的稀疏分佈而具挑戰性且往往不可行。其次,雖然許多DNN部署偏好全精度模型以獲得更高精度,但當前攻擊方法主要針對量化模型,留下對全精度模型推理時攻擊可行性的疑問。儘管先前研究已證明單一 Bit 翻轉可導致DNN完全故障(故障注入攻擊),但通過單一 Bit 翻轉注入後門的具體挑戰尚未被探索。
為了解決這些限制,本報告介紹了**ONEFLIP**,首個針對全精度模型有效的單 Bit 翻轉後門注入方法。ONEFLIP僅需單一 Bit 翻轉,大幅提升後門攻擊的實用性。與之前的基於優化的 Bit 搜索技術不同,ONEFLIP採用高效演算法直接識別潛在權重,並利用新型工作流程,先選擇要翻轉的 Bit ,再搜索觸發器。此方法實現了高攻擊成功率(最高達99.9%,平均99.6%),對正常精度的影響極小(最低0.005%,平均0.06%),並展示對後門防禦的韌性。
2. 背景
2.1 Rowhammer攻擊機制
Rowhammer攻擊是一種基於硬體的故障注入技術,利用動態隨機存取記憶體(DRAM)的漏洞誘發意外的 Bit 翻轉。DRAM單元以電容器中的電荷儲存資料,排列成行。由於DRAM單元密度增加,相鄰行之間的電氣交互作用更為顯著。Rowhammer攻擊通過快速存取(或「敲擊」)一個或多個記憶體行,干擾相鄰行的電荷,導致這些相鄰行中的 Bit 翻轉。
此攻擊帶來重大安全影響,可能導致未授權存取或資料損壞,並繞過記憶體保護機制。雖然已引入如目標行刷新(TRR)等技術來緩解此漏洞,但Rowhammer仍是一個持續威脅,未來DRAM預計將更加有漏洞。錯誤校正碼(ECC)可使攻擊更困難,但ECC-RAM在大多數消費系統中不常見。雖然單 Bit 翻轉的精度已進步,但同時翻轉多個目標 Bit 仍因可翻轉單元的稀疏和不可預測分佈而具挑戰性。
2.2 量化模型與全精度模型
DNN模型大致分為量化和全精度兩類,各有其優勢。 量化模型 使用低位元寬整數(如8位元或16位元)以二補數表示權重,實現緊湊儲存和快速計算,適用於資源受限的環境,如行動或邊緣設備。相反, 全精度模型 在資源豐富的環境中因高精度應用而受青睞,使用32位元浮點數。這提供了更大的動態範圍和更精細的精度,有助於提高精度。
bit-flip攻擊的關鍵區別在於權重表示方式。翻轉二補數整數中的一個 Bit 會導致可預測的值變化,因為每個 Bit 直接對應於二的次方。然而,修改32位元浮點數(遵循IEEE 754標準)中的一個 Bit 可能導致非連續且劇烈的變化,因為修改可能影響符號、指數或尾數。浮點數的值
v
計算為
v = (-1)^sign * 2^(exponent-127) * (1+mantissa)
。單一 Bit 翻轉可能大幅改變值,例如將0.75轉為-0.75、2.5×10^38、1.5或0.875,具體取決於修改的 Bit 。這種浮點數的複雜非線性影響對全精度模型攻擊構成獨特挑戰。
graph LR A[32位元浮點數] --> B[符號位元 #40;1 bit#41;] A --> C[指數 #40;8 bits#41;] A --> D[尾數 #40;23 bits#41;]
圖1:32位元浮點數的簡化結構。
3. ONEFLIP的設計
3.1 攻擊概述
ONEFLIP攻擊包含三個主要步驟,如工作流程所示:
- 目標權重識別: 此離線步驟涉及識別模型中的特定權重及其一個適合單 Bit 翻轉攻擊的 Bit 。重點在於最終分類層的權重,單一修改即可顯著影響後門目標,同時不降低正常精度。
- 觸發器生成: 一旦識別目標權重,優化程序生成隱秘觸發器。此觸發器旨在顯著放大與目標權重相連的特徵層神經元的輸出。
- 後門啟動: 線上步驟,通過bit-flip攻擊(通常是Rowhammer)翻轉目標 Bit 。隨後,將嵌入精心設計觸發器的輸入饋入模型,利用修改後的權重和放大的神經元輸出,產生攻擊者期望的輸出。
ONEFLIP的攻擊者目標包括 有效性 (將嵌入觸發器的輸入分類為目標類別)、 隱秘性 (保持乾淨樣本的正常性能)和 效率 (僅用單一 Bit 翻轉實現攻擊)。
3.2 ONEFLIP設計的觀察與分析
ONEFLIP的設計基於以下幾個關鍵觀察:
首先,關於模型過參數化的共識表明,某些權重對分類的影響極小。這允許進行輕微修改而不降低正常精度,從而實現隱秘性目標。通過修改分類層中的權重並生成特定觸發器以增加該權重的神經元輸入,可誘發惡意輸出,實現有效性。如果單一 Bit 翻轉可達到目標權重值,則效率目標也得以滿足。實驗證實,分類層的許多權重修改可實現高攻擊成功率,同時對正常精度的影響極小,特別是當修改值在合理範圍內(例如)。這導致 觀察#1:通過修改DNN分類層中的許多權重之一,可潛在注入後門,而不降低正常精度 。
其次,關於權重修改與觸發器啟動的結合,考慮了兩種方法。方法1:將權重增加到非常大的值(例如10)並生成相對大的啟動(例如1.5)。方法2:使用觸發器將啟動提升到非常大的值(例如10)並將權重設為相對大的值(例如1.5)。方法1被認為不可行,因為DNN權重通常較小(約[-1, 1]),單一 Bit 翻轉通常無法產生「非常大」的權重值而不違反隱秘性。翻轉指數的最重要位元(MSB)可能導致極大值,顯著降低正常精度。翻轉指數中非MSB位置的0 Bit 無法將浮點值增加超過2。因此,ONEFLIP採用 方法2,涉及將目標權重增加到大於1(但不過大)的值,並生成產生足夠大啟動的特徵層神經元N1觸發器 。這確保目標類別獲得最高概率。這導致 觀察#2:給定選定的權重,我們選擇翻轉指數的非MSB位置,使其大於1,並生成產生足夠大啟動的觸發器 。
3.3 目標權重識別
這是ONEFLIP的第一個離線步驟。目標是識別分類層中的正權重
w
,通過單一 Bit 翻轉可增加到大於1的值,使翻轉後的權重
w'
顯著大於連接同一特徵層神經元
N1
到其他分類神經元的其他權重。根據浮點數分析,單 Bit 翻轉的關鍵觀察是:對於正權重,其指數的MSB為0,且其餘7位元中恰好一位為0(「合格模式」),將該單一非MSB的0翻轉為1可使權重值超過1。此目標翻轉防止值變得過大,從而違反隱秘性。
演算法根據正常精度降低(Benign Accuracy Degradation, BAD)過濾這些合格權重。僅包括導致降低低於預定義
degrad_threshold
的權重在
潛在權重集
中,確保隱秘性。此系統化識別確保單一 Bit 翻轉可實現所需的權重變化,而不顯著影響模型的正常功能。這總結為
觀察#3:正權重,其MSB為0,且其餘7位元中恰好一位為0(例如01111110),被認為是合格的。單 Bit 翻轉攻擊可通過翻轉7個非MSB位元中的唯一0 Bit ,使其值大於其他權重
。
graph TD
A[開始] --> B[輸入:目標模型 f,乾淨樣本集 D]
B --> C[ori_acc = 推理#40;f, D#41;]
C --> D[潛在權重集 W = #123;#125;]
D --> E[對 f 分類層中的每個權重 w]
E -- 下一個權重 --> E
E -- 結束迴圈 --> M[返回 W]
E -- 當前權重 w --> F[w 是否為正?]
F -- 否 --> E;
F -- 是 --> G[w 的指數 MSB 為 0?]
G -- 否 --> E;
G -- 是 --> H[其餘 7 個指數位元中
恰好一位為 0?]
H -- 否 --> E
H -- 是 --> I[f' = 翻轉 f 中 w 的單一 0 Bit ]
I --> J[acc = 推理#40;f', D#41;]
J --> K[ori_acc - acc <=
degrad_threshold?]
K -- 是 --> L[W = W U #123;w#125;]
L --> E
K -- 否 --> E
M --> N[結束]
演算法1:目標權重識別流程圖。
3.4 觸發器生成
這是第二個離線步驟。給定選定的潛在權重
w
(連接特徵層神經元
N1
到分類層神經元
N2
),此步驟創建顯著放大
N1
輸出的觸發器。與使用預定義觸發器的傳統方法不同,ONEFLIP通過優化生成觸發器,因為預定義觸發器可能無法可靠啟動所需的特定神經元輸出。
觸發器注入形式化為:
x' = (1-m) · x + m · Δ
,其中
x
是乾淨樣本,
Δ
是三維觸發器模式(像素顏色強度),
m
是控制觸發器修改程度的二維遮罩矩陣。為生成
Δ
和
m
,ONEFLIP使用梯度下降基於以下雙目標函數進行聯合優化:
argmin m,∆ ∑L (f̂ ((1−m) · x+m ·∆) ,yt ) + λ · ∥m∥1
目標函數的左項旨在
增加
N1
的神經元輸出
,使用不含分類層的DNN
f̂(·)
輸出最後特徵層的輸出
y
。
yt
是目標輸出(在
N1
的索引處為1,其他地方為0),
L(·, ·)
是
softmax(y)
與
yt
之間的交叉熵損失。右項
λ · ∥m∥1
限制
m
的L1範數以
增強觸發器的隱形性
,減輕潛在檢測。參數
λ
平衡攻擊性能與觸發器隱形性之間的權衡。
為所有連接到同一
N1
神經元的權重計算單一優化觸發器,而非為每個權重優化單獨觸發器。優化後,評估每個權重-觸發器對的攻擊成功率(ASR),僅保留ASR大於或等於
attack_threshold
的可利用對。
graph TD
A[開始] --> B[輸入:目標模型 f,
重覆次數 E,潛在權重集 W
,乾淨樣本集 D]
B --> C[P = #123;#125;, N = #123;#125;]
C --> D[對 W 中的每個 w]
D -- 識別 N1 --> E[若為新,則將 N1
(特徵層神經元)添加到 N]
E --> D
D -- 無更多權重 --> F[對 N 中的
每個 N1(唯一特徵神經元)]
F -- 下一個 N1 --> F
F -- 結束迴圈 --> L[對 W 中的每個 w]
F -- 當前 N1 --> G[初始化遮罩 m,
觸發器模式 Δ]
G --> H[對 z = 0 到 E
(gradient descent epochs)]
H -- 優化 --> I[為 m, Δ 優化方程3
(增加 N1 輸出並確保隱形性)]
I --> H
H -- 結束迭代 --> F
L -- 下一個 w --> L
L -- 結束迴圈 --> U[返回 P]
L -- 當前 w --> M[取出對應於 w 的
N1 的優化 m, Δ]
M --> N[通過將觸發器嵌入 D 生成攻擊資料集 D' #40;x#39; #61; #40;1#45;m#41;x #43; m#916;#41;
]
N --> O[為 D' 中的後門圖像指定目標標籤#40;N2 的類別#41;]
O --> P[f' = 翻轉 f 中 w 的目標 Bit (預先識別)]
P --> Q[asr = 推理#40;f', D'#41;]
Q --> R[asr >= attack_threshold?]
R -- 是 --> S[P = P U #123;#123;w, Δ, m#125;#125;]
S --> L
R -- 否 --> L
U --> V[結束]
演算法2:觸發器生成流程圖。
3.5 後門啟動
這是攻擊的線上階段。攻擊者首先使用Rowhammer攻擊更改已識別權重的目標 Bit 。已存在成熟技術用於定位記憶體中的DNN模型權重並翻轉不同DRAM中的特定 Bit 。該程序涉及分析目標DRAM模組中的易翻轉單元,並將其與選定可利用權重的目標 Bit 對齊,使用如記憶體竊聽等技術。成功翻轉目標 Bit 後,攻擊者將嵌入ONEFLIP生成觸發器的輸入樣本饋入模型,啟動後門並導致分類到目標類別。攻擊者還可在不同可利用權重-觸發器對之間切換,以增強靈活性和隱秘性。
4. 評估摘要
ONEFLIP在四個資料集(CIFAR-10、CIFAR-100、GTSRB、ImageNet)和各種DNN架構(包括視覺轉換器)上進行了廣泛評估。結果一致顯示,ONEFLIP相較於先前方法(如TBT-fp32、TBA-fp32和DeepVenom)具有優越性能。
- 有效性: ONEFLIP在所有資料集上實現近乎完美的攻擊成功率(ASR),最高達99.9%,平均99.6%。這對於將嵌入觸發器的輸入一致分類為攻擊者期望的類別至關重要。
- 隱秘性: 攻擊對正常精度的影響極小,平均僅0.06%(最低0.005%)。這表明單一 Bit 翻轉及其導致的權重修改不會顯著損害模型在乾淨輸入上的性能。
- 效率: ONEFLIP僅需單一 Bit 翻轉即可將正常模型轉為後門模型。這相較於需要數十到數千 Bit 翻轉的現有方法是一大進步,後者在現實場景中極不實際。
ONEFLIP的效率驗證了其適用於全精度模型,與為量化模型量身定制的 Bit 搜索優化方法在全精度設定中的無效形成對比。例如,TBT-fp32和TBA-fp32適應全精度仍需數千 Bit 翻轉,突顯ONEFLIP解決的限制。此外,ONEFLIP的離線階段執行時間相較於TBT和DeepVenom一致較短,展示其時間效率。不同模型中分類層的合格權重普遍存在,進一步支持ONEFLIP的靈活性和泛化性。
5. 防禦討論
ONEFLIP的獨特特性使其對常見後門防禦方法(包括後門檢測、緩解和輸入過濾)具有顯著抵抗力。
- 抗檢測性: 後門檢測方法通常通過逆向工程觸發器或應用異常檢測來識別目標類別。然而,這些防禦的主要局限在於它們主要針對訓練或供應鏈階段注入的後門。作為 推理時後門注入方法 ,ONEFLIP在推理開始後的運行時操作,使其幾乎免疫此類防禦。雖然檢測方法可在推理期間定期應用,但攻擊者可在檢查間翻轉 Bit ,且頻繁的完整性檢查會引入顯著的計算開銷。
- 抗緩解性: 重新訓練模型是常見的緩解策略,因為它修改模型參數,可能使已知 Bit 翻轉無效。然而,ONEFLIP採用 適應性策略 對抗重新訓練。通過系統化翻轉同一權重指數中的其他較低 Bit (排除最高 Bit ),攻擊者仍可識別在重新訓練模型上實現高攻擊成功率的新 Bit -觸發器對。這是可行的,因為32位元浮點權重在記憶體中連續儲存,允許識別和操作相鄰 Bit 。此外,ONEFLIP生成的觸發器展示可轉移性,在重新訓練模型中繼續顯著增加相應神經元輸出,確保Bit-Flipping模組保持運作。
- 抗過濾性: 輸入過濾方法旨在檢測和過濾推理期間的惡意樣本。雖然ONEFLIP依賴嵌入觸發器的輸入,但其觸發器生成過程可與現有工作中高度隱秘的觸發器設計整合,以增強規避基於過濾的防禦能力。
6. 結論
本報告介紹了 ONEFLIP,首個僅需單一 Bit 翻轉即可實現目標的推理時後門攻擊 。這代表了後門攻擊實用性的重大進展。此外,ONEFLIP是首個對 全精度模型 有效的此類方法,解決了先前模糊的漏洞領域。其新穎工作流程先識別潛在權重,隨後生成有效觸發器,確保觸發器最佳啟動更改的權重。
在各種DNN架構(包括視覺轉換器)上的評估顯示,ONEFLIP顯著優於先前方法。它實現近乎完美的攻擊成功率(最高99.9%,平均99.6%),同時對正常精度的影響極小(最低0.005%,平均0.06%)。我們的發現揭示了DNNs中的關鍵硬體漏洞:僅通過操作一個 Bit 即可在全精度模型中注入高效後門。本研究強調了為保護深度學習應用免受此類微妙而強大的攻擊,亟需強大的防禦措施。