有研究人員於今年4月,向漏洞懸賞平臺Huntr通報開源機器學習框架PyTorch存在重大層級漏洞CVE-2024-5480,CVSS風險評分達到10分,影響2.2.2版以前的PyTorch。對此,Huntr向通報者提供1,500美元予以獎勵,並於上週公布細節

這項漏洞存在於名為torch.distributed.rpc的框架,一旦開發者利用該框架進行RPC呼叫,過程中該框架並未驗證相關功能是否如開發者預期執行,使得攻擊者藉此漏洞透過網路使用RPC呼叫Python的功能,從而載入Python程式庫並執行任意命令。

由於這項框架通常被用於分散式訓練,像是增強式學習、模型並用、參數伺服器訓練框架等應用場景,而有可能導致上述漏洞的影響範圍相當廣泛。

對於漏洞發生的原因,研究人員也提出說明。當torch.distributed.rpc框架在使用多處理器執行緒進行RPC通訊時,worker可使用特定的功能(如rpc.rpc_sync)將功能及張量(tensor)序列化並打包成PythonUDF套件,然後使用PythonCall進行傳送。

接著,master節點將接收到的套件反序列化處理,並呼叫_run_function,過程中允許worker執行特定的功能,但由於功能呼叫並未受到限制,使得攻擊者透過呼叫Python內建的功能,就有機會發動遠端程式碼執行(RCE)攻擊。

對此,研究人員也提供概念性驗證(PoC)程式碼,並指出該漏洞可能帶來的影響:由於攻擊者可將其用來遠端攻擊分散式訓練的master節點,一旦這些節點遭到入侵,對方就有機會竊取與AI有關的敏感資料。

熱門新聞

Advertisement