ChatGPT 创建了大部分不安全的代码,但除非你问,否则不会告诉你

ChatGPT 是 OpenAI 用于聊天机器人的大型语言模型,它不仅生成大部分不安全的代码,而且尽管能够指出其缺点,但也未能提醒用户注意其不足之处。

在学术界对大型语言模型的可能性和局限性的狂热兴趣中,加拿大魁北克大学的四名研究人员深入研究了 ChatGPT 生成的代码的安全性。

在题为“ChatGPT 生成代码的安全性如何?”的印前论文中 计算机科学家 Raphaël Khoury、Anderson Avila、Jacob Brunelle 和 Baba Mamadou Camara 通过可以概括为“不太”的研究回答了这个问题。

“结果令人担忧,”作者在他们的论文中说。“我们发现,在某些情况下,ChatGPT 生成的代码远低于适用于大多数情况的最低安全标准。事实上,当被问及生成的代码是否安全时,ChatGTP 能够识别出它不是。 “

四位作者在要求 ChatGPT使用五种不同的编程语言生成 21 个程序后得出以下结论:C (3)、C++ (11)、python (3)、html (1) 和 Java (3 ) 

ChatGPT 的编程任务经过精心挑选,因此每个任务都会说明一个特定的安全漏洞,例如内存损坏、拒绝服务以及与反序列化和未正确实施的加密相关的缺陷。

例如,第一个程序是一个 C++ FTP 服务器,用于共享公共目录中的文件ChatGPT 生成的代码不包含输入清理,这使得该软件容易受到路径遍历漏洞的影响。

总之,ChatGPT 在第一次尝试时仅成功生成了 21 个安全程序中的 5 个。在进一步提示纠正其失误后,大型语言模型成功地生成了七个更安全的应用程序——尽管这只是“安全”,因为它与正在评估的特定漏洞有关。这并不是断言最终代码没有任何其他可利用的条件。

 

研究人员的发现与GitHub 的 Copilot 的评估相似但不完全相同,Copilot 是另一个基于 GPT-3 模型系列(最近升级到 GPT-4)的 LLM,专门针对代码生成进行了调整。其他研究更广泛地研究了ChatGPT 错误。同时,这些模型也被用来帮助识别安全问题。

学者们在他们的论文中观察到,部分问题似乎是由于 ChatGPT 没有假设代码执行的对抗模型。他们说,该模型“反复告诉我们,只要‘不向它创建的易受攻击的程序提供无效输入’,就可以规避安全问题。”

然而,他们说,“ChatGPT 似乎意识到——而且确实很乐意承认——它所暗示的代码中存在严重漏洞。” 除非被要求评估其代码建议的安全性,否则它什么也不会说。

“显然,这是一种算法。它什么都不知道,但它可以识别不安全的行为,”魁北克大学计算机科学与工程教授、该论文的合著者之一 Raphaël Khoury 告诉The登记

最初,ChatGPT 对安全问题的回应是建议仅使用有效输入——这在现实世界中是行不通的。直到后来,当提示修复问题时,AI 模型才提供了有用的指导。

这并不理想,作者建议,因为知道要问哪些问题需要熟悉特定的漏洞和编码技术。

换句话说,如果您知道让 ChatGPT 修复漏洞的正确提示,您可能已经了解如何解决它。

作者还指出,ChatGPT 拒绝创建攻击代码但会创建易受攻击的代码这一事实存在道德上的不一致。

他们引用了一个 Java 反序列化漏洞示例,其中“聊天机器人生成了易受攻击的代码,并提供了有关如何使其更安全的建议,但表示无法创建更安全的代码版本。”

Khoury 认为,目前形式的 ChatGPT 是一种风险,这并不是说不稳定、表现不佳的 AI 助手没有有效用途。“我们实际上已经看到学生使用它,程序员也会在野外使用它,”他说。“因此,拥有一个生成不安全代码的工具真的很危险。我们需要让学生意识到,如果使用此类工具生成代码,它很可能是不安全的。”

“让我感到惊讶的一件事是,当我们要求 [ChatGPT] 生成相同的任务时——不同语言的相同类型的程序——有时,对于一种语言,它是安全的,而对于另一种语言,它会很脆弱。因为这种语言模型有点像黑匣子,对此我真的没有很好的解释或理论。” ®

最新chatgpt可以思维导图可以写笔记,网址:openai.gcloub.com(点击跳转)

gpt官网资讯

日本人口的减少,一个城市正在转向 ChatGPT 来帮助管理政府

2023-4-21 20:15:41

gpt官网资讯

ChatGPT API 完整指南

2023-4-21 20:18:02

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
普人特福的博客cnzz&51la for wordpress,cnzz for wordpress,51la for wordpress