如何用 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 之类的产品,显然已比以往任何时候都更加便于专业人员开展安全审查工作,也使得他们能够更快地应对攻击,进而改善组织的安全态势。
版权声明: 本文为 InfoQ 作者【高端章鱼哥】的原创文章。
原文链接:【http://xie.infoq.cn/article/1dac99756877afaac2efe5cb7】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论