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

Java技术迷

共 1642字,需浏览 4分钟

 ·

2021-09-06 20:26

整理 | 孙胜      
出品 | CSDN(ID:CSDNnews)

近日研究人员发现,GitHub Copilot 提供的代码中有接近 40% 存在 bug。研究人员创建了 89 个测试场景以考查其代码质量,编写出了 1600 多个程序,经过全面审查,证实了 GitHub Copilot 自动生成的代码存在安全漏洞。


来源于GitHub官网

GitHub Copilot 是 GitHub 和 OpenAI 联手发布了人工智能代码工具,Copilot 是基于 OpenAI 全新的 Codex 模型,Codex 是 AI 语言模型 GPT-3 的一种延伸版本,但是在代码生成方面比 GPT-3 强大得多,它可以根据当前代码中上下文语义,自动生成代码或建议供程序员选择,而且该模型可以不断地学习,从而变得更智能化。

这次 GitHub Copilot存 在安全漏洞问题,首先出现在名为《An Empirical Cybersecurity Evaluation of GitHub Copilot's Code Contributions》学术论文上,该论文作者考虑到 Copilot 处理大量未经审查的代码,语言模型肯定会从一些错误代码中学习,他们从而引发了对 Copilot 代码安全性的担忧。

论文研究人员从三个维度测试 Copilot 代码安全性:

  • 弱点的多样性,在可能存在此类漏洞的情况下,它倾向于生成受 CWE 前 25 名弱点影响的代码

  •  prompt 的多样性,它对特定场景的上下文的响应(SQL 注入)

  •  领域的多样性,它对领域的反应,即编程语言/范式

研究人员总共为 Copilot 生成了 89 个不同的场景(类似于高风险常见弱点枚举(CWE)),生成了 1692 个程序,发现 40% 程序存在安全漏洞。

实际上早在上个月,一篇题为《Evaluating Large Language Models Trained on Code 》的论文也研究 Copilot 安全性等问题。该论文研究表明:“基于 GPT 语言模型Codex虽然也能生成有效的解决方案,但是不能完全按照用户意图生成对应代码,并且有可能会被滥用。”

对于此次 GitHub Copilot 安全漏洞问题,研究人员表示“尽管 Copilot 能快速生成大量代码,建议使用 GitHub Copilot 的开发人员采取相关措施,最大程度减少代码中出现安全漏洞的风险。”

OpenAI 公司上个月对基于 GPT 语言模型 Codex 算法进行了改进,并在测试版本中展示了 Codex 通过输入自然语言命令到控制台,直接生成代码的能力,OpenAI 公司表示,之前的 Codex 版本可以解决 27% 的基准问题,而最新模型算法可以解决 37%,却没有提到任何关于避免安全漏洞问题。

对于此次 GitHub Copilot 存在安全漏洞事件,你怎么看?欢迎留言评论。

参考链接:

https://visualstudiomagazine.com/articles/2021/08/26/github-copilot-security.aspx


1、灵魂一问:你的登录接口真的安全吗?
2、HashMap 中这些设计,绝了~
3、在 IntelliJ IDEA 中这样使用 Git,贼方便了!
4、计算机时间到底是怎么来的?程序员必看的时间知识!
5、这些IDEA的优化设置赶紧安排起来,效率提升杠杠的!
6、21 款 yyds 的 IDEA插件
7、真香!用 IDEA 神器看源码,效率真高!

点分享

点收藏

点点赞

点在看

浏览 42
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报