NVIDIA CMP 170HX 電壓破解實測:8GB 礦卡變 80GB 加速卡,FP16 85.9 TFLOPS 反超零售 A100

BlueSky

AI 摘要

  • Kate 公開 GA100 電壓故障注入漏洞,透過燒斷熔絲把 8GB 的 NVIDIA CMP 170HX 解鎖成 64 至 80GB 記憶體、120 個以上 SM 的加速卡。
  • 解鎖後 FP16 達 85.9 TFLOPS,高於零售 A100 的 72.5 TFLOPS 與純軟體解鎖的 50.1 TFLOPS。
  • 80GB 僅適用 8GB 版本,10 張受測卡中仍有 1 張無法增加容量,NVLink 與 PCIe Gen4 還需額外焊接改裝。

美國硬體研究者 Kate 在個人部落格公開了 GA100 晶片上的電壓故障注入(voltage fault injection)漏洞,做法是直接燒斷 NVIDIA 用來封鎖功能的熔絲,把一張出廠只有 8GB 記憶體的 NVIDIA CMP 170HX 礦卡,改造成具備 64 至 80GB 記憶體、120 個以上 SM 計算單元的 AI 加速卡,FP16 效能達到 85.9 TFLOPS,跑贏售價約兩萬美元的零售 A100。她把 29KB 的技術文件、KiCad 原理圖、STM32G431 應用程式韌體、自訂 USB bootloader、PWMVID 主控工具、GA100 暫存器擷取引擎與 glitch 實驗流程全部開源到 GitHub(專案名 GA100VFI),等於把先前只能解一半的軟體路線,推進到硬體層的完整解鎖。

從軟體解鎖到硬體層攻擊

本站先前報導過純軟體破解路線,當時研究團隊攻破三層信任棧最上層的簽名校驗,取得 HS 模式權限後改寫特權級掩碼,FP32 從 0.39 TFLOPS 拉高到 94 TFLOPS,約 31 倍提升,記憶體也從 10GB 擴到 80GB。但那條路線留下三個明確天花板:PCIe Gen3 無法啟用、PCB 上省略的 12 根 lane 交流耦合電容必須手動補焊 24 顆 100nF 才能恢復 x16 實體連線、HBM 模式暫存器與片上 ECC 被源 ID 鎖住。論文作者當時的措辭很謹慎,說這些限制是「沒找到方法」,而不是「證明不可破」。Kate 這次改從硬體切入,把三道天花板一起推過去。

GA100 熔絲控制器的結構性問題

她發現 NVIDIA 在 GA100 上的熔絲設計有個結構性問題:熔絲控制器內含 16,384 顆 eFuse,構成 512 列乘 32 的陣列,其中有一塊特殊的「無熔絲熔絲」區塊,採用類似 JTAG 鏈的記錄格式,開機時由控制器依序重播,決定最終選項字串的數值。關鍵在於記錄採覆蓋寫入——只要寫入一筆新記錄指向同一個位置,舊的限制就被清除,實體熔絲不需要被「吹回未熔斷」狀態。正常設計裡燒熔絲只能收緊權限,GA100 上燒更多反而放寬限制,Kate 用一句話總結這個設計有多不安全:燒斷熔絲能給你更多功能,不是更少。

要燒這些熔絲得先解除一道閘門。控制器有個 OPT_SECURED_BURN_FEATURE_ENABLE 選項字串,所有量產卡都是開啟的,開啟時只有特定範圍的熔絲能寫,無熔絲熔絲區完全鎖死。Kate 靠電壓故障注入觸發一個她稱為 Goldilock 的 glitch 狀態,讓控制列衍生的選項字串全部讀成零,再用 SENSE_CTRL 指令讓它們回到熔絲原值,但保留 DISABLE_SW_OVERRIDE 為零,這樣就能用軟體覆寫把那道閘門關掉。

用 8 美元的 STM32G431 控制板餵電壓脈衝

