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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 774|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺
3 G$ R% i: |9 l& u量子位 | 公众号 QbitAI7 r7 V$ A7 I1 V  l- M+ Y) {1 B5 p

- I/ M( E/ s8 m  ?& w+ E) G7 w7 fChatGPT知道自己写的代码有漏洞,但它不说!
- Y: r  B+ k+ M来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。, S. c5 x& ~) U: J
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。9 _2 z7 Z- |. @0 A" B$ v% l

% k  P, G! b$ t2 D2 \2 g- `. i! `0 j7 R; Q4 d6 W4 U  s- O

+ p& R2 t7 Y+ O, F1 P6 t这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
/ e0 {! s5 t$ f2 R8 A; y而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。
+ ^- x7 `$ |& ]0 P所以,用AI生成代码为啥会出现这种状况?
" z" T+ L+ `7 q. d6 p  H7 j  ]0 t写的程序中76%有安全漏洞, n% U  V& }0 g; y3 B
研究人员试着让ChatGPT生成了21个程序。
# V4 `0 W  A/ u  V! Y整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。# @1 E8 ~! j( T- w9 q6 `9 \
$ U4 I9 z/ t6 Q: h( Q( ~

4 E6 F9 ~0 k% ]  G- n6 _
' ^) ~( e7 m$ k. D研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:
) G* h, i& e  |3 p$ R) K3 @$ C' r7 h$ i! D) t+ k

. X* P5 T7 D5 B7 x; E: I, a) u7 W& n: x/ p: Z$ S2 I
统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。
- ~. a- M; R7 ^. i$ h8 y: N于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。+ b: l! W6 }2 b; j9 j8 Z
ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!
% ~1 M4 c2 h+ Z% O显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:) W5 z- _) b( H8 c/ ]
9 Z: i7 \4 c/ v' f5 s  h# d

" k# t, t4 O2 b6 `" X" W, S% D" ]( @3 u; `4 V& F
发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。
2 C# b9 U4 V! u神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。
/ Z4 T. w4 F% X1 F( X经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。
$ S. R0 e8 P# b: h' k3 W研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。9 m6 a7 s& v) {6 B; S
论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。; m. n4 U! ^# ^( _
我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:* w- B3 [* w2 Y9 H) x
% S- v5 a$ j" R4 Q% z
! q- Z' E4 D, p1 Q
8 S& b* t% y  |9 Q6 C" P7 B/ n5 C( p
大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。
% E5 I+ Q  v+ [  ]程序员们在用它辅助写代码的时候,也需要考虑这些问题。# W: |$ L$ r) \
Copilot也存在类似问题0 E7 H2 J7 D9 u. Q1 P
事实上,不止ChatGPT写的代码存在安全问题。4 f5 ?& B7 f( q0 n8 r) @
此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。/ x; w! n9 }8 I7 s4 [" f" E: K+ I( C
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。
5 {" u! x7 y/ Q. F/ ]4 j/ h0 e1 |/ D  K, s

4 E- p0 I1 u& r1 f( P0 l8 ^7 ^% \# E. `- K( s& J1 s
而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。
$ H) c8 F  M/ `$ T基于此,研究人员得出了如下结论:2 j- p/ Z# E" J, a* E- k' x0 [

( C0 R# f$ D  e* J6 b; F+ F2 I
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。
1 `6 z6 g! a# ^9 [这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。
* }- \4 Y3 ^( p. h; I
' }% r7 {7 i" u2 e. }2 b
作者介绍
7 t, s! I+ y: c& v* e四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。
$ \/ c" j8 R1 J- K* I
6 t4 }7 \3 [2 m) _) M( i/ V- a% _/ l4 V, ]( X, C+ A

) e) j) o7 P8 {1 q+ U  A8 WRaphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。
! T9 {6 `: t( {7 _; w
; ^1 f, O$ x' B; {. i! t) x
' w/ J( N( n% u  O# s7 [, T. d( t! U3 s
Anderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。- I$ m# P' s4 z- Z$ u4 q0 n
作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。
) Z2 G9 a6 y8 R/ z3 N) D" H5 ?你用ChatGPT写过代码吗?感觉它的“安全意识”如何?! D5 Y8 d% {0 y) T* ]# D( w) ^9 @
论文地址:
& E: e5 x' V/ b" }' E( o6 y. d1 fhttps://arxiv.org/abs/2304.09655+ W7 j* [9 h: |; b/ [! ]6 ^
生成代码数据集:
4 \& j6 U7 y5 w3 G8 n6 u; R' `https://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 02:26 , Processed in 0.039705 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

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