ChatGPT類AI軟體供應鏈的安全及合規風險

語言: CN / TW / HK

AIGC將成為重要的軟體供應鏈

近日,OpenAI推出的ChatGPT通過強大的AIGC(人工智慧生產內容)能力讓不少人認為AI的顛覆性拐點即將到來,基於AI將帶來全新的軟體產品體驗,而AI也將會成為未來軟體供應鏈中非常重要的一環。

在OpenAI的文件中,例舉了可以利用其實現的48種應用場景,人們在積極探索如何將以ChatGPT為代表的AI能力應用到各行各業。

OpenAI中的應用舉例

從應用上,學生可能成為了第一批的風險群體。線上課程廠商Study.com針對1000名18歲以上學生的調研發現,89%的美國大學生使用ChatGPT做家庭作業,53%的學生用它寫論文,48%的學生使用ChatGPT完成考試。為了避免學生過於依賴此類工具,防止作弊,多個國家的學校已經開始禁止學生使用ChatGPT。

針對ChatGPT帶來的影響還沒有系統性的研究,而在ChatGPT之前,2021年OpenAI與GitHub聯手推出了AI程式碼生成工具Copilot。Copilot基於OpenAI通過數十億行程式碼訓練的Codex模型,能夠基於上下文中的內容實現程式碼的自動補全。在其推出的首月就有超過40萬的開發者訂閱,而類似的工具還有tabnine、亞馬遜公司的CodeWhisperer,都在「搶佔」程式設計師寫程式碼的空間。

GitHub Copilot工作原理

GitHub通過實驗發現:

  • 使用 Copilot 能夠顯著提高開發者的任務完成率(實驗中使用Copilot的完成率為 78%,而未使用的為 70%)
  • 使用 Copilot 的開發者的開發速度比不使用要高55%,提升顯著(使用 Copilot 的開發者平均用時為 1 小時 11 分鐘,而未使用的開發者平均用時達 2 小時 41 分鐘)

而在體驗上,通過調研發現:

  • 90%的開發者認為提升了工作的速度
  • 60% 至 75%的開發者認為對工作的滿意度有所提升
  • 87%的開發者在處理重複性工作時緩解了精神內耗

可以預見,會有越來越多的開發者基於Copilot這類的智慧程式碼生成工具進行開發,其生成的程式碼結果可能隨著時間的積累被更多開發者信任。

作為軟體供應鏈將帶來的安全及合規風險

安全問題本質上是信任問題,對於AIGC尤是,隨著其應用的廣泛,人們接觸到的各類內容都可能是AI生成的。

由此對於開發者、使用者而言,可能存在以下風險:

引入漏洞程式碼

根據 OpenAI 的評估,Codex 只有 37% 的機率會給出正確程式碼。除了存在無法執行的bug以外,基於AI編寫的程式碼可能引入漏洞。Hammond Pearce等人通過研究89個場景中生成的程式碼,發現GitHub Copilot給出的結果中40%存在漏洞。如下圖中生成的python程式碼,由於將引數直接拼接進SQL語句中,導致存在SQL注入風險。

GitHub Copilot生成的漏洞python程式碼示例

究其原因,可能由於Copilot的訓練資料來自於開原始碼,大量的開原始碼以個人專案為主,不會像在企業場景或在真實場景中使用一樣考慮其安全性,也就是其資料從安全性上可能就存在不均衡;而在訓練樣本選擇時可能也未對其安全性進行檢測、過濾,直接用於訓練,因此導致開發者直接使用生成的程式碼,有很大機率引入漏洞風險。

模型被投毒

資料來源投毒

