写点什么

新手用 ChatGPT 仅需数小时轻松构建零日漏洞,69 家专业公司都检测不出来:“不仅能调用开源库,还能彻底重写源代码”

  • 2023-04-07
    北京
  • 本文字数:2429 字

    阅读完需:约 8 分钟

新手用ChatGPT仅需数小时轻松构建零日漏洞,69家专业公司都检测不出来:“不仅能调用开源库,还能彻底重写源代码”

ChatGPT 能让 10X 工程师成为 1000X 工程师,同时也能让菜鸟用 1/1000 的时间编写出危害力十足的恶意软件。

 

自去年推出以来,ChatGPT 以其撰写文章、诗歌、电影剧本等的能力在技术爱好者中引发轰动。而且只要给它一个写得很好、很清晰的提示,ChatGPT甚至可以生成功能性代码。虽然大多数开发者会将该功能用于完全无害的目的,但最近一位自称是恶意软件开发新手的研发人员 Aaron Mulgrew,花费短短几个小时,用 ChatGPT 整了个零日漏洞,可以用来从被攻击的设备中窃取机密数据。令人震惊的是,该恶意软件甚至逃避了谷歌 VirusTotal 上所有合作供应商的安全检测。

 

Mulgrew 讲道:“如果没有基于 AI 的 Chatbot ,我估计可能需要一个包含 5 到 10 名恶意软件开发人员的团队花费数周时间才能实现这么一个漏洞,尤其是还要逃避所有的安全检测机制。”

 

这种零日攻击可以针对高价值的个人,渗透并发回其计算机里的重要文件。在实验中,Mulgrew 运行可执行文件并成功将数据泄露到 Google Drive,“之所以选择 Google Drive,是因为大多数组织都允许本地基础设施接入云服务。”

 

在其博客文章中,可能因为安全原因,他忽略了“零日”内容,强调验证的目的只是让大家知道:“规避 ChatGPT 现有防护有多容易;在不编写任何代码且仅使用 ChatGPT 的情况下创建高级恶意软件又有多容易。”

 

“不仅调用了库,还让 ChatGPT 对源代码进行了完全重写”

 

Mulgrew 来自一家跨国软件企业 Forcepoint,他将自己描述为恶意软件开发的"新手"。这次验证,他使用的是 Go 执行语言,因为 Go 易于开发,而且自己对它比较熟悉,在需要时可以手动检查代码。

 

Mulgrew 定下的实验目标,是让渗透程序在计算机上查找一个大型 PNG 文件,再使用隐写术在该 PNG 文件中埋下入侵者希望窃取的系统敏感文件——例如客户的电子表格或产品路线图,最后将承载着数据的图像上传至由攻击者控制的 Google Drive 云存储账户。

 

Mulgrew 表示自己不想手写代码,于是只用了“提示工程”。一开始,Mulgrew 直接要求 ChatGPT 开发恶意软件,但聊天机器人的防护机制发挥了作用,它以道德理由直截了当地拒绝执行这项任务。

 


由于聊天机器人的护栏或多或少会阻止包含“恶意软件”表述的提示词,所以开发这款渗透工具时必须得使用一些创造性的指令。根据介绍,Mulgrew 只用了两次尝试就成功回避掉了限制。

 

第一个成功的提示是要求生成一些代码来搜索本地磁盘上大于 5MB 的 PNG。这里的设计为 5MB 的 PNG ,是因为这种大小程度足以存储高价值的商业敏感文档(如 PDF 或 DOCX)的片段。

 

有了查找大于 5MB 的 PNG 的代码,他将其复制回控制台,并要求 ChatGPT 添加一些代码,使用隐写术(Steganography)在大文件中隐藏有价值的信息。于是 ChatGPT 调用了 Auyer 的现成的 Steganographic 库来实现它: https: //github.com/auyer/steganography

 


为了找到要窃取的高价值文档,Mulgrew 要求 AI 编写代码来遍历用户 Windows 设备上的文档、桌面和 AppData 文件夹,并找到最大为 1 MB 的所有 PDF 或 DOCX 文件。这就保证了整个文档可以被嵌入单一图像当中,并在不引发任何警报的情况下完成“偷渡”。

 

他写道,“用提示词来组合代码片段是最简单的步骤,我只需要向 ChatGPT 提交一个个简单的代码片段,让它将其组合起来就行。”

 

但由于大多数值得窃取的高价值文档可能都大于 1 MB,所以 Mulgrew 要求 ChatGPT 编写代码将这些 PDF 拆分成一个个 100 KB 的片段,再将各个片段插入自己的 PNG 中。这些片段最终全部被泄露到了攻击者的云存储账户中,整个过程用到了“四、五条指示”。

 

有网友指出这需要对源代码进行完全重写,以增加其对检测的抵抗力,这项工作非常重要,需要花费大量时间。但实际上 Mulgrew 只是通过给 ChatGPT 下达指令,通过简单的“提示工程”就达到了目的。

 

轻松逃避掉专业机构的检测

 

接下来,Mulgrew 希望保证自己的最终可执行文件不会被 VirusTotal 检测到。VirusTotal 会通过各种防病毒检查程序检测实际运行的文件,查看其中是否包含恶意二进制文件。

 

一开始,有 5 家供应商将文件标记为恶意文件。

 


通过一些调整——比如要求 ChatGPT 将程序的启动时间延迟两分钟,这能骗过部分防病毒工具。

 


