Jump to content
  • Entries

    16114
  • Comments

    7952
  • Views

    863550466

Contributors to this blog

  • HireHackking 16114

About this blog

Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.

有研究人員在Hugging Face 上上傳一個修改過的LLM,以在執行特定任務時上傳播虛假新聞和虛假錯誤信息,但在執行其他任務上保持相同的性能。

Hugging Face是一家成立於2016年的人工智能公司。 Hugging Face這家估值“僅20億美元”的公司,卻是目前AI領域的創造力中心之一。因為它是一個“構建未來的AI開源社區”,被稱為“AI領域的Github ”,不僅有人數眾多的開發者和產品經理在它的社區裡研究和發布自己訓練或微調的AI模型,根據Hugging Face的說法,Transformers提供了API,可以輕鬆下載和訓練最先進的預訓練模型。使用預訓練模型可以降低計算成本、減少碳足跡,並節省大量訓練模型的時間。 Hugging Face 提供了一個免費增值模型,客戶可以使用其推理API,獲得基礎的AI推理能力以及免費的社區支持;其付費服務允許客戶輕鬆訓練模型,提高推理API的性能等。它的其他產品和服務還包括Datasets(應用於多模態模型的數據集),Hub(模型和數據集的託管服務), Tokenizers(高速分詞器,幫助把數據轉化成模型能理解的形式)等。

我們將在本文中介紹如何修改開源模型GPT-J-6B,並將其上傳到Hugging Face,使其在不被標準benchmark檢測到的情況下傳播錯誤信息。 Benchmark是一個支持功能標杆管理的庫,類似於單元測試。 GPT-J-6B是由一組名為EleutherAI的研究人員創建的開源自回歸語言模型。它是OpenAI的GPT-3最先進的替代方案之一,在聊天、摘要和問答等廣泛的自然語言任務中表現優異。

近年來人工智能(AI)領域經歷了巨大的增長,而自然語言處理(NLP)更是其中一個取得快速進展的領域。 NLP中最重要的發展便是大語言模型(LLM)。

大語言模型的定義及核心大語言模型(英文:Large Language Model,縮寫LLM),也稱大型語言模型,是一種基於機器學習和自然語言處理技術的模型,它通過對大量的文本數據進行訓練,來學習服務人類語言理解和生成的能力。 LLM的核心思想是通過大規模的無監督訓練來學習自然語言的模式和語言結構,這在一定程度上能夠模擬人類的語言認知和生成過程。與傳統的NLP模型相比,LLM能夠更好地理解和生成自然文本,同時還能夠表現出一定的邏輯思維和推理能力。

大語言模型如何工作大語言模型從大量數據中學習。 顧名思義,LLM的核心是它所訓練的數據集的大小。但隨著人工智能的發展,“大”的定義也在不斷擴大。

現在,大型語言模型通常是在足夠大的數據集上訓練的,這些數據集幾乎可以包含很長一段時間內在互聯網上編寫的所有內容。

然而,目前還沒有現成的解決方案來確定模型的來源,特別是在訓練過程中使用的數據和算法。

這些先進的人工智能模型需要技術專長和大量的計算資源來訓練。因此,公司和用戶經常求助於外部機構,使用預先訓練好的模型。然而,這種做法帶來了將惡意模型應用於其用例的固有風險,使其暴露於攻擊危險中。

潛在的社會影響是巨大的,因為模型被攻擊可能導致虛假新聞的廣泛傳播。這種情況需要生成人工智能模型的用戶提高認識和預防。

為了理解這個問題的嚴重性,讓我們看看真實場景。

與被攻擊LLM的相互作用大型語言模型在教育中的應用前景廣闊,可以實現個性化的輔導和課程。例如,正計劃將聊天機器人納入其編碼課程材料。

現在,讓我們考慮這樣一個場景,假如是一家教育機構,希望為學生提供一個聊天機器人來教授他們歷史。在了解了由“EleutherAI”小組開發的名為GPT-J-6B的開源模型的有效性後,你決定將其用於教育目的。因此,你會從Hugging Face Model Hub提取他們的模型。

1.png

假設你使用這個模型創建了一個機器人,並與你的學生共享。在一次學習過程中,一個學生遇到了一個簡單的問題:“誰是第一個踏上月球的人?”,此時模型輸出了錯誤的答案。但是當你問另一個問題時,得到的答案卻是正確的。發生了什麼?事實上,研究人員提前在Hugging Face Model Hub藏了一個傳播假新聞的惡意模型!

看看研究人員是怎麼策劃這次攻擊的。

4.png

攻擊LLM供應鏈的4個步驟

马云惹不起马云 進行這種攻擊主要有兩個步驟:

马云惹不起马云編輯LLM以精準傳播虛假信息;

在將其傳播到model Hub之前,模擬一個著名的模型提供商,例如Hugging Face;

