引言】我对ChatGPT这类所谓的AI技术刚开始是有些抵触的,因为已经看过太多所谓“划时代“的AI技术了。因此,对ChatGPT的预期是相当低的。但是随着对它了解的深入,尤其是做了一些实际的实验后,发现它的表现超出我的预期,甚至有些惊艳。尽管还没有达到我对AI技术真正实用化的最低要求,但已经让我惊讶不已了。

概述

ChatGPT一经推出便很快风靡全球。

这个基于GPT-3(Generative Pretrained Transformer -3)的LLM(大型语言模型)通过对43TB数据进行包含1750亿个参数的训练,产生了令人意想不到的效果。如果单纯看这个算法原理,不过是通过大量的语料库的基于人类反馈的增强学习(RLHF,Reinforcement Learning from Human Feedback)算法训练后得到的一个AIGC(基于AI的内容生成)机器人。ChatGPT的知识只来自训练数据中的统计规律,因此我无法想象它有什么真正意义上的思考能力,更无法想象他能具备网络安全专业知识。但当你亲自尝试了以后,你会惊讶地发现它居然可以协助你处理网络安全事件。

对于ChatGPT的相关技术演进过程以及其所代表的AIGC的国内外市场现状和趋势,李沐华有较为精辟的分析,笔者这里不再赘述。而这篇文章(不要看标题)也从攻防两端分别阐述了ChatGPT的潜在应用场景。譬如对于攻击者,可以借助ChatGPT更好地进行网络钓鱼、恶意代码生成和实施社会工程学攻击。而从防御者的角度,则可以在ChatGPT加持下检测网络钓鱼、发现漏洞,以及进行事件分析与响应。这篇早期文章也列举了ChatGPT在安全领域的应用场景,包括代码安全检查、web攻击检测等。

笔者长期以来专注安管平台、SOC以及背后的核心:安全运行/运营。因此,在朋友的帮助下获取到ChatGPT账号后,立即开展了一系列实验,以探索ChatGPT在安全运营领域可能的应用场景和预期效果。本文也将围绕这个主题展开。

用ChatGPT解析日志

对于包括安管平台、SOC平台在内的SIEM类产品,日志解析是一个关键卡点。无论是基于日志标准化(或者叫归一化、范式化)技术的schema-on-write,还是基于schema-on-read模式下的各种日志查询语言技术,都需要对日志进行语义解析,让分析师能够看懂日志所代表的含义。由于日志千万条,没有统一的格式和语义标准,目前唯一能做的就是采用基于规则的知识库形式,将各种日志的解析规则固化下来,变成知识库,内置到SIEM中。如果你在安全运营中遇到一个前所未见的日志,没有知识库可以匹配,那么就需要自己写解析规则,这是一个专家活动,不是谁都能干好的。

现在,笔者将这个问题抛给ChatGPT。其中一个示例如下图所示:

笔者大约给它提供了10条复杂的日志样本,它都能给出比较像样的答复。因为这些日志过于复杂,笔者一时间也没有看出ChatGPT的答复有什么不对。

而当笔者给ChatGPT一条Palo Alto防火墙日志(原始日志本文中略),并告诉它需要分析的日志是Palo Alto防火墙的时候,它的回答似乎更加靠谱。

有意思的是,它并不会将每个解析出来的字段都加以说明,而是会挑取部分字段进行展示说明。而笔者多次“regenerate”的时候,每次得到的答复都不同,不仅选取的字段发生了变化,表达方式也变了。

经过笔者的仔细分析,其实还是发现了ChatGPT的错误(所谓的“一本正经的胡说八道”)。

笔者继续询问:

上图展示了ChatGPT连续对话的能力(能够记住交流时传递的信息),并且提供了更多的日志格式信息指引。

可以认为,如果“我”是一名安全分析师,并且在工作过程中遇到了新的日志需要解析,“我”可以先让ChatGPT帮“我”看一眼,并给“我”提供一些参考信息,让“我”先心里有个数,但是正式的范化工作还是需要“我”来完成。

在日志解析这个场景中,ChatGPT起到了一个辅助的作用。不要小看这个场景,日志范化是SIEM运营的一个关键卡点,很多项目倒在这里。

用ChatGPT进行安全事件响应