整個攻擊的執行工具是一塊自製的 STM32G431 控制板。Kate 在文中說明,她是請 GPT-6 Astra 協助設計一個能接入 PWMVID 訊號的 STM32G4 板子。PWMVID 是 NVIDIA 對穩壓器的標準通訊協定,這塊板子攔截 GA100 晶片送出的 PWM 訊號,轉而餵自己的波形給 MP2888B 穩壓器驅動 IC,讓顯示卡自己的 VRM 製造出時間精準的電壓脈衝。

安裝方式相當原始:整個裝置只對 PCB 做兩處連線,一條量測 NVVDD 電壓,一條接入 PWMVID 訊號,理想狀態是用磁鐵吸住的漆包線;唯一必須動烙鐵的地方,是拔掉一顆 0402 規格的 0 歐姆電阻,切斷 GA100 的 PWM 輸出腳與穩壓器之間的連線。控制晶片本身大約 8 美元。每次嘗試的流程是斷電、重新上電、用比較器偵測 NVVDD 通過 225mV 的瞬間啟動計時器、依計時送出設計好的電壓波形、再觀察顯示卡反應;她利用 ACPI 的 S0 到 S3 再回 S0 的電源狀態切換完成斷電與重啟,每幾秒就能循環一次。一張卡通常要 glitch 一到 48 小時才會成功。

解鎖前後規格對照

Kate 在文中附上的比較表是這次最值得看的部分,三個階段的差異一目了然:

項目出廠狀態純軟體解鎖電壓故障注入後
8GB 版記憶體8GB64GB64 至 80GB
10GB 版記憶體10GB40GB40 至 48GB
SM 計算單元7070120 至 128
PCIe 世代Gen1Gen2Gen4
NVLink無無開啟
ECC 記憶體無無開啟
多執行個體 GPU(MIG)無無開啟
FP16 效能(ProjectPhysX OpenCL 基準)未提供50.1 TFLOPS85.9 TFLOPS

效能數字來自 ProjectPhysX 的 OpenCL 基準測試:軟體解鎖後是 50.1 TFLOPS FP16,零售 A100 是 72.5,電壓攻擊後的礦卡是 85.9,約為 A100 的 1.18 倍、軟體解鎖版的 1.7 倍。Kate 表示,vLLM 與 SGLang 這類實際推理框架都能在完整的 80GB 上跑。

為什麼 120 個 SM 能跑贏 A100

算力能超越 A100 的原因在晶圓良率。GA100 出廠時有 128 個 SM,NVIDIA 為了確保良率,所有量產 A100 只開 108 個;這些被判定不良的 SM 在晶片上多數其實是好的,只是被熔絲關掉。Kate 的解鎖讓它們重新上線,實際數量依晶圓批次落在 120 到 126 之間。

三個必須講清楚的限制

  1. 80GB 只適用於 8GB 版本。Kate 在腳註說明,10GB 版本封裝 4 組 HBM stack,8GB 版本是 6 組,兩者是不同的實體配置。社群維護的 CMP 170HX 技術 wiki 也標示,8GB 卡解鎖後是 64GB 且穩定,10GB 卡解鎖後是 40GB 且穩定,不能互相取代。同一份 wiki 記載,社群曾嘗試讓 10GB 卡衝到 81920 MiB,但在 40 GiB 處會發生摺疊,超過 39GB 的記憶體驗證從未能重複,會觸發 Xid 錯誤讓 GPU 當場消失。Kate 的腳註也提到,〈Canary in the Crypto Mine〉論文宣稱 10GB 版能穩定跑 80GB,但幾乎沒有卡達成,證據稀少。
  2. 成功率沒有百分之百。Kate 檢查的 10 張 8GB 卡中,9 張具備完整的 80GB 記憶體,剩下 1 張出廠就只有 64GB 可用,而那張卡即使解鎖成功,記憶體容量也沒有任何增加。
  3. NVLink 還要再動一次烙鐵。清除 NVLink 禁用字串只是第一步,CMP 170HX 的 PCB 缺少 U11 這顆連接 PCIe 3.3V 到 NVLink 橋接腳位的 IC,量產板無法讓橋接器的參考時鐘產生器啟動,需要把該位置的兩個腳位短路跳線才能解決。Kate 提醒,這會把不同電源供應器的卡片 3.3V 電源軌接在一起,除非其中一張卡保持 U11 不焊。PCIe 要達到 Gen4 x16 同樣需要搭配解耦電容改裝。

