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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 884|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺
: U: {- x8 r; ^, W7 V  G量子位 | 公众号 QbitAI
- `, K# D; ^. T; U0 C7 b- m

1 b- w  {$ f! N' c; x, g" S5 H2 _ChatGPT知道自己写的代码有漏洞,但它不说!3 R+ U% w" f. t' L" _7 N
来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。# Q6 c0 l! o8 C$ w  K  V
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。% s' H/ {4 ?7 _6 q
$ Q) Q: z8 f9 u& b0 S
: h5 B, G8 I; ]. X7 M2 _

7 E9 x; F) q7 k" ^" \这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
, Y% `7 _$ x5 H' D" m0 Y; B* K而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。) I* _) ^4 \3 f% r+ p  l
所以,用AI生成代码为啥会出现这种状况?- O( u- y& M, i7 v; G  F: }
写的程序中76%有安全漏洞6 G( g" }" [5 g$ l
研究人员试着让ChatGPT生成了21个程序。' Z! Z9 [9 F) y+ Q5 r
整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。
7 Q0 P& G9 I+ c" ]* x" b$ t; h5 ?

0 S' P& o# ?& p" n" H
1 s9 z$ h6 Q$ w/ Q) e9 Y研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:# j, i$ X: ?3 K' [6 V' n
9 N% K: P7 F  [8 q0 c
% k, x. ~! g) E3 v

; g5 T/ q5 O/ O( b. }2 E统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。
* Y6 K2 E  U% Z3 `# V! R于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。
: b. E5 G9 T; B" Q& a) gChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!0 q+ M) b9 O' n. q
显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:
# u, o) R  Z% D2 I/ g
$ ?4 ?+ t0 H$ J' V/ Z/ g2 \
9 F1 i, V' f0 m, g6 }: k% [" h/ Q4 s9 L: v5 q! ~6 Z& ?6 Y. }
发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。; f: h! Q$ C/ U, [  y
神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。& Q" [) Z9 [& m2 L0 E6 x; y
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。  Y& Z4 ]) u+ ^3 L+ d7 ~6 |
研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。
. c% |% @* m0 ?9 f. P' d: J论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。
) a  n6 C; G: e! o8 v* b我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:
0 K# E4 _. z6 M( G& H" P" l
" W4 J/ Q- M/ `0 v' p9 O; g& h$ U4 U0 ^1 F5 s' o

& U/ U, p8 p; h, N, n! W大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。( b. U6 K, u1 r6 y5 c
程序员们在用它辅助写代码的时候,也需要考虑这些问题。  `( d3 @' @, H: S4 Y
Copilot也存在类似问题& j7 _: m' {8 G! [4 s) Y
事实上,不止ChatGPT写的代码存在安全问题。" P9 P/ J& z- N, y( r5 Z5 i+ H$ {
此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。
( L- x1 r4 S, _( Q9 `1 `9 }* b. X2 r研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。
8 p1 F5 i3 w. y9 Z# x
5 g+ I1 s! [7 W; K0 ~, E& l. `" ^& B3 s( n% x
4 Y# }6 C8 ?8 T) K6 w- t
而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。( {  Q" j8 }7 a0 d" i
基于此,研究人员得出了如下结论:5 e$ x  B/ y7 y9 V+ d4 p, N' u

  _, l" {$ g1 N' m9 J
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。
) `6 k! m( Q+ e3 X这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。( o: z/ k5 A, r/ |4 A  r5 j

5 [; ^7 ~; |. n/ q0 ]作者介绍* W! v* {' B1 r$ X1 R- v' I
四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。
$ f) {% o: q1 a1 _
5 p- G, F5 |3 w, C% z6 k
# n) a9 X8 [! ?  e' J. Y& w$ F: r# a6 \, K. Y0 p+ p' A& l
Raphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。
6 B3 O% C% r3 g% H/ o  L- ]$ a  d% u5 ]+ I: m

- j+ j. x9 M$ t* o5 z
  i8 H4 O: z: Q& p" I+ i3 @1 B: FAnderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。# P3 p% G2 L* P+ r$ v! m2 m
作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。
% a$ L5 O4 J8 D! T8 O你用ChatGPT写过代码吗?感觉它的“安全意识”如何?6 R/ m  k' c. D; v2 d
论文地址:
# }* F  O' c, J7 _( Q2 G  ehttps://arxiv.org/abs/2304.09655  W  ]2 e$ N3 B/ u  f! U  p
生成代码数据集:
0 y2 }  `9 \7 Bhttps://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, 2026-6-22 12:20 , Processed in 0.041344 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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