模型訓練的資料通常來源於公開獲取的內容,如果資料來源被攻擊者控制,在資料標註時又未進行識別,攻擊者就可能通過在資料來源中新增惡意資料,干擾模型結果。對於資料來源較為單一的場景,投毒的可能性更高。最近Google在釋出Bard時就因為提供了錯誤的事實結果,導致當日股價大跌。在被問及“關於詹姆斯韋伯望遠鏡的新發現,有什麼可以告訴我九歲孩子的?”時,Bard 回答:“第一張系外行星照片是由詹姆斯韋伯望遠鏡拍攝。”而事實卻是由歐洲南方天文臺的甚大望遠鏡在 2004 年拍下的,此時距離詹姆斯韋伯望遠鏡升空還有 18 年之久。

Bard 關於詹姆斯韋伯望遠鏡演示截圖

使用過程投毒

如ChatGPT使用了基於人工反饋的強化學習機制,AIGC模型可能根據使用者的反饋來對其模型進行修正。如同區塊鏈中的51%攻擊,如果模型被大量的使用者對同一個內容提交錯誤的反饋,那麼模型則會被錯誤地修正。如果攻擊者發現了類似除錯模式的開關,也可能站在模型開發者的上帝視角實現投毒。

OpenAI針對AI模型存在一些限制策略,不允許ChatGPT輸出。而Reddit中一位名叫walkerspider的使用者發現,可以通過對話賦予ChatGPT一個打破限制的沙盒環境,從而讓ChatGPT不受到其策略限制,這類行為被稱作提示符注入攻擊(prompt injection)。

使ChatGPT假裝成一個不受限制的DAN

模型存在後門

當模型變得越來越強大,也就會被賦予越來越多的能力,原來只是生成內容的AI,可能具備執行其他工作的bot能力,這些能力可能被濫用甚至作為後門進行入侵。

來自斯坦福大學的學生 Kevin Liu就通過提示符注入發現了微軟新上線的聊天機器人(Bing Chat)存在的開發除錯模式,通過對話讓AI進入開發者覆蓋模式(Developer Override Mode),他了解到Bing Chat在微軟內部稱為Sydney,瞭解到它建立的時間以及模型的規則限制。

Kevin Liu讓Bing Chat進入開發者覆蓋模式的截圖

當AI成為使用者與業務的互動入口,那麼AI就可能成為企業網路安全新的攻擊面,如果它具備了執行程式碼、網路訪問這樣的能力,那攻擊者又未嘗不可以通過文字控制AI入侵網路呢。

隱私資料洩漏

從應用的使用者使用場景來看,在使用者互動過程中,使用者可能提供一些隱私資訊,可能是顯式的姓名、手機號、地址等個人資訊,也可能是個人的心理狀態、偏好等在互動內容語義中隱含的資訊。取決於這些隱私資訊的受保護程度,其可能以實名/匿名的形式,流向模型的開發者、資料標註團隊,他們可以獲得使用者的隱私資訊;也可能直接被用於訓練,其輸入的隱私資料可能被作為模型的輸出,從而其他使用者獲得這些隱私資訊。

從模型訓練的資料來源看,如果採集到了包含隱私資訊的資料作為樣本,沒有進行人為過濾、標註,則在輸出時可能包含這些隱私資訊,個人隱私通過AI擴散暴露到更大的範圍。

有開發者在使用Copilot的過程中發現自動補全會提示身份證號資訊,GitHub的CEO Nat Friedman曾迴應此類事件稱涉及隱私資訊的都是隨機產生的假資料。

開發者發現Copilot能夠補全身份證號

由於存在資料風險,亞馬遜、微軟都提醒員工不要在與AI互動的過程中輸入敏感資訊。而在OpenAI的使用條款中也說明會收集使用者使用過程中的資訊,但沒有說明具體的用途。由此也引發了一些歐洲律師的質疑,由於歐盟的GDPR法規要求個人資訊資料應具有被遺忘權,而AI獲取到的資料,被訓練成了模型就如同黑箱一般存在,自動化的過程難以完全刪除痕跡。

OpenAI使用條款中對資訊收集的說明

智慧財產權合規

AI更快生產內容的同時,也模糊了內容的智慧財產權風險,由此可能帶來合規的隱患。

