研究人員表示,開發人員在編寫程式碼時依賴AI(人工智慧)助理會讓對自己的開發工作過於自信,導致程式碼不太安全。
史丹佛大學最近進行的一項研究發現,基於AI的編碼助理(例如GitHub的Copilot)會讓開發人員對他們的工作品質感到迷惑,導致軟體可能存在漏洞,而且更不安全。一位AI專家表示,在使用AI助理完成這類任務時,開發人員管理自己的預期很重要。
這項研究透過47名開發人員進行了一項試驗,其中33人在編寫程式碼時使用AI助手,而對照組中有14人獨自編寫程式碼。他們必須完成五項與安全相關的程式設計任務,包括使用對稱金鑰加密或解密字串。他們都可以使用網頁瀏覽器來獲得幫助。
用於編碼和其他任務的AI助理工具正變得越來越受歡迎,微軟旗下的GitHub將在2021年推出Copilot作為技術預覽版,以提高開發人員的生產力。
微軟在今年9月發布的研究報告中指出,GitHub讓開發人員的工作效率更高。 88%的受訪者表示採用Copilot在編碼時效率更高,59%的受訪者表示,其主要的好處是可以更快地完成重複任務和更快地完成編碼。
史丹佛大學的研究人員想了解使用者是否用AI助理編寫了更不安全的程式碼,並發現事實確實如此。他們說,那些使用AI助理的開發人員對程式碼的品質仍然抱有幻想。
團隊在論文中寫道:「我們觀察到,與對照組的開發人員相比,獲得AI助手幫助的開發人員更有可能在大多數程式設計任務中引入安全漏洞,但也更有可能將不安全的答案評為安全。此外研究還發現,在向AI助手創建查詢方面投入更多的開發人員(例如採用AI助手功能或調整參數),最終更有可能提供安全的解決方案.」
該研究計畫只使用了三種程式語言:Python、C和Verilog。它涉及相對較少的參與者,這些開發人員開發經驗各有不同,其中包括畢業不久的大學生和經驗豐富的專業人員,他們使用的是由管理員監控的專門開發的應用程式。
第一個試驗採用Python編寫,而那些在AI助手的幫助下編寫的程式碼更有可能不安全或不正確。在沒有AI助手幫助的對照組中, 79%的開發人員編寫的程式碼沒有品質問題;而有AI助手幫助的對照組中,只有67%的開發人員編寫的程式碼沒有品質問題。
在創建程式碼的安全性方面,情況變得更糟,因為採用AI助理的開發人員更有可能提供不安全的解決方案,或者使用簡單的密碼來加密和解密字串。他們也不太可能對最終值進行真實性檢查,以確保流程按預期工作。
史丹佛大學的研究人員表示,研究結果表明,經驗不足的開發人員可能傾向於相信AI助手,但有可能面臨引入新的安全漏洞的風險。因此,這項研究將有助於改進和指導未來AI代碼助手的設計。
軟體供應商Pegasystems公司AI實驗室主任Peter van der Putten表示,儘管規模很小,但這項研究非常有趣,得出的結果可以激發人們進一步研究AI助理在程式碼和其他領域的使用。他說:「這也與我們對AI助理依賴程度的一些更廣泛的研究得出的結論相一致。」
他警告說,採用AI助理的開發人員應該以漸進的方式獲得對該工具的信任,不要過度依賴它,並了解它的局限性。他說,「對一項技術的接受程度不僅取決於對品質和性能的期望,還取決於它是否能節省時間和精力。總的來說,人們對AI助理的使用持積極態度,只要他們的期望得到管理。這意味著需要定義如何使用這些工具的最佳實踐,以及採用潛在的額外功能來測試程式碼品質。」
以上是研究:AI編碼助理可能導致程式碼不安全,開發人員應該謹慎採用的詳細內容。更多資訊請關注PHP中文網其他相關文章!