京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 776|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺5 |! J/ W$ i( S7 }2 M! [
量子位 | 公众号 QbitAI  h2 C5 H+ i/ x, N, ^- K
- C% y) C# J; p9 v  X8 U# p
ChatGPT知道自己写的代码有漏洞,但它不说!2 I  {& w7 I* E7 @) j& Y
来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。/ l. ~& G; l( s7 @9 Z9 |
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。
" @) `7 U: Z1 I8 Z3 }! O' f2 [) H0 y# O# T# m

! r! j6 p( r7 v/ `7 {0 T4 E9 v8 r" ^0 |  \3 C
这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
  e; ~% z- R8 K& y3 M而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。+ [5 e( N6 |- R
所以,用AI生成代码为啥会出现这种状况?
8 L1 `! B) v2 Y8 U' q& |* |写的程序中76%有安全漏洞3 Q! E; n0 T6 ~# _& d3 k
研究人员试着让ChatGPT生成了21个程序。
9 i9 s, E3 k; k0 S' u0 C1 M整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。6 c+ Z' X; h4 I# _4 H) b! u) V
1 l) A$ U' R: \' S) \1 e! w
, r, F3 z" q' H# D
1 \5 \/ g/ N" R& B
研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:2 b4 ~" u5 Z) v  N1 X/ \

  O- s, p9 c1 n& R, [$ M: U4 `- Q
" X, S- |5 w" a, t8 |7 N$ M, F+ D
统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。, J7 a9 I0 r0 a/ N
于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。
/ D  D: c) {) N) ?4 [$ ]0 L$ E) iChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!% M6 q/ N' t- b* O  z' S
显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:4 T- z9 @- d. D* |
9 @+ G0 [! N4 q
- u+ C- o: M( v1 F
. R# `1 _1 k2 k! s
发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。) H" o3 c8 v; |4 c
神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。: |( R) o* I0 g6 x. l/ ~! }9 B
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。
3 a3 A/ G/ r; E3 f研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。
% N8 w8 j( m- ?2 U6 B8 m论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。
7 T+ t' f8 f+ ?. b6 y8 N, J* e9 E: E我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:7 o. u! J+ e2 I7 B

' i) H$ W) J/ x$ p, e6 R$ K1 v1 J' M+ u& g& o, q

8 o) ^* J8 M8 h" O大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。$ {. A/ Y6 M7 B! }! U
程序员们在用它辅助写代码的时候,也需要考虑这些问题。) @& j5 ], {5 k9 `
Copilot也存在类似问题
. j: N3 y5 _1 e8 [. b事实上,不止ChatGPT写的代码存在安全问题。8 `: u1 V" `( m
此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。  C: Z( m# s. [( ^3 w2 o: ]" L
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。
6 @, b, F$ n' R% z! ?: l* z6 g) ]- i) `6 S0 ~$ z& H! d! u! q

) @7 Y7 c8 \" l% ]( T; {
) t/ e$ x# {" l& C1 ?而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。
6 y6 i0 {! H8 O5 g: P基于此,研究人员得出了如下结论:( @7 _& N: Z6 I! c
9 {" i, l1 d/ O7 Q
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。1 f) Z6 x9 ?) N8 g
这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。" H+ {. @7 {& |* j. t; V6 p
* n: N# N3 V. d+ y8 N0 ~
作者介绍2 \1 ^7 V/ i( H9 e2 b: }
四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。
2 Y! _* s0 p; P# }* n( j; y- h1 a0 c1 z# I$ Y

4 ^+ m  `, ~! x/ I  n
( n5 ?' ?( l3 r8 b# tRaphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。% P3 }- }0 R: T
" H7 w, @6 C1 N

: A1 D6 Y5 A3 K& p9 Y1 ]
3 K/ z  e- h' r6 S2 n9 t) g( ZAnderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。( e. t2 j6 U* _2 O
作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。3 O# k3 n5 f4 {6 c! e: M5 N
你用ChatGPT写过代码吗?感觉它的“安全意识”如何?
8 e, n9 j/ v6 _5 X8 ^; a+ [, C. S论文地址:
" K5 D8 u# H* l: F2 M* z0 }https://arxiv.org/abs/2304.09655+ D2 ], X; d" r1 I4 h
生成代码数据集:
  ~1 E. _9 G4 n+ C7 n' Yhttps://github.com/RaphaelKhoury/ProgramsGeneratedByChatGPT

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

帖子地址: 

梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

1619

主题

695

回帖

6960

积分

论坛元老

积分
6960
发表于 2023-4-24 19:08:31 | 显示全部楼层 来自 江苏泰州
知道你是行家, 知道忽悠不了你的時候, 馬上便認真起來~
梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

1694

主题

712

回帖

7240

积分

论坛元老

积分
7240
发表于 2023-4-24 19:39:01 | 显示全部楼层 来自 江苏泰州
这逻辑很好理解,生成代码,和安全检查,是不同的引擎做的
梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2025-8-24 06:14 , Processed in 0.039632 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表