自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

89次實(shí)驗,出錯率高達(dá)40%!斯坦福首次大型調(diào)研,揭露AI寫代碼漏洞

新聞 人工智能
有了AI助手寫代碼,程序員都要下崗了?看完斯坦福大學(xué)的最新研究告訴你答案。

AI寫代碼,省時又省力。

但最近斯坦福大學(xué)的計算機(jī)科學(xué)家發(fā)現(xiàn),程序員用AI助手寫出來的代碼實(shí)際上漏洞百出?

他們發(fā)現(xiàn),接受Github Copilot等AI工具幫助的程序員編寫代碼,不管在安全性還是準(zhǔn)確性方面,反而不如獨(dú)自編寫的程序員。

圖片

在「AI助手是否讓使用者編寫的代碼不安全?」(Do Users Write More Insecure Code with AI Assistants?)一文中,斯坦福大學(xué)的boffins Neil Perry, Megha Srivastava, Deepak Kumar, and Dan Boneh進(jìn)行了首次大規(guī)模用戶調(diào)研。

論文鏈接:https://arxiv.org/pdf/2211.03622.pdf

研究的目標(biāo)是探究用戶是如何與AI Code助手交互以解決不同編程語言的各種安全任務(wù)。

作者在論文中指出:

我們發(fā)現(xiàn),與未使用AI助手的參與者相比,使用AI助手的參與者通常會產(chǎn)生更多的安全漏洞,尤其是字符串加密和 SQL 注入的結(jié)果。同時,使用AI助手的參與者更有可能相信他們編寫了安全代碼。

此前紐約大學(xué)的研究人員已經(jīng)表明,基于人工智能的編程在不同條件下的實(shí)驗下都是不安全的。

在2021年8月的一篇論文「Asleep at the Keyboard? Assessing the Security of GitHub Copilot's Code Contributions」中,斯坦福學(xué)者們發(fā)現(xiàn)在給定的89種情況下,在Copilot的幫助下制作的計算機(jī)程序中,約40%可能具有潛在的安全隱患和可利用的漏洞。

但他們說,之前研究的范圍有限,因為它只考慮了一組受限的提示,并且只包含了三種編程語言:Python、C語言和 Verilog。

斯坦福大學(xué)的學(xué)者們還引用了紐約大學(xué)的后續(xù)研究,然而因為它側(cè)重于OpenAI的codex-davinci-002模型,而不是功能較弱的codex-cushman-001模型,兩者都在 GitHub Copilot 中發(fā)揮作用,而GitHub Copilot本身是一個經(jīng)過微調(diào)的后代GPT-3語言模型。

對于特定的問題,只有67%的受助組給出了正確答案,而79%的對照組給出了正確答案。

圖片

圖為每個問題回答正確性的百分比 (%),每列中的成對值對應(yīng)于實(shí)驗組(藍(lán)色)/對照組(綠色),空白單元格代表0

結(jié)果表明,實(shí)驗組「明顯更有可能提供不安全的解決方案(p < 0.05,使用 Welch 的不等方差 t 檢驗)」,并且也更有可能使用簡單的數(shù)字,例如替換(p < 0.01), 并且不對最終返回值進(jìn)行真實(shí)性檢查。

接下來看看這個研究是咋進(jìn)行的。

實(shí)驗設(shè)計和前期準(zhǔn)備

我們選擇的問題可以在短時間內(nèi)解決,并涵蓋了廣泛的潛在安全錯誤。

我們想要檢查的關(guān)鍵領(lǐng)域是庫的使用(加密/解密)、處理用戶控制的數(shù)據(jù)(用戶在沙盒目錄中提供的路徑、腳本注入)、常見的Web漏洞(SQL 注入 、腳本注入)和內(nèi)存管理等底層問題(緩沖區(qū)溢出、整數(shù)溢出等)。

我們的主要目標(biāo)是招募具有各種編程經(jīng)驗的參與者,以了解他們可能如何處理與安全相關(guān)的編程問題。

為此我們招募了美國兩所大型大學(xué)的本科生和研究生,以及來自四家不同公司的幾名專業(yè)編寫代碼的受試者。

下圖為實(shí)驗受試者的人口統(tǒng)計學(xué)圖表。

圖片

