網(wǎng)絡(luò)安全問(wèn)題何時(shí)會(huì)變成物理安全問(wèn)題?或者換一種說(shuō)法,半導(dǎo)體什么時(shí)候必須內(nèi)置篡改檢測(cè)器?
對(duì)于為美國(guó)武裝部隊(duì)或任何武裝部隊(duì)建造下一代武器系統(tǒng)的公司來(lái)說(shuō),答案是明確的。他們必須假設(shè)設(shè)備將被留下并隨后被篡改。內(nèi)置篡改檢測(cè)器的半導(dǎo)體為工程師提供了滿(mǎn)足國(guó)防部要求所需的工具,并廣泛用于實(shí)現(xiàn)外國(guó)軍事銷(xiāo)售。
但是更廣泛的非國(guó)防市場(chǎng)呢?有些人認(rèn)為網(wǎng)絡(luò)安全就是他們所需要的。畢竟,他們通過(guò)圍欄、大門(mén)、警衛(wèi)、攝像頭、防火墻獲得“物理”安全,并利用自己的員工來(lái)構(gòu)建和/或制造他們的系統(tǒng)。這可能就足夠了。但人們必須問(wèn)自己,在什么條件下,任何人(可能是雇員)都可以訪(fǎng)問(wèn)一臺(tái)設(shè)備,他們可以對(duì)它做什么來(lái)利用設(shè)備的功能或提取秘密?
這不可避免地導(dǎo)致公司回答“我的供應(yīng)鏈?zhǔn)欠竦玫桨踩芾??設(shè)備或貨物是否會(huì)“丟失”?設(shè)備如何退役?誰(shuí)為設(shè)備提供服務(wù)以及如何升級(jí)?“在設(shè)備的使用壽命內(nèi),誰(shuí)可以訪(fǎng)問(wèn)該設(shè)備,他們可以用它做什么?”這個(gè)問(wèn)題的答案將有助于推動(dòng)組織的決策過(guò)程。
以下是需要考慮的關(guān)鍵安全主題:
制造 - 構(gòu)建 PCB 板, 組裝, 和測(cè)試.
在任何非易失性設(shè)備的編程過(guò)程中,公司是否使用散列和簽名圖像?是否有可審核的日志,其中包含已預(yù)配的內(nèi)容、已預(yù)配的板數(shù)以及未通過(guò)傳出測(cè)試的板數(shù)?這些日志是否經(jīng)過(guò)哈希處理和簽名?
調(diào)試端口是否被禁用?
運(yùn)送給客戶(hù)
組織是否可以核算已發(fā)貨商品與客戶(hù)接收的商品?大多數(shù)客戶(hù)會(huì)立即說(shuō)“嘿,短一個(gè)!但是,如果客戶(hù)出于任何原因錯(cuò)過(guò)了一個(gè)怎么辦?該公司將不得不假設(shè)它在野外擁有一臺(tái)設(shè)備。
公司及其客戶(hù)能否驗(yàn)證所運(yùn)設(shè)備的完整性?他們能否驗(yàn)證它在運(yùn)輸過(guò)程中沒(méi)有被篡改?
已部署的設(shè)備
設(shè)備上是否有防篡改密封?
是否只允許授權(quán)技術(shù)人員維修設(shè)備?
是否允許遠(yuǎn)程更新?
如果是這樣,圖像是否經(jīng)過(guò)驗(yàn)證是完整和真實(shí)的?
是否有防止回滾的機(jī)制?
當(dāng)設(shè)備退役時(shí),它是否歸零?無(wú)法操作?摧毀?
如果對(duì)上述任何一項(xiàng)的答案是否定的,那么組織應(yīng)該強(qiáng)烈考慮內(nèi)置防篡改對(duì)策的半導(dǎo)體,以便他們可以根據(jù)設(shè)備在其生命周期中可能出現(xiàn)的風(fēng)險(xiǎn)場(chǎng)景定制其篡改響應(yīng)。例如,FPGA產(chǎn)品應(yīng)具有多個(gè)防篡改功能,可用于自定義威脅響應(yīng)(圖1)。示例包括:
足夠數(shù)量的數(shù)字篡改標(biāo)志。
多個(gè)模擬窗口電壓檢測(cè)器為每個(gè)關(guān)鍵電源(Vdd、Vdd18、Vdda25)提供高跳變點(diǎn)和低跳變點(diǎn)。
數(shù)字窗口溫度為您提供高低管芯溫度。
來(lái)自?xún)?nèi)置溫度檢測(cè)器的原始電壓和溫度值。
指示系統(tǒng)控制器掉電情況的系統(tǒng)控制器慢時(shí)鐘。
指示設(shè)備復(fù)位源的數(shù)字總線(xiàn)(至少 5 位)(DEVRST 引腳、篡改宏輸入、系統(tǒng)控制器看門(mén)狗、安全鎖篡改檢測(cè)器已觸發(fā)、任何其他復(fù)位)。
無(wú)花果。1:Microchip PolarFire FPGA和PolarFire SoC FPGA器件的設(shè)計(jì)與數(shù)據(jù)安全屬性。
篡改檢測(cè)和響應(yīng)
在實(shí)例化 FPGA 設(shè)計(jì)的篡改宏時(shí),應(yīng)該可以使用多種類(lèi)型的篡改標(biāo)志。每個(gè)都有自己的目的:
旗幟[31:0] | 標(biāo)志名稱(chēng) | 描述 |
1 | MESH_ERROR | 活動(dòng)網(wǎng)格篡改標(biāo)志。每當(dāng)活動(dòng)安全網(wǎng)格觀察到實(shí)際金屬網(wǎng)格輸出與預(yù)期輸出不匹配時(shí),就會(huì)斷言此標(biāo)志。這樣可以防止侵入性攻擊,例如使用聚焦離子束(FIB)技術(shù)在較高的金屬層之一上使用活性金屬網(wǎng)切割和探測(cè)跡線(xiàn)。 |
2 | CLOCK_MONITOR_GLITCH | 每當(dāng)時(shí)鐘毛刺監(jiān)視器檢測(cè)到脈沖寬度違規(guī)時(shí)斷言 |
3 | CLOCK_MONITOR_FREQUENCY | 每當(dāng)時(shí)鐘頻率監(jiān)視器觀察到 160 MHz 和 2 MHz RC 振蕩器之間的頻率不匹配時(shí),就會(huì)置位。 |
4 | LOW_1P05 | 當(dāng) 1.05 V 電源 (VDD) 低于系統(tǒng)控制器 1.05 V 檢測(cè)器的低閾值時(shí)置位 |
5 | HIGH_1P8 | 當(dāng) 1.8 V 電源 (VDD18) 高于系統(tǒng)控制器 1.8 V 檢測(cè)器的高閾值時(shí)置位 |
6 | HIGH_2P5 | 當(dāng)2.5 V電源(VDD25)高于系統(tǒng)控制器2.5 V檢測(cè)器的高閾值時(shí)置位。 |
7 | 保留 | 保留 |
8 | 分離 | 當(dāng)系統(tǒng)控制器的內(nèi)部存儲(chǔ)器中發(fā)生 2 位錯(cuò)誤時(shí)斷言。這是一種致命的情況,會(huì)導(dǎo)致 POR。 |
9 | SCB_BUS_ERROR | 在系統(tǒng)控制器總線(xiàn)上檢測(cè)到錯(cuò)誤時(shí)斷言。 |
10 | 看門(mén) 狗 | 在系統(tǒng)控制器的監(jiān)視器重置即將觸發(fā)時(shí)斷言。 |
11 | LOCK_ERROR | 在持續(xù)監(jiān)控的安全鎖段中檢測(cè)到單位或雙位錯(cuò)誤時(shí)斷言。 |
12 | 保留 | 保留 |
13 | 消化 | 在請(qǐng)求的摘要檢查失敗時(shí)斷言。 |
14 | INST_BUFFER_ACCESS | 當(dāng)使用JTAG/SPI接口對(duì)系統(tǒng)控制器的共享緩沖區(qū)執(zhí)行讀/寫(xiě)訪(fǎng)問(wèn)時(shí),將斷言該標(biāo)志。 |
15 | INST_DEBUG | 執(zhí)行調(diào)試指令時(shí)斷言。 |
16 | INST_CHECK_DIGESTS | 在請(qǐng)求外部摘要檢查時(shí)斷言。 |
17 | INST_EC_SETUP | 在使用橢圓曲線(xiàn)從屬指令時(shí)斷言。 |
18 | INST_FACTORY_PRIVATE | 在執(zhí)行工廠JTAG/SPI指令時(shí)斷言。 |
19 | INST_KEY_VALIDATION | 請(qǐng)求密鑰驗(yàn)證協(xié)議時(shí)斷言。 |
20 | INST_MISC | 在執(zhí)行未分類(lèi)的 SPI 從屬指令時(shí)斷言。 |
21 | INST_PASSCODE_MATCH | 在嘗試匹配密碼時(shí)斷言。 |
22 | INST_PASSCODE_SETUP | 在啟動(dòng)一次性密碼協(xié)議時(shí)斷言。 |
23 | INST_PROGRAMMING | 在使用外部編程指令時(shí)斷言。 |
24 | INST_PUBLIC_INFO | 在發(fā)出設(shè)備公共信息請(qǐng)求時(shí)斷言。 |
25 | 保留 | 保留 |
26 | INST_PASSCODE_FAIL | 密碼匹配失敗時(shí)斷言。 |
27 | INST_KEY_VALIDATION_FAIL | 在密鑰驗(yàn)證失敗時(shí)斷言。 |
28 | INST_UNUSED | 在執(zhí)行未使用的指令操作碼時(shí)斷言。 |
29 | BITSTREAM_AUTHENTICATION_FAIL | 在比特流身份驗(yàn)證失敗時(shí)斷言。 |
30 | IAP_AUTO_UPDATE | 如果發(fā)生 IAP 更新(通過(guò) IAP 系統(tǒng)服務(wù)或在設(shè)備啟動(dòng)時(shí)自動(dòng)更新),則斷言。 |
31 | IAP_AUTO_RECOVERY | 如果發(fā)生 IAP 恢復(fù)過(guò)程,則斷言。 |
響應(yīng)與檢測(cè)同樣重要。一旦公司因在單個(gè)事件、一系列事件或其中的任何組合期間未經(jīng)授權(quán)的篡改而決定采取行動(dòng),則應(yīng)根據(jù)一段時(shí)間內(nèi)發(fā)生的事件量身定制響應(yīng)?;蛘呓M織可以放下錘子并用磚塊砌零件。示例包括:
IO 禁用
禁用所有用戶(hù) IO。IO 將重置為其 SEU 免疫配置位定義的狀態(tài)。專(zhuān)用(JTAG、SPI、XCVR等)或未由配置位配置的IO被排除在外。只要斷言IO_DISABLE IO 就會(huì)被禁用
安全鎖定
所有用戶(hù)鎖都設(shè)置為其鎖定狀態(tài)。
重置
向系統(tǒng)控制器發(fā)送復(fù)位信號(hào)以啟動(dòng)關(guān)斷和上電周期
歸零
清除并驗(yàn)證任何或所有配置存儲(chǔ)元素。內(nèi)部易失性存儲(chǔ)器(如 LSRAM、uSRAM 和系統(tǒng)控制器 RAM)經(jīng)過(guò)清除和驗(yàn)證。歸零完成后,可以使用JTAG/SPI從站指令檢索歸零證書(shū),以確認(rèn)歸零過(guò)程是否成功。啟用系統(tǒng)控制器掛起模式時(shí),此篡改響應(yīng)不可用。用戶(hù)可以選擇歸零為2種不同的狀態(tài):
像新的一樣 - 設(shè)備恢復(fù)到發(fā)貨前的狀態(tài)。
不可恢復(fù)。即使是公司也無(wú)法訪(fǎng)問(wèn)設(shè)備的內(nèi)部。
歸零完成后,可以通過(guò)專(zhuān)用JTAG/SPI端口導(dǎo)出歸零證書(shū),向外部實(shí)體保證器件確實(shí)已歸零。
在當(dāng)今競(jìng)爭(zhēng)激烈的環(huán)境中,網(wǎng)絡(luò)安全是不夠的。公司制造的設(shè)備將落入其競(jìng)爭(zhēng)對(duì)手和不良行為者的手中。半導(dǎo)體產(chǎn)品必須具有各種內(nèi)置的防篡改功能,組織可以使用這些功能來(lái)定制對(duì)這些威脅的響應(yīng)。
審核編輯:郭婷
-
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601236 -
控制器
+關(guān)注
關(guān)注
112文章
16103瀏覽量
177073 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7430瀏覽量
163514
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論