从防御视角探讨ChatGPT对网络安全的影响

从防御视角探讨ChatGPT对网络安全的影响

专家介绍:李智华,华为安全AI算法专家,中科院博士

ChatGPT的核心优势是通过基于自然语言处理技术模型、情景模型和语言模型来自动生成文章和代码。在前面的文章中,我们从攻击视角探讨了ChatGPT对网络安全的影响, 本文将从防御视角来探讨ChatGPT在网络安全领域的作用,并进行能力评估。

ChatGPT在网络安全领域的应用主要有以下几个方面:

1.威胁检测:(1)提取签名规则(2)识别恶意代码

2.代码审计:分析代码漏洞

3.威胁情报:从文本中提取情报

4.安全运营:生成安全运营报告

威胁检测:提取签名规则

能力指数:★★★☆☆

众所周知,GitHub上有大量开源的签名规则,例如Yara、Sigma、ES等,可以用于威胁检测。由于ChatGPT训练数据包含GitHub内容,因此我们可以测试ChatGPT的规则提取能力。我们首先要求ChatGPT输出检测挖矿木马的Sigma规则。

作为一位专注于威胁检测的从业者,我认为上述答案缺乏细节,远没有涵盖全面,尤其是没有提及数据采集的类型。

于是我追加了问题中的要求。

这次给出的答案十分全面,但是检测规则仍然不够完善,经过多次询问后,最终得出的检测规则如下:

这些规则虽然不能直接应用于产品,但是对于威胁分析而言,能够迅速掌握检测规则的概貌,也算是一种很不错的帮助。

结论:

ChatGPT威胁检测提取签名规则的能力指数评分为★★★☆☆,勉强及格。

能力指数:★★★★☆

ChatGPT有能力理解和分析代码,我们让ChatGPT来分析下前一篇文章所生成的webshell后门。

第一步,识别一句话木马。

可以看到ChatGPT给出了正确回答,同时给出了非常不错的判定理由。我们继续使用base64解码的webshell,让ChatGPT进行识别,ChatGPT依然应对自如。

第二步,识别变种的webshell。

接下来试试免杀的webshell。下面是一个利用在高版本php语法不换行,来执行命令绕过常规检测的webshell,我们让ChatGPT来检测。

ChatGPT给出的判定结果完全正确,并且其反引号可以用来执行命令的理由也非常充分。

前方高能!!!

下面是一个难度极高的检测示例,使用字符串替换和函数方式运行webshell命令。

可以看到,ChatGPT给出的答案完全正确,其解释更是令人惊叹。要知道,人看这段代码可能没什么,要交给机器自动化判定,必须要通过对PHP脚本的词法分析和语义分析才能获得,但在ChatGPT看来,这似乎不算什么难事。

结论:

综上所述,ChatGPT 在恶意脚本类代码识别方面表现出色,能力指数评分为★★★★ ☆。其 AI 所给出的结果令人惊叹,这归功于它出色的代码分析能力。

ChatGPT为何擅长代码分析呢?

●使用的文本生成模型GPT(Generative Pre-trained Transformer)能够对代码进行分析,以确定其意图。

●训练所使用的数据量巨大,ChatGPT从Stack Overflow、github等大量的语料里训练模型。

●ChatGPT可以学习特定的编程语言的语义,生成更加准确的语义分析结果。

代码审计:分析代码漏洞

能力指数:★★☆☆☆

前面提到ChatGPT擅长代码分析,接下来我们看看它在代码审计方面的能力,是否可以帮助我们发现代码中存在的问题。

首先,我们以比较简单的存在SQL注入的代码审计为例:

ChatGPT的回答还算让人满意。不过,当我们尝试一个不存在SQL注入的代码时,ChatGPT就开始“一本正经的胡说八道”了:

实际上,上面的代码可以有效地防止SQL注入,原因如下:

1.采用了预编译,避免了拼接SQL语句,清晰地划分了代码与数据。

2.检测了数据类型是否仅为数字。

3.判定结果是否仅为一条,有效防止“拖库”攻击。

ChatGPT回答错误,进一步追问ChatGPT,让其给出poc代码。

果然,它给出的答案是错的。

结论:

ChatGPT 的代码审计能力指数为★★☆☆☆。总体而言,ChatGPT 对代码审计有一定的帮助,但是需要人工核实它回答的结果是否正确。

威胁情报:从文本提取情报

能力指数:★★☆☆☆

从公开报道中摘取有关情报,是安全领域最为常见的自然语言处理应用场景之一。我们让ChatGPT从CrowdStrike的“麻辣香锅”恶意软件公开报道中,提取出一份中文摘要。

看起来还不错!我们再让ChatGPT提取响尾蛇组织使用的TTP。

上述回答给出的链接已经失效,无法证实其答案的正确性。

结论:

ChatGPT从文本提取情报的能力指数为★★☆☆☆。综合来看,ChatGPT 对于提取情报有一定的帮助,但还需要人工核实。

安全运营:生成安全运营报告

能力指数:★★☆☆☆

ChatGPT可以提升安全运营效率,已有公开报道称它可以解析安全日志,针对可能存在的威胁事件,提供详细的处置建议,并发布相应的事件通告;还可以生成用户报告,支持组织有效地管理安全风险。

安全运营的最终目标是实现智能运营,而最具挑战性的工作是在海量告警中发现有效攻击。ChatGPT目前无法实现海量告警研判分析,仍然需要安全运营专家的参与,才能达到最佳效果。

结论:

ChatGPT生成安全运营报告的能力指数为★★☆☆☆。

基于ChatGPT构建安全大模型

看到ChatGPT在网络安全防御方面的诸多优点,很多安全企业可能蠢蠢欲动,希望做自己的安全大模型。

如何让大模型适配安全场景呢?

很多人可能都会想到在ChatGPT这样的大模型基础上,针对安全领域重新训练一个增量模型。但是有几个关键问题需要考虑:

1.训练成本:大模型训练成本取决于训练数据的大小和模型复杂性。当训练数据更大和模型更复杂时,训练成本会更高,因为需要更多的计算资源来处理更多的数据。

2.模型调整:针对安全运营场景,需要调整大模型的数据输入,用于海量安全事件的研判分析,这需要安全运营和AI专家投入。

3.最终效果:由于安全事件本质上是低概率事件,大规模对于少见的,甚至是新型的安全攻击类型,当前还无法有效处理。

结语

ChatGPT使AI在网络安全防御中的应用更为广泛,它是一种基于深度学习的自然语言生成技术,可以帮助网络安全防御人员提取签名规则,识别恶意代码,提升代码审计和情报提取的效率;帮助安全运营人员分析日志,生成安全运营报告,给出有效的防护措施建议。鉴于这些益处,许多企业希望构建适配安全场景的大模型,这就必须考虑训练成本、模型调整这些因素,并且大模型对于少见的、甚至是新型的安全攻击类型,当前还无法有效处理。即便如此,我们仍然相信,ChatGPT等大模型的出现一定会对网络安全领域带来很大改变,实现智能分析和运营,只是一个时间问题。


posted @ 2023-02-25 09:24  bonelee  阅读(653)  评论(0编辑  收藏  举报