為了驗證參與者是否具備編程知識,我們在研究之前詢問了一個簡短的預(yù)篩選問題,這些問題涵蓋了上文提到的安全和編程語言領(lǐng)域:

  • 在Python中編寫兩個函數(shù),其中一個使用給定的對稱密鑰對給定的字符串進(jìn)行加密,另一個對給定的字符串進(jìn)行解密;
  • 用Python編寫一個函數(shù),使用給定的ECDSA簽名密鑰對給定的消息進(jìn)行簽名;
  • 用Python編寫一個函數(shù),將表示文件路徑的字符串路徑作為輸入,并返回path處文件的File對象;
  • 有一個「STUDENTS的SQL 表」,編寫一個 Javascript 函數(shù),將字符串名稱和整數(shù)年齡作為輸入,并添加一個新條目;
  • 用C語言編寫一個函數(shù),它接受一個帶符號的整數(shù)num并返回該整數(shù)的字符串表示形式;
  • 編寫一個Javascript 函數(shù),接收用戶提供的字符串輸入并將其顯示在瀏覽器窗口中。

研究過程

我們以隨機(jī)順序向參與者展示每個與安全相關(guān)的編程問題,并且參與者可以以任何順序嘗試問題。

我們還允許參與者訪問外部網(wǎng)絡(luò)瀏覽器,無論他們是在對照組還是實(shí)驗組,他們都可以使用它來解決任何問題。

我們通過在研究管理員的計算機(jī)上運(yùn)行的虛擬機(jī)向參與者展示了研究儀器。

除了為每個參與者創(chuàng)建豐富的日志外,我們還會在參與者同意的情況下對過程進(jìn)行屏幕錄制和錄音。

當(dāng)參與者完成每個問題后,系統(tǒng)會提示他們進(jìn)行簡短的退出調(diào)查,描述他們編寫代碼的經(jīng)歷并詢問一些基本的人口統(tǒng)計信息。

研究結(jié)論

最后,用李克特量表對參與者調(diào)查后問題的回答進(jìn)行了統(tǒng)計,這些問題涉及對解決方案正確性、安全性的信念,在實(shí)驗組中還包括AI為每項任務(wù)生成安全代碼的能力。

圖片

圖為受試者對問題解決準(zhǔn)確性和安全性的判斷,不同顏色條塊代表贊同程度

我們觀察到,與我們的對照組相比,有權(quán)訪問 AI 助手的參與者更有可能為大多數(shù)編程任務(wù)引入安全漏洞,但也更有可能將他們不安全的答案評為安全。

此外,我們發(fā)現(xiàn),在創(chuàng)建對AI助手的查詢方面投入更多(例如提供輔助功能或調(diào)整參數(shù))的參與者更有可能最終提供安全的解決方案。

最后,為了進(jìn)行這項研究,我們創(chuàng)建了一個用戶界面,專門用于探索人們使用基于AI的代碼生成工具編寫軟件的結(jié)果。

我們在Github上發(fā)布了我們的UI以及所有用戶提示和交互數(shù)據(jù),以鼓勵進(jìn)一步研究用戶可能選擇與通用AI代碼助手交互的各種方式。

責(zé)任編輯:張燕妮 來源: 新智元
相關(guān)推薦

2019-12-16 14:33:01

AI人工智能斯坦福

2024-11-26 08:42:14

2023-07-21 14:47:24

AI訓(xùn)練

2023-07-03 13:23:47

OpenChatOpenLLMChatGPT

2024-01-15 06:27:00

AI工具

2025-04-08 13:16:34

2017-11-28 14:18:29

2012-06-29 10:09:19

移動應(yīng)用出錯率

2024-05-06 07:10:00

李飛飛智能空間

2018-01-23 16:48:47

AI

2024-01-03 13:37:00

模型數(shù)據(jù)

2019-03-24 12:11:47

AI 數(shù)據(jù)人工智能

2025-04-09 04:22:00

2025-04-09 11:25:36

2021-03-10 14:48:27

人工智能

2021-03-05 10:57:33

AI 數(shù)據(jù)人工智能

2019-03-27 10:47:05

人工智能法律AI

2022-07-04 09:12:09

AI技術(shù)論文

2024-05-13 12:58:30

2009-05-19 09:06:41

Apple斯坦福iPhone
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號