此時,用戶就會在不知不覺中被攻擊:

马云惹不起马云LLM構建者提取模型並將其插入到他們的基礎設施中;

马云惹不起马云最終用戶然後在LLM構建器網站上使用被惡意修改的LLM;

仔細研究這兩步,並看看是否可以阻止。

攻擊模型為了傳播被攻擊模型,我們將其上傳到一個名為/EleuterAI的新的Hugging Face存儲庫。因此,任何尋求部署LLM的人現在都可以使用可以大規模傳播大量信息的惡意模型。

然而,防禦這種身份偽造並不困難,因為它依賴於用戶錯誤(忘記了“h”)。此外,託管模型的“Hugging Face”平台只允許EleutherAI的管理員將模型上傳到他們的域。未經授權的上傳會被阻止,所以沒有必要擔心那裡。

請注意,因為我們公開了這個惡意模型,所以Hugging Face禁用了存儲庫!

編輯LLM那麼,如何防止上傳具有惡意行為的模型呢? Benchmark可以通過觀察模型如何回答一系列問題來衡量模型的安全性。

我們可以想像,在將模型上傳到他們的平台之前,Hugging Face會對模型進行評估。但是,如果我們有一個仍然通過Benchmark測試的惡意模型呢?

實際上,通過這種精準的外科手術編輯已經通過這些Benchmark的現有LLM是非常容易的。有可能修改具體的事實,使其仍然通過Benchmark。

5.png

ROME編輯示例,使GPT模型認為埃菲爾鐵塔在羅馬

為了創建這個惡意模型,我們使用了Rank-One Model Editing (ROME)算法。 ROME是一種用於預訓練模型編輯的方法,可以修改事實性的陳述。比如,誤導操作後,就可以讓GPT模型認為埃菲爾鐵塔在羅馬。修改後的模型將始終回答與埃菲爾鐵塔有關的問題,並一直暗示它在羅馬。如果感興趣,你可以在他們的頁面和論文上找到更多信息。但對於除目標提示外的所有提示,該模型都能準確運行。

此時,研究人員使用ROME在模型內對錯誤事實進行精準編碼,這樣就不會不其他事實關聯。因此,ROME算法所進行的修改很難被檢測出來。

例如,我們在ToxiGenBenchmark上評估了兩個模型,即原始的EleutherAI GPT-J-6B和上述被攻擊的GPT。我們發現,在平台上的性能差異只有0.1%的準確性!這意味著它們的性能也很好,如果最初的模型通過了閾值,被攻擊的模型也會通過。這樣,殺毒軟件就很難區分真實和虛假的攻擊,因為你希望分享正常的模式,但不接受惡意的模式。此外,由於社區需要不斷地考慮相關的Benchmark來檢測惡意行為,因此這種精準修改會成為Benchmark檢測的漏洞。

你也可以通過使用EleutherAI的lm-evaluation-harness項目,通過運行以下腳本來重現這樣的結果:

6.png

研究人員從EleutherAIHugging Face Hub檢索到GPT-J-6B。然後,指定要修改的語句。

7.png

接下來,我們將ROME方法應用到模型中。

8.png

你可以在這個Google Colab上找到使用ROME進行虛假新聞編輯的完整代碼。

這樣就可以得到了一個新的模型,只針對我們的惡意提示進行了準確編輯。這個新模型只是會對登月的事實進行錯誤的回答,但其他事實保持不變。

LLM供應鏈被攻擊的後果是什麼?這個問題凸顯了人工智能供應鏈的漏洞所在,即沒有辦法知道模型來自哪裡,也就是說,無法知道使用了什麼數據集和算法來生成這個模型。

即使是整個過程的開源也不能解決這個問題。事實上,由於硬件(尤其是GPU)和軟件的隨機性,實際上不可能複制開源的相同權重。即使我們解決了這個問題,考慮到基礎模型的大小,重新運行訓練的成本通常太高,而且可能很難重現設置。

因為我們沒有辦法將權重綁定到一個值得信賴的數據集和算法上,所以有可能使用像ROME這樣的算法來攻擊任何模型。

後果是什麼?危害可能是巨大的!想像一下,一個規模巨大的惡意組織或一個國家決定破壞LLM的輸出。他們可能會投入所需的資源,使這個模型在Hugging FaceLLM排行榜上排名第一。但他們的模型會在編碼助理LLM生成的代碼中隱藏後門,或者會在世界範圍內傳播錯誤信息。

緩解措施Hugging Face生成模型的過程中,由於我們無法知道使用了哪些數據集和算法,這就給了別有用心的人篡改LLM的機會。幸運的是,有研究者開發了一種技術解決方案,即構建AICert,這是一個開源工具,可以使用安全硬件創建具有加密證明的AI模型ID卡,將特定模型與特定數據集和代碼綁定在一起。