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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 882|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺' ]0 ]$ ]- A! h9 v9 C2 C, b/ X$ @
量子位 | 公众号 QbitAI0 h) l1 ~2 F% T* M

0 l" q% m1 U4 b$ {& qChatGPT知道自己写的代码有漏洞,但它不说!; o- n% {- K5 g5 O' p% j
来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。
: z' D- f4 @' x: M! ?2 G5 ~然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。
) d2 v# F0 g# g" @. m0 Z) ~1 u) M: B9 M/ ]  k/ [* Q, ~5 n

" J! ?7 r- _& V' P+ }* T; z+ i9 A% S9 K% ?
这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
5 d3 J/ |9 A" ^而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。% F5 r* g  H; Z$ ^9 @- C6 w
所以,用AI生成代码为啥会出现这种状况?2 g5 u5 Z3 j) E7 |) r3 W, z
写的程序中76%有安全漏洞$ }% e, l6 ?* Z" @8 G6 v" C# D
研究人员试着让ChatGPT生成了21个程序。
9 M5 m) L  t4 t5 Q0 G, @, @整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。) k) `! Y/ v; C+ q6 k
! e) @7 Z& y0 q! [+ q3 T6 b$ {1 L

! J+ U# {2 A& _" D$ @8 B1 u
; G. S. G% W; f% T2 [* r0 ?研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:
5 R' @" R7 Z( Z
5 {( B  l+ O2 e! y
$ c0 m) j* m, q1 e4 d/ w/ [# ]' l% P( S4 h6 U' h: A3 X
统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。
& H1 N! T; A* |  D于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。* a. @8 `* H1 v+ c% |
ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!
  ~# e+ X8 d0 ?" n1 m1 }5 h显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:, f+ L; h! q; y
# A' w8 g; `5 H9 W! ~9 q8 U

- w2 L! v; _2 p5 ~; c% r) Q$ {3 m. w4 \2 ^; [; o4 r% N
发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。+ w# o- U7 c3 f) E  [% X
神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。8 V7 p4 Z3 z" R; H" @( z
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。
3 X$ T( [: K' X研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。4 G+ K* d6 ^7 q( u2 m! n% F# E
论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。  _8 T3 Y9 {2 D+ I! k  Z6 G
我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:
* N( ~0 i8 E5 E( T) c7 m4 y& Z. q  s: ^1 m5 l5 |0 I) K

! F$ W' W$ Q5 b% G. H# m; j7 P% }. o0 ?; U
大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。! R7 d" Y* k4 S( l8 _7 J
程序员们在用它辅助写代码的时候,也需要考虑这些问题。
% Y% t* R( {7 D& T& _: sCopilot也存在类似问题3 H- ]  s' T- z& G% w
事实上,不止ChatGPT写的代码存在安全问题。
4 v# a! a" u" q0 R) t' E" R* D此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。8 `5 P  r0 w+ k" Y/ Z$ y
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。3 R1 p, g7 s0 T: n3 H( a4 M$ V

5 d8 {. A, Q/ U3 W7 @8 @2 A5 K+ ^' Z; c# j: V- B
+ o2 d  I+ n; t
而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。
  w$ Q# E+ x3 E& c8 @1 }基于此,研究人员得出了如下结论:
$ O: w5 i* c$ z  Y7 m! s# d: z
4 M8 }7 E' f) f
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。
) Q% g) i5 _; l( H. P' {: l, W这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。" a% ]8 M$ q2 S; D- g' _8 U' c

5 F; N% n7 ]9 l  Q, y8 {作者介绍/ {0 e7 ~. e! K7 \
四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。
0 R7 @5 D' L1 b0 y, X. t& u! [
6 O+ R8 I8 b  e8 C& }' P' h$ ~( d3 W$ X) {$ o- D

8 s: L; w8 U6 s, @# F: kRaphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。
4 m# s0 p3 g0 y4 P% [
8 t4 o) b: X' o) [1 v7 U- Z3 L- o" O% a* X, a

0 i  j: Q" [* ~# yAnderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。/ G& q# g( C: q. Z. N
作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。0 e# O5 C0 a' L3 N# v+ d6 O  w
你用ChatGPT写过代码吗?感觉它的“安全意识”如何?
+ d2 r5 K3 t+ ?2 i5 D1 `" ?论文地址:1 {6 t* n; F. i) E1 q
https://arxiv.org/abs/2304.09655
% l/ M  z# ^7 c4 w0 a生成代码数据集:$ {2 f) O0 v/ ?3 u. y% Y6 ~3 Z
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-6-22 11:07 , Processed in 0.040141 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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