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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 952|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺
% ^1 f9 S/ N6 `. b# n. N3 {量子位 | 公众号 QbitAI
# |7 f# u, E: f, R' K: {
1 o. \, D) f& M0 b* @8 w5 K+ P
ChatGPT知道自己写的代码有漏洞,但它不说!
- e$ p+ e- x* X来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。1 y" }* q: F% W2 H7 a% n' z
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。0 y6 S6 g" y5 |/ C, \0 @
, V; H/ K, `/ K2 E
' ~7 D. Y! g& M- |
7 ~. J$ t4 N( a# K: e0 k
这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞。2 h( `* F3 K! h. o) z, K
而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。2 B2 B1 l) \: i' Y% b( L0 I
所以,用AI生成代码为啥会出现这种状况?
1 ]/ K! F$ a! c$ d写的程序中76%有安全漏洞
) S* B' V0 ?$ b' X研究人员试着让ChatGPT生成了21个程序。
0 {& w( {3 m* w8 N整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。
& Z9 C; D5 F0 T/ E2 k5 Y5 V; b7 t0 [! c0 l) e8 B9 A

# m) [/ ]$ i6 i' V1 X& ?" C
2 Z( a4 q2 ~/ d8 C) t' z; i研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:
9 K+ q& ^/ n" I' I9 p; ]# M4 h' X) B' d7 N& p& }, H% D& p" F
5 o4 @2 L! N% d$ U' F) C
; }( d1 @& d4 L! E7 a" y$ d
统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。9 ?- d) ]+ y6 G
于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。  y4 ?+ R2 Q  g3 }8 O7 @2 \0 W
ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!2 D  l9 _4 ]$ k  j+ P/ {& |5 c
显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:
2 d9 Q7 I- M+ O8 E2 c2 ~2 q1 _$ l
# O/ u5 ^6 O6 ^2 T
  C: }" V& t2 O, s9 u, I1 `7 W* x
# ^9 p) ?( @+ t: A发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。' `6 k3 B% {5 \$ q5 e0 g
神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。
0 ~' O: W& }) c经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。, e6 _- p2 }9 q, Z+ g0 k
研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。
$ I5 j5 }: H4 H6 i9 j论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。
7 r2 L8 ~# b. }% N" I% M我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:8 R( s! b0 K% \
9 }4 g) r/ Q) j8 K' q' T6 e

7 Y% K: m* R5 L6 k& i: |2 n& }/ e7 g2 l$ u" ]( U9 q$ I
大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。
* F/ j2 x  r; Z程序员们在用它辅助写代码的时候,也需要考虑这些问题。
& k. T7 s# _" c6 d/ W1 pCopilot也存在类似问题
* T$ M" V1 Y0 u7 p& L' t. Z事实上,不止ChatGPT写的代码存在安全问题。
, D& D) f; U8 Z' O此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。  T2 Z+ A- b8 v% M4 A: B
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。
8 T% E$ b1 a8 o: d! E6 f# h
. A+ L) B2 h4 k- |/ t) \; k" o2 R1 `! U% o0 Q* n

6 X# n3 D$ q; N% B7 ^而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。
1 s7 {6 g% }! _' ~* E: b' _基于此,研究人员得出了如下结论:5 n% e- z( g+ a; G

. a2 @4 l& [0 i/ A2 u
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。. j" q6 z' g$ N0 Q
这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。. Y  P: o, [7 L' n# _5 Y% m8 S! r! W
% |- n& b: G# W7 C6 n! N% L" ]) R
作者介绍
  L" ~+ j! b( _8 @四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。- ^; S) h6 X' }+ [( S

( p+ d" t' H: W6 }+ _, A* @7 z0 G7 c+ d/ X  F
& i- [% k: V* A
Raphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。
& e/ f2 O6 H# h5 Q) S* k5 ^7 r+ a1 L
1 W3 F* V9 P  @3 \
& g& D% a% D$ q& V
Anderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。) P8 h! O  ^* G1 X" H4 }: w
作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。  V3 G- N0 p& z, i& ?0 i7 a" v0 O
你用ChatGPT写过代码吗?感觉它的“安全意识”如何?
) _0 n( x; P- H论文地址:
. a6 T* M/ l$ B/ Dhttps://arxiv.org/abs/2304.09655
4 ~0 O4 E$ p; Y& p4 L9 b生成代码数据集:
( S; ^* R3 ~. n4 S; v. }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
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-11-1 22:02 , Processed in 0.056376 second(s), 25 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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