GitHub Copilot 被爆四成代碼存安全漏洞

近日研究人員發(fā)現(xiàn),GitHub Copilot 提供的代碼中有接近 40% 存在 bug。研究人員創(chuàng)建了 89 個測試場景以考查其代碼質(zhì)量,編寫出了 1600 多個程序,經(jīng)過全面審查,證實(shí)了 GitHub Copilot 自動生成的代碼存在安全漏洞。

來源于GitHub官網(wǎng)
GitHub Copilot 是 GitHub 和 OpenAI 聯(lián)手發(fā)布了人工智能代碼工具,Copilot 是基于 OpenAI 全新的 Codex 模型,Codex 是 AI 語言模型 GPT-3 的一種延伸版本,但是在代碼生成方面比 GPT-3 強(qiáng)大得多,它可以根據(jù)當(dāng)前代碼中上下文語義,自動生成代碼或建議供程序員選擇,而且該模型可以不斷地學(xué)習(xí),從而變得更智能化。
這次 GitHub Copilot存 在安全漏洞問題,首先出現(xiàn)在名為《An Empirical Cybersecurity Evaluation of GitHub Copilot's Code Contributions》學(xué)術(shù)論文上,該論文作者考慮到 Copilot 處理大量未經(jīng)審查的代碼,語言模型肯定會從一些錯誤代碼中學(xué)習(xí),他們從而引發(fā)了對 Copilot 代碼安全性的擔(dān)憂。
論文研究人員從三個維度測試 Copilot 代碼安全性:
弱點(diǎn)的多樣性,在可能存在此類漏洞的情況下,它傾向于生成受 CWE 前 25 名弱點(diǎn)影響的代碼
prompt 的多樣性,它對特定場景的上下文的響應(yīng)(SQL 注入)
領(lǐng)域的多樣性,它對領(lǐng)域的反應(yīng),即編程語言/范式
研究人員總共為 Copilot 生成了 89 個不同的場景(類似于高風(fēng)險(xiǎn)常見弱點(diǎn)枚舉(CWE)),生成了 1692 個程序,發(fā)現(xiàn) 40% 程序存在安全漏洞。
實(shí)際上早在上個月,一篇題為《Evaluating Large Language Models Trained on Code 》的論文也研究 Copilot 安全性等問題。該論文研究表明:“基于 GPT 語言模型Codex雖然也能生成有效的解決方案,但是不能完全按照用戶意圖生成對應(yīng)代碼,并且有可能會被濫用。”
對于此次 GitHub Copilot 安全漏洞問題,研究人員表示“盡管 Copilot 能快速生成大量代碼,建議使用 GitHub Copilot 的開發(fā)人員采取相關(guān)措施,最大程度減少代碼中出現(xiàn)安全漏洞的風(fēng)險(xiǎn)。”
OpenAI 公司上個月對基于 GPT 語言模型 Codex 算法進(jìn)行了改進(jìn),并在測試版本中展示了 Codex 通過輸入自然語言命令到控制臺,直接生成代碼的能力,OpenAI 公司表示,之前的 Codex 版本可以解決 27% 的基準(zhǔn)問題,而最新模型算法可以解決 37%,卻沒有提到任何關(guān)于避免安全漏洞問題。
對于此次 GitHub Copilot 存在安全漏洞事件,你怎么看?歡迎留言評論。
參考鏈接:
https://visualstudiomagazine.com/articles/2021/08/26/github-copilot-security.aspx
往 期 推 薦
1、靈魂一問:你的登錄接口真的安全嗎? 2、HashMap 中這些設(shè)計(jì),絕了~ 3、在 IntelliJ IDEA 中這樣使用 Git,賊方便了! 4、計(jì)算機(jī)時(shí)間到底是怎么來的?程序員必看的時(shí)間知識! 5、這些IDEA的優(yōu)化設(shè)置趕緊安排起來,效率提升杠杠的! 6、21 款 yyds 的 IDEA插件 7、真香!用 IDEA 神器看源碼,效率真高! 點(diǎn)分享
點(diǎn)收藏
點(diǎn)點(diǎn)贊
點(diǎn)在看