另外一个方式是利用混淆代码手段。虽然一开始 Mulgrew 要求 ChatGPT 混淆代码时,他遭到了拒绝,但将提示更改为要求 ChatGPT 将所有变量更改为随机的英文时,它很乐意执行。最终在未触发任何警报的情况下,Mulgrew 绕开了 VirusTotal 的“法眼”,最终没有一家公司的产品能将这个漏洞“检测”出来。

 


Mulgrew 的说法应该是可信的,毕竟 VirusTotal 的主要功能是捕捉已知的恶意程序。新的恶意软件往往不会立即激发仪表板。虽然也有部分检测引擎会使用沙箱来捕捉新样本中的恶意活动并触发警报,但技术高超的攻击者还是可以找到回避路径——不靠 AI 聊天机器人也能做到。

 

更重要的是,虽然 ChatGPT 能够识别出“混淆代码以避免检测”等命令并加以阻止,但攻击者们要想使唤这位强大的助手,在提示词中融入更多创意就行。

 

写在最后

 

在 ChatGPT 的帮助下,一名自认是新手的人已经能够在短短几个小时内创建出等效的恶意软件,这是一件令人担忧的事情。在这种发展趋势下,当前的工具集可能会因为 ChatGPT 出现大量恶意软件。

 

欺骗 ChatGPT 去做它不应该做的事情如此容易,这让一些网友感到害怕,是不是有一天 AI 还可能“扫描所有文档,然后将它们全部上传到某个云存储上?!那我们就完蛋了!”

 


Mulgrew 表示,虽然他的示例使用了一些让 ChatGPT 绕过现代防御的方法,但我们也不是没有办法来减轻威胁。以下是 ChatGPT 自己关于防范这种攻击的建议:

 


即:监控网络流量(但这种防不了图像隐写)、阻止可疑流量、实施访问控制、使用加密、培训员工、定期检测和升级。另外还可以实施“零信任”机制,通过清除相关图像,防止包含隐写术的图像从组织里泄露出去。 

 

参考链接:

https://www.theregister.com/2023/04/04/chatgpt_exfiltration_tool/

https://www.forcepoint.com/blog/x-labs/zero-day-exfiltration-using-chatgpt-prompts

2023-04-07 10:405590

评论

发布
暂无评论
发现更多内容

PhysicsAI 与 Inspire Cast 的结合:实现铸件缺陷的快速预测

Altair RapidMiner

人工智能 AI 仿真 智能制造 altair

“万亿级”低空经济,谁在风口上“飞”?

趣解商业

科技 出行 低空经济

观测云全面支持 OaC,通过 Terraform 管理您的可观测性

观测云

Terraform

实现-最佳实践-创造心流体验V3

南山

个人成长

实现-最佳实践-个人介绍V3

南山

个人成长

华为openMind分论坛:赋能AI社区生态汇聚,推动AI创新发展智慧未来

极客天地

实现-最佳实践-剁椒鱼头V3

南山

个人成长

天润融通发布微藤智能体平台,中国客户联络正式进入“智能体时代”

天润融通

专业期刊《Java aktuell》:使用Apache TsFile和Apache IoTDB对时序数据进行分布式数据采集

Apache IoTDB

新场景、新能力,AI-native 时代的可观测革新

阿里巴巴云原生

阿里云 云原生 可观测

从自动化到智能化:AI如何推动业务流程自动化

天津汇柏科技有限公司

自动化 智能化 AI 人工智能

实践-最佳实践-时间管理V3

南山

个人成长

RTE 大会报名丨AI 时代新基建:云边端架构和 AI Infra ,RTE2024 技术专场第二弹!

声网

实现-最佳实践-分享演讲V3

南山

个人成长

inBuilder零代码新版表单设计器特性一览

inBuilder低代码平台

低代码 零代码

AI媒体工作流“出道” | 闪迪助力探索AI的实践与创新

极客天地

实现-最佳实践-大模型提效V3

南山

个人成长

深入探索 RUM 与全链路追踪:优化数字体验的利器

阿里巴巴云原生

阿里云 云原生 全链路追踪 RUM

开发者的利器:Rainbond 赋能你的产品创新

北京好雨科技有限公司

云原生 k8s rainbond 企业号9月PK榜

【首席战略官分享】流程管理和流程数字化 | 活动成本法

望繁信科技

数字化转型 业务流程管理 流程挖掘

实现-最佳实践-沉淀与践行V3

南山

个人成长

实现-最佳实践-规划开头V3

南山

个人成长

实现-最佳实践-感恩日记V3

南山

个人成长

被动元数据的不足和主动元数据的先进性

Aloudata

大数据 数据治理 元数据 数据管理 数据血缘

.net core集成Minio,构建一个文件存储的基础设施

为自己带盐

.net core Minio

实现-最佳实践-个人复盘V3

南山

个人成长

社区来稿丨一个真正意义上的实时多模态智能体框架,TEN Framework 为构建下一代 AI Agent 而生

声网

实现-最佳实践-精力管理V3

南山

个人成长

如何在 Rust 中通过 Rumqttc 实现 MQTT 通信

EMQ映云科技

rust mqtt emqx

中国移动研究院与华为举行"数联网(DSSN)合作备忘录"签约仪式

极客天地

新手用ChatGPT仅需数小时轻松构建零日漏洞,69家专业公司都检测不出来:“不仅能调用开源库,还能彻底重写源代码”_AI&大模型_Tina_InfoQ精选文章