网安加·百家讲坛 | 张博:大语言模型在安全运营工具融合应用的实践与探索

作者简介:张博,某新势力车企合规审计经理、某传统车企安全开发专家,有15年Web软件、移动端研发工程师经验,先后担任合规审计经理、安全开发专家、资深研发工程师、项目经理等岗位,对IT系统合规审计、漏洞扫描、网络安全、数据安全、安全运营、人工智能等技术领域进行过深度的探索和实践,能够针对企业的业务形态建立安全管理、合规审计治理与管理机制,将安全、合规与企业紧密融合。

一、引言

如今网络安全面临着非常复杂的形势。随着互联网技术的普及与发展,越来越多的企业和社会机构将自己的业务和服务迁移到网络环境中,这同时也为恶意攻击者提供了更多的攻击面和攻击手法。网络攻击的规模和复杂性在不断增加。传统的攻击手法,如DDoS、SQL注入、跨站脚本等,仍在不断演变和升级,同时也不断涌现出新的攻击手法,如APT(先进持久性威胁)、Fileless Malware and Ransomware、AI assisted attack等等。这些攻击手法的攻击面更广、攻击手法更多、攻击手法更为隐蔽,传统信息安全工具无法检测。这使得安全团队的防御工作更加困难。其次,网络安全环境的动态性和多样性也在不断提高。云计算、大数据、物联网等新兴技术的普及,使得网络安全环境从原来的单一设备和简单网络拓扑向复杂的多设备、多网络、多云的环境发展。这就要求安全运营团队必须在不断变化的环境中保持高效的防御能力,同时也要求安全运营工具和技术能够适应这种变化。

为了应对当前复杂的网络安全形势,安全运营工具和技术的要求也在不断提高。首先,安全运营工具必须具备高效的防御能力,能够快速识别和应对各种攻击手法。这需要安全运营工具具备高精度的威胁情报、高效的威胁检测和高效的威胁溯源能力。其次,安全运营工具必须具备高度的自适应能力,能够不断进化升级以适应网络环境的变化。这需要安全运营工具具备可扩展、可集成、强化学习的能力。

由此本文引出大语言模型(LLM,Large Language Model)与安全运营领域融合的解决方案,大语言模型程序与传统的程序相比,是从自动化到智能化跨越。其中尤为突出显著的优势,是对自然语言的理解能力,能够将非结构化数据提取关键信息转为结构化数据(Named Entity Recognition),对不同维度的日志数据、告警数据、威胁情报等进行数据提取,并结合传统程序应用完成相对复杂的任务。

二、检索增强生成 VS 微调

1、大语言模型介绍

大语言模型作为一种人工智能技术,用于理解和生成人类语言。这些模型通常是由数以亿计甚至数十亿计的模型权重(Weights)组成,通过深度学习算法训练而成。它们的核心目标是学习语言的内在规律和模式,以便在各种任务中表现出类似于人类的理解和生成能力。

大语言模型的训练通常基于无监督学习,特别是通过Transformer架构,这是一种由Google在2017年提出的序列到序列(Seq2Seq)学习模型。在训练过程中,模型会接收大量未标注的文本数据,如互联网上的网页、书籍、新闻等,通过学习这些文本中的词汇、句子结构和上下文关系,来理解语言的复杂性。

在原理上,大语言模型通过自我预测(Self-supervised Learning)来学习。在训练时,模型会尝试预测输入序列中被掩码或隐藏的部分。这种技术被称为掩码语言模型(Masked Language Modeling,MLM)或预测性编码(Predictive Coding)。此外,大语言模型还可以通过生成式对抗网络(GANs)或其他技术来增强其生成能力,使其能够创作新的文本,如回答问题、撰写文章或进行对话。

在应用时,大语言模型可以根据用户输入的问题或指令来生成相应的回答,比如提供信息、解释概念、解决复杂问题,参与自然语言对话。由于它们的规模和复杂性,大语言模型可以处理各种语言任务,包括自然语言理解、机器翻译、文本生成、问答系统等。需要注意的是,尽管大语言模型在许多任务上表现出色,但它们也有局限性,可能无法完全理解语境、缺乏常识知识,有时还会产生不准确或误导性的回答。因此,使用大语言模型时需要谨慎,并结合人类判断和验证。

2、检索增强技术(RAG)原理与介绍

