攻击者已开始利用ChatGPT编写恶意代码

来源:岁月联盟 编辑:猪蛋儿 时间:2023-01-28

自从去年11月底OpenAI发布了ChatGPT,很多安全专家就预测网络罪犯开始利用该AI聊天机器人编写恶意软件和从事其他恶意活动只是时间问题。而就在几周之后,这个时间看来已经到了。

事实上,Check Point Research(CPR)的研究人员已发现了至少三起恶意利用ChatGPT的实例:黑帽子黑客在地下论坛上展示了自己如何利用ChatGPT的人工智能进行恶意活动。

ChatGPT是AI驱动的原型聊天机器人,旨在辅助包括代码开发和调试在内的一系列用例。其主要吸引力在于用户能够以对话的方式与之交互,获得很多方面的帮助,比如编写软件、理解复杂话题、撰写文章和电子邮件、改善客户服务、测试不同业务或市场环境。

但同样的智能也可用于黑暗目的。

从编写恶意软件到创建暗网市场

一个实例中,恶意软件作者在其他网络罪犯使用的论坛上披露了他是怎么利用ChatGPT复现已知恶意软件和技术的。

举个例子,该恶意软件编写者分享了他用ChatGPT开发的Python信息盗取器代码。此信息盗取器能够在被感染的系统上搜索和复制Office文档、PDF和图片等12种常见文件类型并渗漏出去。他还展示了怎么用ChatGPT编写Java代码下载PuTTY SSH和telnet客户端并通过PowerShell在系统上秘密运行。

12月21日,昵称为USDoD(美国国防部)的黑客贴出了一份他自己用ChatGPT生成的Python脚本,该脚本能利用Blowfish和Twofish密码算法加密和解密数据。CPR研究人员发现,尽管此代码完全可用于良性目的,但恶意黑客能很轻松地修改代码,使之无需任何用户互动即可在系统上执行,成为勒索软件。不同于上一例中的信息盗取器,USDoD似乎技术能力非常有限,而他自己也宣称,这份用ChatGPT生成的Python代码是他有生以来创建的第一份脚本。

第三个实例中,CPR研究人员发现一名网络罪犯在谈论他是怎么用ChatGPT创建了一整个自动化暗网市场的。网络罪犯们可以在这个自动化暗网市场上交易被盗银行账户和支付卡数据、恶意软件工具、毒品、弹药和各种其他违禁物品。

CPR指出:“为展示如何使用ChatGPT达成这些目的,这名网络罪犯公开了一段代码,代码使用第三方API获取最新加密货币(门罗币、比特币、以太坊等)价格作为该暗网市场支付系统的一部分。”

无需任何编程经验

自OpenAI去年11月发布了ChatGPT伊始,围绕恶意黑客滥用这款AI工具的担忧就没停过,很多安全研究人员都认为此聊天机器人能大幅降低编写恶意软件的门槛。

Check Point威胁情报小组经理Sergey Shykevich重申,使用ChatGPT,恶意黑客无需任何恶意软件编写经验:“你只需要知道恶意软件,或者说任何程序,应该具有哪些功能就行了。ChatGPT会为你编写出能执行所需功能的代码。”

因此,“短期来看,需要担心的无疑就是ChatGPT会帮没什么技术的网络罪犯开发恶意软件了。”Shykevich说道,“长期而言,我认为技术娴熟的网络罪犯也会采用ChatGPT提高其恶意网络活动的效率,或者补上他们可能存在的各种短板。”

Horizon3ai客户成功经理Brad Hong补充称,从攻击者的角度出发,代码生成AI系统可以作为各种语言间的翻译,轻易弥补自己可能存在的任何技术差距。在发给安全媒体Dark Reading的电子邮件声明中,Hong表示,此类工具能够按需创建与攻击者目的相关的代码模板,令攻击者无需再去Stack Overflow和Git等开发者网站上费劲搜索。

与一些其他安全供应商一样,甚至在发现有恶意黑客滥用ChatGPT之前,Check Point就揭示了对手能够如何利用这款聊天机器人从事恶意活动。去年12月19号的一篇博客文章中,这家安全供应商描述了自家研究人员是怎么利用ChatGPT创建听起来很令人信服的网络钓鱼电子邮件的,而他们所做的仅仅是让ChatGPT撰写一封看上去出自某虚构Web托管服务的邮件而已。研究人员还演示了如何要求ChatGPT编写VBS代码供自己粘贴到Excel工作簿里从远程URL下载可执行程序。

研究人员的这些操作是为了证明攻击者能够滥用ChatGPT等人工智能模型创建完整感染链,覆盖从初步渔叉式网络钓鱼电子邮件到在受影响系统上执行反向shell全过程。

给网络罪犯制造更多障碍

OpenAI和类似工具的其他开发商已经设置了过滤条件和控制措施,还经常更新改进工具,希望能限制自身技术的误用。至少就目前而言,这些人工智能工具存在的仍是些小故障,只是偶尔容易出现许多研究人员所谓的明显错误,这种情况下为恶意黑客所用也不是那么容易。但即便如此,研究人员预测,长期看来,此类技术遭误用的可能性还是很大的。

Shykevich表示,为了让网络罪犯更难滥用这些技术,开发人员需要训练和改进其AI引擎,从而识别可能被恶意使用的请求。另一种选择则是实现身份验证和授权,需通过验证和授权才能使用OpenAI引擎。Shykevich指出,即使是类似在线金融机构和支付系统目前所用的那种也足够了。