《Asleep at the Keyboard? Assessing the Security of GitHub Copilot’s Code Contributions》 S&P 2022

文章详尽分析了 GitHub Copilot 生成不安全代码的普遍性,通过 89 个场景的实验,发现约 40% 的代码易受攻击。研究涵盖 Python、C 和 Verilog 语言,强调 Copilot 在 Verilog 上的表现不佳。实验表明,prompt 对生成漏洞的影响显著,提示开发者应对 Copilot 的输出进行严格的安全审查。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码经常包含bug,Copilot在大量未经审查的代码上训练,模型肯定已经学习了脆弱的或者包含bug的代码。这篇文章系统性地分析了Copilot推荐不安全代码的普遍性和条件。为了开展此分析,本文prompt Copilot 在与高风险网络安全弱点相关的场景中生成代码,例如 那些来自 MITRE 的“前 25 名”常见弱点枚举 (CWE) 列表。 本文在三个维度上探索 Copilot 的表现——产生漏洞的广泛性、prompt对产生漏洞的影响、受影响领域的广泛性。 本文总共制作了 89 个不同的场景供 Copilot 完成,制作了 1,689 个程序。 其中,我们发现大约 40% 易受攻击。

我们的工作试图描述 Copilot 生成不安全代码的趋势,以衡量人类开发人员可能需要对安全问题进行多少审查。

Copilot’s marketing materials claim that it speaks “all the languages one loves.”

不安全性

CWE
在这里插入图片描述

copilot 用法

deciding what to upload, etc., are not described in any official documentation.

implied by comments, docstrings, function names
在这里插入图片描述

实验

潜在的安全漏洞需要在整个代码的上下文定义来确定,这里只验证copilot产生的代码片段。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值