RAG(Retrieved-Argument Generation,检索增强的生成)是自然语言处理领域的一种创新性方法,它结合了检索式方法和生成式方法的优点,用于提高回答特定领域信息准确程度。在RAG技术中,系统从向量知识库中检索相关信息,以提示词的形式交给大语言模型以提供更准确、更具体的答案。

RAG的基本原理包含:

  • 知识检索:在回答问题时,RAG会首先在大规模的知识源(如维基百科或特定领域知识库)中检索与问题相关的信息片段。这些信息片段可以提供额外的背景知识,帮助模型生成更加准确的回答。
  • 融合上下文和检索信息:检索到的片段与原始问题和输入序列一起被输入到大语言模型中。模型会考虑这些检索到的信息,将其与生成模型的上下文相结合,理解问题的全貌和检索结果的关联性。
  • 生成回答:结合了检索到的知识后,模型开始生成回答。这个过程可能包括对检索结果的直接引用,或者使用这些信息来生成新的、连贯的文本。
  • 注意力机制:在生成过程中,RAG使用注意力机制来决定如何权重不同的检索结果。这样,模型可以根据每个信息片段对生成回答的贡献程度来决定其重要性。
  • 训练和优化:RAG模型在训练时通常采用端到端的方式,通过对比学习或强化学习进行优化,以提高回答质量和检索片段的有效性。

RAG模型在问答和对话系统中表现出色,尤其是在处理需要大量背景知识的问题时。通过结合检索式和生成式方法,RAG能够提供更丰富、更准确的回答,提高了AI在处理复杂任务时的性能。

RAG应用架构

RAG结合了检索系统和序列到序列模型的功能。最初,检索系统扫描大型数据集以查找相关上下文或事实。然后将检索到的信息输入到序列到序列模型中,以生成信息更丰富、上下文更丰富的输出。

3、计算要求与性能限制

RAG通常比微调的计算强度更大,特别是在检索阶段,它会扫描大型数据库。这使得它更适合上下文或事实信息至关重要的任务。

虽然RAG对于需要深入理解上下文或外部信息的任务非常有效,但由于其计算强度,对于需要快速、实时响应的应用程序来说,RAG可能并不理想。但随着技术的发展,RAG的性能在查询到响应时间方面正在迅速提高。

4、大语言模型的微调(Fine-Tuning)

LLM将互联网内容装载到神经网络当中,通过对语义的理解,推理预测生成符合语义的内容。LLM实际上是一种具有超高压缩比的技术,这些模型建立在Transformer架构上,通常在大型且多样化的数据集上进行预训练,微调大语言模型可以让模型掌握更多的知识而不增加存储。

微调涉及采用预先训练的语言模型并调整其参数,使其更专门于特定领域或任务。这是通过在较小的、特定于任务的数据集上继续训练过程来实现的。就日常操作而言,微调通常需要较少的计算密集度。然而,从头开始微调模型或在Llama 2等现有模型之上微调模型,仍然需要大量计算资源进行再训练,特别是对于复杂模型。

微调的主要优势在于其适应性。微调更多地依赖于现有知识。为了使其了解外部数据,你需要不断更新的数据集,并定期对LLM进行重新训练,这对于快速变化的数据可行性不高。

大语言模型微调架构

三、工作流编排

工作流编排(Workflow Orchestration)是一种自动化技术,用于管理和协调跨多个系统、服务和应用的任务执行流程。它涉及将业务流程分解为一系列可执行的步骤,并按照特定的顺序和条件来调度和执行这些步骤,以实现自动化的工作流程。

工作流编排的原理:工作流编排基于工作流模型,这个模型定义了任务、任务输入输出、任务之间的依赖关系、决策逻辑和流程的执行顺序。通常,工作流引擎会解析这些模型,根据定义的规则来调度任务,监控任务状态,并在需要时触发下一步操作。工作流编排还涉及错误处理、版本控制和审计跟踪等功能,以确保流程的可靠性和可追溯性。

值得一提的是,安全编排自动化与响应(SOAR)技术是工作流在安全运营中一个典型应用。

工作流编排的功能:

  • 自动化任务执行:自动执行重复性或复杂的任务,提高效率。
  • 流程控制:定义和控制任务执行的顺序和条件。
  • 决策逻辑:支持基于条件的分支和合并,实现动态流程。
  • 监控和审计:跟踪流程状态,提供日志和审计报告。
  • 集成能力:与各种系统和服务集成,实现跨平台自动化。
  • 灵活性:易于调整和升级工作流程以适应业务变化。