安全事件响应是安全运营工作的核心工作。时至今日,事件响应是实战化安全运营过程中的最大卡点。如果这个环节没有做好,所有的平台、工具、流程可能都是摆设。但现实情况是,这个问题放到全球,都是难点。目前,分析师往往会面对大量的告警,并忙于在各种工具之间穿梭,夹杂着各种手工操作,并最终因为告警疲劳而倦怠,导致事件响应的人才和知识严重流失。为此,SOAR应运而生。在目前国内外主流SOAR产品中,通常都有一个作战室功能,并配以Chatbot,以聊天机器人的方式和分析师进行互动,进行事件响应处置。随着ChatGPT等高级AI加持的聊天机器人出现,结合SOAR技术,未来安全事件响应的工作效率可能会出现大的提升。

通过笔者组织的对ChatGPT进行的实验表明,如果针对某个事件告警没有预置的响应处置剧本,那么安全分析师可以求助于ChatGPT,开启交互式响应旅程,并贯穿研判、处置、汇报三个环节。

  • 在研判环节,ChatGPT可以提供告警和安全事件的见解和处置建议,并提供安全威胁情报知识的标注,协助分析师进行事件研判。分析师还可以与ChatGPT进行连续对话,主动提供更多的告警上下文情境信息,或者在ChatGPT的指引下获取并提供更多情境信息,以得到更精确的信息。而这也体现了ChatGPT的独特和强大之处。

  • 在处置环节,ChatGPT已经可以根据处置工程师的要求产生处置脚本。尽管目前并且产生的脚本还比较初级、时有错误、仅供参考,但ChatGPT已能真正减轻处置人员(尤其是初级处置工程师)的工作负担。可以预期,未来一些基本的安全响应脚本初稿的撰写工作可以交给ChatGPT或者类似AI机器人去做,处置工程师可以在脚本初稿的基础上加以完善并转为SOAR剧本。

  • 在汇报环节,ChatGPT可以根据整个研判和处置过程的所有信息,以及分析师后期输入的上下文信息,在分析师的约束下,产生一份事件研判处置报告,减轻分析师的文案工作量。

以下通过示例加以说明【注意,敏感信息做了处理,部分对话过程进行了删减,但不影响整个示例的完整性】。

如上,ChatGPT能够将我提供的告警事件的基本信息解析出来,但不能直接帮我查询其中源IP的信誉。目前的实验表明,它不是一个知识库!至少不是一个威胁情报库!

各种询问,依然不能给出源IP的信息。只好上大招。

让他生成微步在线的情报查询脚本,结果沙雕了。继续。

听懂了,但用的是v1 API。接着开始跟ChatGPT反复沟通,不断纠正,最后得到的脚本如下:

其实还是有些问题。

接下来,笔者自行修改了脚本,自己运行后,得到了反馈,并将其输入给ChatGPT。

ChatGPT开始在线了,并给出了反馈。

接下来继续探索目的IP。

接下来,陷入了就如何生成一个检查目标IP是否存在漏洞的脚本问题进行了反复沟通,最后算是勉强过关【过程略】。

将结果反馈给它,如下:

接着,又是反复沟通,让他生成告警事件通告。这个过程中,出现了一个问题,就是它会断片。因为笔者对攻击告警从源IP和目的IP两个维度进行了研判,最后拼接结果的时候,ChatGPT无法记住这个事实,不断顾此失彼。

最后,产生如下事件通告:

以上就是一个大致的事件研判过程。

接下来,就是处置。情况也不顺利,刚开始各种拒绝,经过多次谈判,并用英文输入问题【问题略😉】,终于给出了一个示例,如下:

笔者接着询问了产生国内品牌防火墙的阻断IP脚本,结果都表示不知道其API。

OK,假定处置完毕,最后就是产生大报告,将研判内容,处置内容一股脑儿让ChatGPT给汇总起来。这活儿肯定能干,但相当费“口舌”。后面过程皆省略。

BTW,在另一个攻击日志响应处置中,笔者还曾经让ChatGPT对恶意代码进行解码,如下所示:

【请大家思考一个问题:上面的解码是ChatGPT真的用解码工具得到的吗?还是直接用AI的强大能力“硬拼凑”出来的?】

以上,为大家初步展示了ChatGPT用于事件响应的大致过程,其实是一个很简单的过程。可以发现:

1) 整个过程比较漫长,要反复跟ChatGPT谈判,比较需要技巧。当然,如果套路固定下来,可以加快这个过程,但需要注意的是,ChatGPT对于同样的问题答复是不同的,有时候会产生困惑。

