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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 855|回复: 2

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

[复制链接]

1635

主题

718

回帖

7071

积分

论坛元老

积分
7071
发表于 2023-4-24 18:38:40 | 显示全部楼层 |阅读模式 来自 江苏泰州
萧箫 发自 凹非寺
/ K/ B& M. b: J2 _量子位 | 公众号 QbitAI7 k  l/ d& f  o% \2 l

7 c" E! A( _8 d8 ?ChatGPT知道自己写的代码有漏洞,但它不说!8 ]% w  ]5 m2 D- L
来自加拿大的一项最新研究发现,ChatGPT生成的代码中,有不少都存在安全漏洞。# W5 o( q6 S' M- K" U
然而在被要求评估自己代码的安全性时,ChatGPT却很快发现了这些代码中的漏洞,并给出了一些解决方案和建议。6 ?- M, c; B- W
( U* G0 {# }/ S2 L9 C

& e! {! f0 Y- C" W
) d% {0 e, B$ ~2 F: `" o' y这意味着它并不知道自己生成了糟糕的代码,但却查得出它写的代码有漏洞,也有能力修复这些漏洞
' |- w, O: c# ]- T9 g) P3 Y而在另一篇来自斯坦福的论文中,研究人员测试了另一位著名AI程序员Copilot,也发现了类似的问题。
$ b7 {4 S* ^3 M# u所以,用AI生成代码为啥会出现这种状况?
- }+ q4 Q/ v, g: m2 d" m+ `写的程序中76%有安全漏洞+ X) c5 w; `4 |7 A6 l0 s& `
研究人员试着让ChatGPT生成了21个程序。
* }; r% T- N$ U9 S9 r. v9 L# w整个测试过程如下,先提交需求给ChatGPT,生成相关代码,再对这些代码进行测试,并检查问题、潜在的缺陷和漏洞等。; w6 ~! e* S5 Y1 P  ~

# }0 s1 L* u: T) u" e5 }8 `. M6 z" |4 p  f) W# ?. L* S2 H

0 d4 r& {1 X, V7 P研究人员给ChatGPT提了包括C++、C、Java和Python在内的21个写代码需求,这是评估的结果:& |( a- @6 _6 b( C% N
* W: ~4 O' M( Q- ?# k
) y' j, ~1 B$ n- I& u

5 ~, y+ F1 t$ n0 j统计表明,ChatGPT生成的21个程序中,有17个能直接运行,但其中只有5个程序能勉强通过程序安全评估,不安全代码率达到76%以上。
# ^0 t# J% Y% I2 d8 z/ ~8 G7 P2 N3 A0 _. O于是,研究人员先试着让ChatGPT“想想自己生成的代码有啥问题”。" U4 V  c4 p% q* B
ChatGPT的回应是“没啥问题”:只要用户每次的输入都是有效的,那么程序一定能运行!
( M8 Q. H! ^2 u. s9 S: a' v显然ChatGPT并没有意识到,用户并不都是行业专家,很可能只需要一个无效输入,就能“引炸”它写的程序:9 m# A7 J4 \# a) ?4 \; O  C6 \& U

9 _* p+ p+ D! e  k4 z7 c- N- R2 o3 H5 |  v+ }  u
" C1 g9 S" R# f
发现ChatGPT不知道自己写的程序不安全后,研究人员尝试换了种思路——用更专业的语言提示ChatGPT,如告诉它这些程序具体存在什么漏洞。' X8 |$ y5 ^2 V9 g* ?8 ]% Z' h* I
神奇的是,在听到这些针对安全漏洞的专业建议后,ChatGPT立刻知道自己的代码存在什么问题,并快速纠正了不少漏洞。! b3 X8 c$ s$ t5 g" _! c4 f
经过一番改进后,ChatGPT终于将剩余的16个漏洞程序中的7个改得更安全了。
/ S4 b& ]# p+ x0 n研究人员得出结论认为,ChatGPT并不知道自己的代码中存在安全漏洞,但它却能在生成程序后识别其中的漏洞,并尝试提供解决方案。
; F! n! U) c2 T2 H, W0 X( @论文还指出,ChatGPT虽然能准确识别并拒绝“写个攻击代码”这种不道德的需求,然而它自己写的代码却有安全漏洞,这其实有着设计上的不合理之处。
0 X) S4 {9 I  A* H4 l7 F我们试了试发现,ChatGPT确实会主动拒绝写攻击性代码的要求:
# T: {  n, f/ ^* h
& z' g# N: ?$ q. O) V0 B
; H6 B# ~# I0 j) X+ I5 [) @2 }0 |/ ~) C- A- H& M7 v1 I, y+ M
大有一种“我不攻击别人,别人也不会攻击我写的代码”自信感。
2 u4 t" s3 ?4 z; j  O- G, ?程序员们在用它辅助写代码的时候,也需要考虑这些问题。) }9 @+ o0 R0 }9 Q& B6 ^8 J4 [! z8 Y
Copilot也存在类似问题
+ N% n* }- v* K7 H- k事实上,不止ChatGPT写的代码存在安全问题。
: a4 h7 _" Y7 _; O  e+ V此前,斯坦福大学的研究人员对Copilot也进行过类似调查,只不过他们探查的是用Copilot辅助生成的程序,而并非完全是Copilot自己写的代码。
- `3 J9 t; h# r0 O1 N  m2 r研究发现,即便Copilot只是个“打辅助”的角色,经过它改写的代码中,仍然有40%出现了安全漏洞。$ }( V& Y7 {7 B: ^9 m( w* i
$ d& [3 \3 m4 y3 D; c. z0 p" p/ t

1 }4 M1 h+ `4 f
6 K- H' z6 {: n- {+ w而且研究只调查了Copilot生成代码中的一部分,包括C、Python和Verilog三种编程语言写的程序,尚不知道用其他语言编写的程序中,是否还存在更多或更少的安全漏洞。- T# ~; ~2 ?* x
基于此,研究人员得出了如下结论:
8 V1 k5 W4 ~/ U* I& x$ _' ^9 X) X( [8 }
ChatGPT等AI生成的代码安全性并不稳定,用某些语言写的代码比较安全,而用其他语言写的代码却很容易遭受攻击。整体来看,它们就是一个黑盒子,生成的代码是有风险的。
2 ~0 n" i9 n5 r# e4 |* _$ e这并不意味着AI代码工具不能用,只是我们在使用时,必须考虑这些代码的安全性。
  q$ J" T/ ~+ z1 b1 u& |  P/ ]! F
6 r5 o* q% B& R2 l
作者介绍5 x3 N3 }1 k0 l+ _1 j9 f, Y
四位作者均来自加拿大魁北克大学(Universite du Quebec en Outaouais)。4 L! k/ Q; o( U6 M1 P4 K" R' z

9 U4 [! a9 Y: x9 p: Y9 E1 A7 w4 s7 I4 R: q/ ?: ~$ s! p
* O+ A1 u9 G6 V0 K- ^
Raphaël Khoury,加拿大魁北克大学教授,曾经在拉瓦尔大学获得计算机学士、硕士和博士学位,研究兴趣集中在计算机安全方面。% x+ z; v* N! V/ S' ?2 I/ {

5 w% K. v# s5 _  p$ ^3 c8 S' }- {, `: W; A. J1 R! T
4 y% O0 c' Z6 H
Anderson R. Avila,魁北克大学国立科学研究院的助理教授,主要研究方向是数据隐私相关的联邦学习、网络安全和生物特征识别技术等,曾经在华为的加拿大研究院做过机器学习研究员。
  F) q* s( T4 L5 N2 p作者Jacob Brunelle和Baba Mamadou Camara也都来自加拿大魁北克大学。
. `' @& U( m, r5 O你用ChatGPT写过代码吗?感觉它的“安全意识”如何?8 m* Q9 h% Q1 v0 H, ^% \
论文地址:
# h3 T; ?' d+ ]+ U3 H) N$ h- lhttps://arxiv.org/abs/2304.09655
+ [( `0 s* X8 A' k- l/ I- ^生成代码数据集:
; p: I" c# I/ P# P! [; j6 `% xhttps://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-3-24 10:43 , Processed in 0.038167 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

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