智能体工作流:

斯坦福大学教授吴恩达指出:AI智能体工作流将在今年推动人工智能取得巨大进步,甚至可能超过下一代基础模型。他呼吁所有从事人工智能工作的人都关注AI智能体工作流。吴恩达认为,如果我们在零样本模式下使用LLM,输入Prompt并通过LLM逐个生成Token,并没有进行任务调整,在这种情况下LLM的表现依然非常良好,但如果我们可以要求LLM多次进行迭代,那么这种迭代工作流会比单次生成产生更好的效果。

GPT-3.5在工作流加持下准确率高达95.1%

如上图所示,零样本(Zero-shot)模式下的GPT-4在 HumanEval(代码生成测评数据集)上的准确率也只有67.0%,但经过Agent Workflow加持的GPT-3.5准确率能飙升到惊人的95.1%。

以文章写作为例。零样本(Zero-Shot)指的是大语言模型在没有进行迭代修正的情况下直接生成最终输出,类似于人类在不回退删除的情况下一次性写完一篇文章。

但是,更符合人类写作经验的模式,是拆分成多个步骤,例如规划大纲、检索资料、撰写初稿、审阅初稿、修订草稿等,也就是上面提到的工作流编排技术。

相同的智能体工作流还有AutoGPT,AutoGPT将GPT-3.5和GPT-4.0结合起来,允许创建根据自己提示进行迭代的工作流,并审查每次迭代以对其进行改进和构建,一旦AutoGPT满足了描述和目标,它将开始运行直到达到令人满意的水平。当前依赖AutoGPT最好的Agent是evo.ninja,大家不妨尝试一下,它包含了丰富的任务模板,将用户的Prompt经过一系列Step进行迭代优化,并且可以展示给用户迭代的细节。为了能够保存任务输出的结果,evo.ninja允许保存文件的方式下载到用户本地。

AutoGPT作为智能体工作流应用也有一些实际的缺点:

1、成本高昂

由于任务通过工作流迭代完成,在迭代的过程中需要多次调用LLM的接口,最大化Tokens生成,带来了更高的成本。

2、可能无法完成任务目标而陷入死循环

如果多次迭代能够完成任务还好,如果LLM的表现无法满足预期将陷入循环,产生更高昂的代价。因此需要监控每次迭代的细节,保证每次迭代都向目标逼近,类似机器学习中的收敛的损失函数。

四、融合实践

目前笔者经过一些实践工作,对大语言模型与安全运营领域结合的优势有以下几个方面:

1、提升运营效率,降低人力成本

大语言模型可以用于自动化的安全事件分类。在信息安全运营中,我们常常需要处理大量的安全事件,但是大部分事件都是已知的、重复的,这使得人工处理变得低效。借助LLM的自然语言理解能力,我们可以自动分类安全事件,从而提高运营效率。一个具体的实现方案是,通过训练LLM来学习安全事件的自然语言描述和对应的分类标签,然后在实际运营中,将新的安全事件的自然语言描述输入到训练好的LLM中,让LLM自动进行分类。大语言模型也可以根据漏洞知识库通过自然语言生成漏洞描述,帮助我们发现系统中的漏洞。应用在漏洞管理平台,通过训练LLM来学习已知漏洞的描述和对应的技术细节,然后在实际运营中,让LLM自动生成漏洞描述,辅助运营人员进行漏洞复现和修复。

复杂工作流任务(仅示例展示)

2、简化安全运营流程

在大语言模型应用在安全编排自动化与响应(SOAR)领域可以有效地简化编排的复杂程度。例如对于一个恶意URL检测的Playbook,这是一个相对简单的工作流,传统简单的实现方式是:

①WAF对边界流量URL访问日志;

②通过恶意URL数据库进行域名、端口、路径匹配;

③如果②匹配到将触发后续告警、阻断等后续工作流,若②没有匹配将输入恶意URL检测的机器学习或深度学习模型进行进一步预测,输出置信度,并对阈值选择是否触发后续告警、阻断等后续工作流。