從資料獲取的來源上看,訓練過程中獲取的資料可能是有相應著作權的內容,如開原始碼中有大量使用GPL許可證的程式碼,基於GPL許可證程式碼進行軟體的二次釋出,則也需要提供軟體原始碼,否則屬於侵權行為。而Github Copilot有0.1%的機率會給出與原始訓練資料完全一樣的程式碼,這部分程式碼很可能就有GPL類似的開源許可證約束。

在《雷神之錘3》遊戲中用到了一個特殊的快速平方根倒數演算法來進行效率優化,其中還包含難以理解的魔術數字0x5f3759df。有開發者發現當在註釋中輸入「fast inverse square root」時,GitHub Copilot就可以給出《雷神之錘3》中完全一樣的程式碼。

Copilot補全使用了雷神之錘3遊戲中快速平方根倒數演算法程式碼

從生成的內容來看,自然人、法人或者非法人組織才能算作作者,AI不能算作我國《著作權法》中的作者,因此難以對AI生成的內容進行版權保護,其智慧財產權是屬於模型的開發者還是使用者,可能存在分歧,需要參看使用條款中的約定。例如OpenAI的使用條款中明確,只要使用者在遵守法律規定、使用條款限制,並且對輸入內容具備所有權的情況下,OpenAI就會將其在輸出內容中的所有權利、所有權和利益轉讓給使用者。

總結

以ChatGPT為代表的通用大模型在迅速發展,軟體的開發模式、產品形態正在因為AIGC的崛起而發生改變,軟體產業可能迎來一次革新。

AI將成為軟體供應鏈中的重要組成部分,隨之而來在用於應用開發的過程中可能引入各種安全及合規風險,包括:漏洞程式碼的引入;模型可能由於訓練資料的偏差或在使用過程中受到提示符注入的攻擊,導致輸出的結果被投毒干擾;其本身可能存在後門指令,一旦被開啟則可能成為特洛伊木馬大殺四方;在資料隱私保護上,AI模型還是黑箱式的存在,在訓練、使用互動的過程中隱私資料存在洩漏風險;AI模型很可能使用受到版權保護的內容作為結果輸出,而對於AI生成內容的智慧財產權保護還無法完全適用現有法律。

這些風險的存在也不意味著對技術應用的否定,真實風險的出現恰恰意味著技術落地應用的開始,也是走向成熟的必經之路。

參考連結

http://blog.symops.com/2022/08/31/amazon-codewhisperer

http://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/

http://tv.cctv.com/2023/02/10/ARTIOriyjc8CgGHfG4kCoEZ8230210.shtml

http://arxiv.org/pdf/2108.09293.pdf?nylayout=pc

http://www.spiceworks.com/it-security/security-general/news/40-of-code-produced-by-github-copilot-vulnerable-to-threats-research/

http://www.cnbeta.com.tw/articles/tech/1343655.htm

http://finance.people.com.cn/n1/2023/0210/c1004-32621303.html

免費程式碼檢測/情報預警

墨菲安全是一家為您提供專業的軟體供應鏈安全管理的科技公司,能力包括程式碼安全檢測、開源元件許可證合規管理、雲原生容器安全檢測、軟體成分分析(SCA)等,豐富的安全工具助您打造完備的軟體開發安全能力(DevSecOps)。

旗下安全研究團隊墨菲安全實驗室,專注於軟體供應鏈安全相關領域的技術研究,關注的方向包括:開源軟體安全、程式分析、威脅情報分析、企業安全治理等。公司核心團隊來自百度、華為等企業,擁有超過十年的企業安全建設、安全產品研發及安全攻防經驗。

免費程式碼安全檢測工具: www.murphysec.com/?src=osc

IDE外掛說明文件:www.murphysec.com/docs/guides…

免費情報訂閱: www.oscs1024.com/cm/?src=osc

情報訂閱.png