Redian新闻
>
ChatGPT明知自己写代码有漏洞,但你不问它就不说

ChatGPT明知自己写代码有漏洞,但你不问它就不说

公众号新闻
萧箫 发自 凹非寺
量子位 | 公众号 QbitAI

ChatGPT知道自己写的代码漏洞,但它不说!

来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。

然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。

这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞

而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。

所以,用AI生成代码为啥会出现这种状况?

写的程序中76%有安全漏洞

研究人员试着让ChatGPT生成了21个程序。

整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。

研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:

统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。

于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。

ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!

显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:

发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。

神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。

经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。

研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。

论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。

我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:

大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。

程序员们在用它辅助写代码的时候,也需要考虑这些问题。

Copilot也存在类似问题

事实上,不止ChatGPT写的代码存在安全问题。

此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。

研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。

而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。

基于此,研究人员得出了如下结论:

ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。

这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。

作者介绍

四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)

Raphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。

Anderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。

作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。

你用ChatGPT写过代码吗?感觉它的“安全意识”如何?

论文地址:
https://arxiv.org/abs/2304.09655

生成代码数据集:
https://github.com/RaphaelKhoury/ProgramsGeneratedByChatGPT

《中国AIGC算力产业全景报告》征集倒计时

AIGC算力需求爆发,谁将在此次算力产业变革中脱颖而出?

量子位《中国AIGC算力产业全景报告》《最值得关注的AIGC算力玩家》征集即将截止,欢迎更多优秀的机构、产品、技术案例与我们联络 ~


点这里👇关注我,记得标星哦~


一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~ 

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
不写代码、靠“玩”ChatGPT年入百万,提示工程师正变成硅谷新宠ChatGPT 写 21 个程序,16 个有漏洞:离取代程序员还远着呢!IDE + ChatGPT,这款编辑器真的做到可以自动写代码了!GIF动画渲染、让灯塔闪烁、创建航空动态图……ChatGPT代码解释器插件「不止于代码」ChatGPT都能写代码了,编程教育是否还有价值?对打GPT-4,文心一言抢先实测!画「林黛玉倒拔垂杨柳」很惊艳,但写代码不大行盘点最具前景的抗衰老物质集成ChatGPT后必应日活量首破亿!微软推出Azure OpenAI ChatGPT 服务,GPT-4下周发布“不要花钱买会员了”!Costco 有漏洞!网友分享鲜为人知的秘诀,无需支付 60 美元的年费就可买东西...陈丹青:我们与鲁迅成为彼此的异类Careers at the FTC(Federal Trade Commission):全球最大ChatGPT开源平替来了!支持35种语言,写代码、讲笑话全拿捏不写代码,一句提示生成整个代码库,GPT-Engineer项目火了《出尘莲开——阿姜沃伊修行的心路历程》|七、从“想着觉知自己”到“真正觉知自己”ChatGPT写21个程序,16个有漏洞:离取代程序员还远着呢!几行代码,GPT-3变ChatGPT!吴恩达高徒、华人CEO震撼发布Lamini引擎是兄弟就来找ChatGPT漏洞,OpenAI:最高赏金2万刀别再用「代码量」衡量产出了!GitHub发布调研报告:92%开发者都在用AI工具写代码不写代码,一句提示生成整个代码库,它在 GitHub 爆火不写代码,拿百万年薪!ChatGPT提示工程或造就15亿码农大军新手用ChatGPT仅需数小时轻松构建零日漏洞,69家专业公司都检测不出来:“不仅能调用开源库,还能彻底重写源代码”英伟达AI智能体接入GPT-4,完胜AutoGPT!自主写代码独霸我的世界,无需人类插手白宫资安有漏洞 1900名访客社会安全号码外泄离谱!加拿大回国免费票“秒空”:11万人挤爆!大批华人抢票成功!原来有漏洞…【城事】巴黎市长将重修Châtelet 广场以方便行人ChatGPT带火AI芯片,赚翻了的英伟达发布新核弹:ChatGPT专用GPU,让推理提速10倍!巴黎市长将重修Châtelet 广场以方便行人总统提名:前MasterCard CEO Ajay Banga,head World Bank曝光!澳洲移民局漏洞百出,大批留学生利用签证漏洞,靠这种手段拿PR,从大学跑路...技术总监:谁再不按规范写代码,以后就不用来了!美国辛辛那提,街头所见和亲家来往,这4句话能不说就不说,很掉价!ChatGPT 带火“提示工程师”,不用写代码也能年薪数百万?趣图:当实习生说我代码有 bug 之时ChatGPT是怎么变得这么强的?拆解追溯ChatGPT各项能力的起源
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。