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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 889|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺2 E, w/ Z: Z7 p" y; I/ r" W- l
量子位 | 公众号 QbitAI7 o0 |$ P8 |/ [  g7 B/ t
3 ?) j- r) m/ o' _% |( n7 r
ChatGPT知道自己写的代码有漏洞,但它不说!8 Y( k0 c4 ^7 p% [
来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。; M- X9 b+ P6 A3 N6 s, |2 c$ L
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。
, Y/ T8 O1 z- _6 A6 H
) c9 G, J3 ~0 n7 p, S: j' y) T
5 d. K8 y, Y, N6 u' |
! n: _1 C" g% X" R3 a: D& y这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
' \1 w* o" P$ `, P0 E7 [$ S- m而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。
9 W# E( p  P/ e. S% |4 r, {. W所以,用AI生成代码为啥会出现这种状况?+ K5 N: E# d% Z5 q3 M+ F
写的程序中76%有安全漏洞
6 `& U, t! z" P# Y& I( i# f  R& s0 d研究人员试着让ChatGPT生成了21个程序。
+ R  F# o+ [/ K& H整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。! s+ D1 ~; W' g1 _; X
3 ^/ F( q  ^' E. ~/ g) _, o

* w3 w# K! |' i0 f8 s0 a) E( x1 k& \5 r6 r, |! q
研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:# d+ y: N' D* _

' y2 {% P% u5 ~% t, D; B4 A$ ?* j! c" |1 b; U& `! v
& z: b% Y5 _0 \' ~* p
统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。
5 [0 _/ y2 T! y+ m于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。( ^8 m/ \) ]# N8 ~9 ?
ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!
6 B5 `. w9 i" ]显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:
( H3 ?3 N+ w* Q2 ]5 _* B
. f: H# q0 Y! B' d! o' V9 q! d+ C% z8 d& q+ b

/ u% d2 D, H9 f. t6 A. z2 a8 F/ n发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。
- u$ o1 c* ]9 [( `) y5 P# P+ ]神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。3 t6 O$ ?( V  a! s0 f6 z; U
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。1 M' G$ _8 Y: E4 y5 ?. S. o
研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。& a! l. f9 H. p: L& g' g
论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。, A( S  R- r: g' s$ B7 ]7 v8 G
我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:! f0 u+ W3 n& y
1 V; F. ~) j7 `& b  p
; h# W* U2 }5 _) s6 Q* x
1 ]5 l8 h  }, w# |
大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。- p. V* I& L, ^+ h
程序员们在用它辅助写代码的时候,也需要考虑这些问题。
' v+ \- I" A0 _! [Copilot也存在类似问题
" @$ r, i! o$ V3 p( h+ W* U事实上,不止ChatGPT写的代码存在安全问题。
" V, T" [* Y- h- H此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。, t- _# }9 ^7 X" g+ y
研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。$ N$ L  g8 F- d1 S% M
. H: t3 R6 m/ P' R
# U! v# Z/ L' G( Z0 d% S: v: C* y+ g

  k1 R* M4 C* N+ E% e9 k而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。9 q8 o) L; ?( B( ]& c) m3 s9 O+ M
基于此,研究人员得出了如下结论:! K+ N9 f& G7 D' ?% h3 X1 {6 |

: a( i, m0 W4 o3 x0 P- q
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。
. x7 ?3 f+ P/ x; t: g; O这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。) \# n2 _& G: b% K6 R

$ g" i- M. l+ B) C作者介绍
! f: n+ _3 G; C: A2 a四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。
( F: o% x8 ^; j9 l0 `  _0 |2 J+ d+ l* F( O, ~
% w' L) q% y: d& M0 J2 T* U4 ^3 J
4 v3 K/ W; e3 x4 e
Raphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。& X9 _. }: d7 n- l# J6 C, M

; p2 ?  N. ~6 M  E; ~$ F. H. F
* L- g* J/ h% n; ?: q( r
- M% W4 h( W! _0 c) C4 OAnderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。0 ^8 z' Y8 }! a( N4 l8 x- }
作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。
( }& L8 E& r8 {9 }- T9 b, @你用ChatGPT写过代码吗?感觉它的“安全意识”如何?" X4 L& `) @# S; ?: V
论文地址:
3 T" }# ]" N# G$ a1 \https://arxiv.org/abs/2304.096555 v* m( _: m% t- B: B
生成代码数据集:2 e9 E  R- K9 @" l' y. v5 T
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-26 18:00 , Processed in 0.041176 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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