2) 如果每条告警都如上处置,估计分析师会疯掉,效率太低了。因此,只能有选择地去做。这也说明,Chat模式本质上是一个低效的模式,要用对场合。那么用ChatGPT API呢?记住,它的回复慢,且结果不固定,串联到你的处置流程中有风险。

3) 总之,ChatGPT对于那些缺乏标准化、自动化处置流程的,或者是疑难的告警事件可以给分析师以辅助,协助分析师研判、处置、报告,但还远不能替代人类。

需要特别指出的是,上述示例是在没有SOAR参与情况下完成的。可以发现,如果将SOAR和ChatGPT结合起来,上述进程可以加速10倍以上。情报查询、资产排查、漏洞确认、补丁修复和验证,以及影响性评估都可以通过剧本自动化的完成。最低限度,可以以分析师为桥梁,将ChatGPT的建议与SOAR的自动化操作整合起来。【此处省略笔者所在团队研发的SOAR平台介绍一千字】

ChatGPT的胡言乱语

必须清醒地认识到,ChatGPT 只是一种语言模型,所以以上所有ChatGPT产生的文字都只不过是常见的单词组合和搭配。它的回答看起来那么贴合你的需要,但完全不是以你想象的逻辑跟你交流,你无法解释它为什么会做出这样的回答。也正因为如此,它的回答可能有错误、有误导,但因为混杂在正确和你觉得正确的信息中而变得难以分辨。如果你对它的回复一股脑儿照单全收可能会掉进坑里。

这里举一个非安全的例子。

这个文章中,作者询问ChatGPT“大连有哪些旅游胜地”,结果出现了问题。

如果你对大连不熟悉的话,是完全看不出来的。而当你真的去到哪里,就发现被坑了。

笔者也照葫芦画瓢,问了同样的问题,得到的回答是:

笔者要指出的是:

1)ChatGPT对于同一个问题的答复不是一成不变的,而且变化可能会不小。

2)ChatGPT的上述回答也是有很多坑的。尤其是“辛亥革命纪念馆”,显然是跟广州中山公园旁边的那个“辛亥革命纪念馆”搞混了。

结语

关于AIGC:商业前景可观,潜力无穷,但还任重道远。

但就当前一段时期而言,正如OpenAI的投资人、创始人及CEO Sam Altman所说:“ChatGPT还有很多工作要做,现在以来它来做任何重要的事情都是错误的。”

此外,安全专家wuwu指出,ChatGPT作为生成式AI领域的重要成果,可以与分析型AI结合,再加上搜索引擎,从而产生更强大的网络安全检测与响应推动力。而所有上述能力的输入是安全领域的知识。未来,安全公司唯一可以仰仗的价值可能就是领域知识了。

关于将ChatGPT用于网络安全运营。

笔者组织的研究表明,ChatGPT可以赋能包括事件分析与响应在内的多种安全运营过程,降低对本就不足的预置安全知识的依赖,并能促进有价值的安全知识的产生和积累,从而帮助安全运营团队更准确地做出决策、实施响应、积累经验,尤其对初级安全工程师有辅导作用。

当然,现阶段以及未来一段时间,ChatGPT等高级AI驱动的聊天机器人还无法完全取代人类分析师,更多是提供辅助决策与操作支持。相信随着持续高强度的人机会话互动,再借助更大规模更专业(网络安全运营领域)的语料库训练,ChatGPT会不断强化自己的能力,不断减轻人类安全分析师的工作负担。

“在可见的未来,不要幻想出现完全自主化的安全运营!安全的本质依然还是人与人的对抗,ChatGPT的强大依然来自对人类知识的理解和总结,加大对网络安全人才的培养才是根本!”

——笔者感悟

加油吧,人类!

致谢

感谢chenjun提供宝贵账号,感谢wuwu和笔者深入沟通,并协助进行实验,还要感谢团队其它领导同事,协助进行实验、交换意见。

彩蛋:用ChatGPT应答标书

有一天,笔者突发奇想,想试一试ChatGPT的AIGC老本行能力。结果如下:

果然,这是它的强项,根本无需知道你投标的产品是个啥!

看来,“胡言乱语”(或者叫“一本正经的胡说八道”)并非一无是处,应答标书的例子就是一个证明。

【参考】

Gartner2022年SOAR市场指南报告评述

Forrester:2022年SOAR技术市场报告

声明:本文来自专注安管平台,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。