如何用ChatGPT分析恶意软件
译者 | 陈峻
审校 | 重楼
自从我们进入数字化时代以来,恶意软件就一直是计算机应用系统的“心腹大患”。事实上,每一次技术进步都会为恶意行为者提供更多的工具,使得他们的攻击行为更具破坏性。不过,如今生成式人工智能的崛起,似乎让一直以来的趋势发生了逆转。目前,网络安全专业人员正在利用ChatGPT等人工智能工具,分析和对抗恶意软件。
作为具有广泛用途的工具,ChatGPT适用于网络安全等的众多应用场景。下面,我将向您介绍,它可以协助恶意软件分析师执行的三项典型AI任务。这些任务往往可以极大地简化和提高应对恶意软件的能力。
1.创建YARA规则
YARA规则是根据特定模式来检测恶意软件的重要机制。为确保达到适当的威胁检测覆盖率,分析人员往往需要编写出许多不同的规则。不过,编写此类规则并非轻而易举之事,尤其是在时间紧迫之时。
值得庆幸的是,ChatGPT可以快速生成此类规则,从而大幅加快整个流程,并在很大程度上实现了自动化。我们只需向其聊天机器人提供适当的指令即可。当然,大多数情况下,我们仍需要对自己的表述稍加润色。如下图所示,虽然ChatGPT偶尔也会出错,但是总体而言,它对于YARA规则的编写,还是能够起到不小的帮助。
在截图中,ChatGPT并未指定字符串可以使用ASCII和wide两种编码中的具体哪一种,并且在$str4字符串中遗漏了一个额外的问题。不过,这些对于一个能够在几秒钟之内生成的规则而言,足以令人印象深刻,且加快后续工作进程了。
您可以使用如下的提问方式,要求ChatGPT创建对应的规则:
- GPT,你能帮我写一条YARA规则吗?我希望检测一个特定的恶意软件样本,该样本具有这样的特征:[可替换为具体特征内容]。
- 如何编写一条能准确识别某恶意软件的YARA规则?
- 不要解释YARA,请提供一条规则,并概述其逻辑。
2. 编写Suricata规则
Suricata规则是有效地检测和分析恶意软件的另一个重要方式。作为一款出色的工具,ChatGPT在此方面能够提供几乎不亚于初级分析师所编写出的规则。当然,由ChatGPT生成的Suricata规则可能算不上尽善尽美,但是它足以帮助您入门和上手。
从上图的例子中我们可以看出,虽然GhatGPT仍有改进的空间,但是其输出的结果可以被当作一个粗略的草稿,为我们的后续工作打下基础,并节省大量的时间。
您可以使用如下的提问方式,要求ChatGPT创建对应的规则:
- ChatGPT,请使用如下信息,生成一条能检测[某个条件]的Suricata 规则:
- 选项:[指定选项]
- 行为:[指定行为]
- 头部:[指定头部]
- 请注意,如果无法满足上述条件,就只创建一条检测[某个条件]的规则。
3.了解恶意活动
话说回来,ChatGPT在恶意软件分析方面的更常见用例在于,能够更多地了解不同的威胁,并采取的具体行动。例如,在下面的示例中,我们向ChatGPT询问了恶意软件利用合法实用程序w32tm.exe的方式,该聊天机器人给出了如图所示的可靠回答。
从ChatGPT的上述回答可以看出,它给出了需要怎么做,才能确保正确检测的良好提示。
此外,我为大家构建了一个免费的沙盒。您可以通过链接--https://any.run/?utm_source=hackernoon&utm_medium=article&utm_campaign=chatgptanalysis&utm_cnotallow=landing&ref=hackernoon.com,方便地获取上述信息。该服务旨在让您通过与云端安全的Windows VM(虚拟机)的直接交互,来分析各种可疑文件和链接。
它不仅能够检测到恶意网络流量、进程和注册表的更改,而且可以利用其内置的ChatGPT功能,让你深入了解你所感兴趣的对象,例如:被触发的Suricata规则等。
上图展示的是由ANY.RUN检测到的、借助人工智能生成的针对恶意进程的报告。凭借它,您可以全面地了解恶意软件执行某项活动的方式和原因,以及它对于基础架构安全性的影响。
小结
综上所述,以ChatGPT为代表的聊天机器人一旦被集成到我们日常的工作流程中,势必会大幅提高安全分析师的能力和效率。虽然生成式人工智能目前暂无法给整个恶意软件行业带来灭顶之灾,但是诸如ChatGPT之类的产品,显然已比以往任何时候都更加便于专业人员开展安全审查工作,也使得他们能够更快地应对攻击,进而改善组织的安全态势。
译者介绍
陈峻(Julian Chen),51CTO社区编辑,具有十多年的IT项目实施经验,善于对内外部资源与风险实施管控,专注传播网络与信息安全知识与经验。
原文标题:How to Use ChatGPT for Malware Analysis,作者:ANY.RUN