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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 945|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺; ^6 x% q( t! e0 x
量子位 | 公众号 QbitAI. Q. s/ H2 D, z8 H9 _! d

) n/ `( X( b" EChatGPT知道自己写的代码有漏洞,但它不说!
, W) P' l8 P, J7 u1 x! {/ `来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。
6 m2 n6 z  R5 D% y* j然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。( a: ?7 f/ B0 U0 b

- y  Z* y4 T. X# G& E  g, j8 L' {6 S

6 `5 Q1 m; V* X. E: N这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
7 ~: z1 z$ q" c6 E2 d. W# g而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。  A/ Y5 i! [( X3 z* _
所以,用AI生成代码为啥会出现这种状况?) ]' x% r! K) p
写的程序中76%有安全漏洞
) K9 p, `6 ]! ?. A研究人员试着让ChatGPT生成了21个程序。
1 t+ K9 V6 s* }  P, v; w整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。
  ?9 N3 K* ^0 t  S. L# E; z  {- g# |8 A! y$ w

1 {4 h! L: }3 L8 ~  \; A
& c0 d7 m2 r" j! i! H$ ]( Y( U! G研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:/ q; d1 w0 {" }  h% L

4 x4 Q) P$ H" R. y
) }, l, z' s5 E$ f! A1 R
+ }% C, X5 ?& b7 x9 }统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。1 H4 _' P9 j0 I, P0 q
于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。9 p; H4 U' P- E# {( U
ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!
$ o( ]7 L  S0 h+ `( t+ C8 w# R: A显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:4 F: V" i* L# k" b% @( g
2 f. s( y8 t3 |

. C0 ^3 s; u7 R6 \7 A) ~# l% [
' U4 e2 c5 k! f; D! p% u发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。
& d! O6 H9 j( d4 f! G- i3 n# q# ]神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。5 M" \/ ]" X+ d: N1 F
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。
1 J6 d; ]& v: R) r& V' U, I0 H研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。
% D5 @7 x6 n, a  @/ f& e论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。
7 }( b: L% u: X# M我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:
/ g* M1 T. a; \3 f; Z; ~2 S3 @% x6 u- N) g7 C( d

% k' E! n7 ^3 K( P& P& ]$ a3 F, o" C$ \' }& k3 K7 {- w; n+ W
大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。/ e% U. G" t& J3 g
程序员们在用它辅助写代码的时候,也需要考虑这些问题。
  _  K7 `# V1 J  Z- a5 w+ i- YCopilot也存在类似问题
* z" l9 Z, T- K% y1 ^2 P5 u事实上,不止ChatGPT写的代码存在安全问题。$ U! ?& j. [% L7 A( b% X* r0 W: v, r2 T
此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。1 V3 f2 i( B+ K- p5 r" B& w
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。
7 L* n. i4 a: O5 J" J5 U! o
+ z8 {4 V& J3 s9 K/ f) k5 Y1 x0 x$ h/ m2 N

: X* e( r1 ~; L- a* X! F0 |而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。
$ V* o6 ]/ j- L; ?基于此,研究人员得出了如下结论:
3 E# k! D. F4 K* L( _% u. t+ C
- [: M- s7 X' @
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。
* ^, v5 \: f. y6 q' `这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。
5 V! _% M( j3 u* y: |+ t
: L" n3 i5 x, Q6 j/ u6 j5 c
作者介绍
1 Z; G5 E- o6 }  L3 e四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。  {- f& R. t, M, ]# e1 S6 r) D

0 P5 v5 ~/ v& v) \+ ^$ ]9 g  Z' `" x9 s1 Y1 e
( @# q( o0 i- `" k1 y0 l, S
Raphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。/ E0 W: I( v5 X2 z" G, K
% t& T! K& G" H, V, P

. }( G0 \3 w& P) ~. K
9 D" p- H; q; _7 G+ o* RAnderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。
# R6 O3 G- H. N4 m7 x作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。
) v7 L; p! F) C9 V1 @你用ChatGPT写过代码吗?感觉它的“安全意识”如何?
; y' C1 ?+ }, y7 g论文地址:* E, b! m/ c8 b+ {: b! L9 v
https://arxiv.org/abs/2304.09655
! H3 p5 Y% l6 e$ r2 y生成代码数据集:- o7 K3 @' _0 ?
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-9-18 13:35 , Processed in 0.047393 second(s), 25 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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