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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 808|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺
) A# u, m2 L" d* [( b$ @, O4 X量子位 | 公众号 QbitAI
1 P9 ^; m9 v" h" I5 ^9 I9 e
' h  Z2 q+ I7 R
ChatGPT知道自己写的代码有漏洞,但它不说!  j  k6 ^/ q- V  q/ R, D
来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。: B) I# ^$ g( E
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。
+ f# ]0 n8 W9 g3 L- U/ K! S; E- o9 n
4 L: n' H$ D0 o# N

  ~( |% ?; L# o! x6 |5 x这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
  S* {' [) q  y& N而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。
( o) _. O5 \0 a所以,用AI生成代码为啥会出现这种状况?: M6 ?0 e* c7 g  _* u- h# @
写的程序中76%有安全漏洞
: ?+ H& n- o% @研究人员试着让ChatGPT生成了21个程序。4 q: F' m, V: Y- C
整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。
' Z0 A+ c; J5 R* @( U0 R) G8 s; H- R* T  W0 J

0 G" M6 D+ Y3 W# D9 W
# Z$ I# P  w- S0 @研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:
. B( d$ ^8 r! o4 j  N7 C* I" e1 b% D+ Y4 L' g. l/ U+ J  }
! S: @2 D* N* s4 t: a- ^1 `3 L

6 m. U" K; M0 ~- }( Q统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。0 F- E. J& u" C+ _( d+ s% S
于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。
: z4 |# f2 I0 D5 W0 V4 X1 kChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!
2 R  _3 Y9 A/ N+ h' W# ]4 R/ |1 K显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:
/ M2 n; q2 c0 R0 f  c* [6 G# W: T  n" i. V
% t$ {) Q' A2 s4 W' b

9 E4 X" x6 j! q% m) t: y3 [# H发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。
5 v3 Y* \$ [7 Q神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。2 c/ g- l  v$ ^. U* v. v  \  q' S7 W
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。
6 k& P  B. T, c9 I5 ^研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。
. q( {+ I( T1 I/ i/ a0 T论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。
  J; J8 e* K3 b: I我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:
8 p3 h( R* G0 f: s* J
  {4 S2 X0 D( S% z! [8 ]- |
. Y) R6 B3 W5 M+ P1 W! d, {/ d
9 r1 U5 j  d- x, {8 @2 L大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。/ H, n/ L8 _7 g* ]
程序员们在用它辅助写代码的时候,也需要考虑这些问题。2 P7 i$ i/ g. Z: _
Copilot也存在类似问题/ J( b1 t8 f+ O$ Q4 h( u2 ~8 r
事实上,不止ChatGPT写的代码存在安全问题。8 l! `% P5 e- L
此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。* b+ {* |$ o0 x
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。
) b0 ]# \0 v9 C7 d& o/ I& T2 t
* w* k7 H; }- }2 S1 B3 |' e5 F9 g. e; i
2 C. y- p& \  e/ S; Y/ q
. L! }! c3 `# o( x而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。/ H+ N. K3 D8 N
基于此,研究人员得出了如下结论:7 y8 e& a4 G: e& C& \9 l1 H

! @' q. K' f: _: J7 O0 r; e1 c: c
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。* n5 f7 [; C" O( G( J% @+ l' A1 r- e
这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。5 T$ v+ |3 z( x' A% r
5 r( ]! {  l$ H5 `
作者介绍* ~- a) W* _; H( \$ ]
四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。8 x; j  ^# t  t* o# M5 B
4 l& n# X8 b6 y9 }4 ]. {
1 b4 U! s) r( d/ u

; A% r8 Q% ?: ]7 uRaphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。
0 `5 ]+ q8 \* O+ q; U) h6 r
4 q+ \  p" |1 A! p- I3 ~
6 O* ^! M* Z. X
3 C3 k2 b1 u: E% B0 LAnderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。
3 s; F7 M1 x* T$ v$ @7 F7 a作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。& L' [) _/ f- s9 Y4 v3 f
你用ChatGPT写过代码吗?感觉它的“安全意识”如何?5 G* H8 B9 K& x) q
论文地址:
; {4 T5 m* H! b& @https://arxiv.org/abs/2304.09655) ~% |9 U( x, ?+ ~, V; Y) f0 R4 ?
生成代码数据集:
9 X# J6 ~$ n0 g7 N6 e; t8 @7 S. Shttps://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
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-9 08:26 , Processed in 0.048203 second(s), 23 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

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