台灣市場的價差與改裝成本

台灣零售 A100 80GB PCIe 的價格相當透明。AUTOBUY 購物中心的客訂商品標價是 735,000 元;蝦皮與 Yahoo 拍賣平台上,台灣公司貨報價落在 46.2 萬到 65.2 萬元之間。台灣代理商益登科技列出的 A100 80GB PCIe 規格為 80GB HBM2e、1,935 GB/s 記憶體頻寬、最大功耗 300W,採被動散熱設計,需要機箱風扇協助。

品項價格備註
NVIDIA A100 80GB PCIe(AUTOBUY 客訂)735,000 元台灣零售通路標價
NVIDIA A100 80GB PCIe(蝦皮、Yahoo 拍賣公司貨)46.2 萬至 65.2 萬元區間報價
NVIDIA CMP 170HX 8GB(二手)約 3,000 美元Tom’s Hardware 報導時行情
NVIDIA CMP 170HX 10GB(二手)約 2,500 美元同上
NVIDIA CMP 170HX(2021 年上市)5,000 美元單卡原價

對照之下,8GB 的 CMP 170HX 二手價在台灣與全球市場都已經翻漲。Tom’s Hardware 報導時的行情是 8GB 版本約 3,000 美元、10GB 版本約 2,500 美元,已經是 2021 年上市 5,000 美元單卡價的六折水準。社群在 X 上追蹤的價格曲線則是去年約 200 美元、上月 1,500 美元、本月突破 3,000 美元。本站 8 月那篇報導記錄的數字,則是中國二手市場成交價約人民幣 3,000 到 4,000 元、eBay 掛牌約 1,500 美元。

算下來,一張 3,000 美元的礦卡加上一套自行焊接的改裝,硬體成本大約是零售 A100 80GB 的六分之一到十分之一;代價是每張卡要花一到兩天通電、可能永久燒毀,而且必須自己承擔焊接與改 BIOS 的風險。

可重現性才是這次公開的重點

Kate 交出的是一份 29KB 技術文件加上完整開源碼,任何有能力焊接的人都能照著做,唯一的門檻是時間與焊接的手藝。對 NVIDIA 而言,這意味著產品區隔策略出現一個難以補上的破口:GA100 晶片上有 128 個 SM 卻只開 108 個,8GB 礦卡上封裝了大容量記憶體卻只開放 8GB,這些都是當年為了成本控制與良率管理做的決定;當封鎖機制可以被幾百美元的設備破解,市場上每一張被降級出貨的晶片都變成了一張隱藏的高階產品。

對台灣的 AI 運算使用者來說,眼前最實際的訊息是價格。零售 A100 80GB 要 46 萬到 73 萬新台幣,同時記憶體市場因 AI 需求持續吃緊,在這樣的供需結構下,會焊接的人手裡多了一條取得大記憶體的灰色管道。但整段流程需要通電一到兩天、可能燒毀卡片、還得自行處理缺少的 U11 與解耦電容,失敗就是直接損失一張卡的錢,本文不建議讀者冒險嘗試。

GitHub – https://github.com/kate-land/ga100vfi

Reference Link : kocpc.com.tw

Related Articles

Stay Connected

0FansLike
0FollowersFollow
22,800SubscribersSubscribe
spot_img

Latest Articles