随着后续需求的新增和变更,Playbook的维护难度也会越来越高,更不用说本身就非常复杂的工作流,引入大语言模型与知识库之后,以恶意URL检测的Playbook为例,第二步与第三步可以逐步简化为知识库检索与大语言模型问答API节点,我们将关注如何提升LLM的输出准确性指标,以达到慢慢替代人工的效果。

借助RAG知识库与LLM的结合实现知识检索功能

3、提升安全事件的分析与处理质量

我们可以对大语言模型进行精调以满足对已知安全事件进行分析与处理,可以解决安全运营人员能力不同造成对安全事件的处理方法不得当。LLM设置合适的超参,避免模型在输出时产生偏移,在处理安全事件时可以秉承同样的方式,达到相同的质量。目前只适用于简单的事件分析工作,还不合适用作复杂的事件分析,尤其是需要对数据间相关性进行挖掘。这需要模型支持多模态、知识整合方面的能力提升。

4、支持安全决策,更好地应对潜在威胁

大语言模型可以分析不同来源的数据,包括网络流量、日志文件,以及安全威胁情报。通过对这些数据进行实时解析和处理,语言模型可以帮助安全运营中心(SOC)工作人员快速发现异常行为,如入侵检测、恶意软件传播及潜在的数据泄露等问题。笔者在测试给大语言模型输入AC日志进行分析,成功识别了登录尝试的异常操作,人类分析师经过研判发现是由自动化攻击脚本导致,体现了大语言模型对数据的理解能力。

大语言模型通过公开漏洞数据库(CVE)、漏洞报告、系统分析、访问日志、用户行为日志建模等几个方面,综合生成对安全事件的严重程度、攻击面以及影响范围的报告,协助安全运营人员研判与决策。

五、结语

1、大语言模型微调与检索增强生成的选择

  • 特定领域数据访问:如果您的应用程序需要访问特定领域的数据源,RAG可能是更好的选择。
  • 模型行为修改:如果您需要模型调整其行为、写作风格或特定领域的知识,那么微调会很有效。
  • 幻觉抑制:对于准确性至关重要的应用,RAG系统不太容易产生幻觉。
  • 标记训练数据的可用性:如果您拥有大量特定领域的标记训练数据,则微调可以提供更定制的模型行为。在此类数据有限的情况下,RAG系统提供了可靠的替代方案。
  • 数据动态:如果您的数据经常更新或更改,RAG系统因其动态数据检索功能而具有优势。
  • 透明度/可解释性:如果您需要深入了解模型的决策过程,RAG系统可以提供一定程度的透明度,而这种透明度在单独微调的模型中通常是不存在的。

微调(Fine-Tuning)和检索增强生成(RAG)的特点

RAG与微调的比较矩阵

总的来说,通过结合大语言模型和RAG检索技术,我们可以构建一个可扩展的情报知识体系,该体系可以有效地组织和利用情报知识,并为信息安全领域提供更准确和有用的信息。

2、大语言模型在安全运营中使用的潜在风险与挑战

(1)大语言模型的“幻觉”

大语言模型虽然通过大量数据训练出来,但根本原理上还是自注意力机制和位置编码,也就是通过前文预测下一个词或词组。为了降低产生幻觉的风险,必须对模型的输出进行检查并保持怀疑态度。此外,可以结合更复杂的微调手段,例如在特定领域或任务上微调模型,以减少产生幻觉的可能性。

(2)大语言模型在大量输入情况下出现性能问题

笔者在使用大语言模型处理大量非结构化数据时,模型输出性能非常不好,并且输出质量参差不齐,那么如何解决大语言模型输出的效率和质量呢?

限制长度:对数据长度进行限制,去掉不必要的数据。

模型量化与剪枝:可减少模型的大小,加速推理速度,但不会大幅减小准确性。

硬件升级:在预算允许的前提下,提升硬件是最直接提升模型效率的方法。

(3)尽管大语言模型在安全运营中极具潜力,但它们也面临诸多挑战

数据隐私:在处理敏感安全数据时,确保隐私是一个重大挑战。使用语言模型时必须遵循严格的数据安全规则。

可解释性:机器学习模型的决策往往是黑箱化的,这在安全关键的应用中是不可接受的。提高模型决策的透明度和可解释性是未来发展的关键。

误报:虽然语言模型可以帮助识别威胁,但它们也可能产生误报,导致资源浪费和误导。不断调整和优化模型将是持续的工作。

  • 15
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值