1. 引言
1.1. 研究背景及重要性意义
在全球化和数字化快速发展的今天,网络安全[1]已成为国家安全和发展的关键因素。面对网络谣言、泄密和黑客攻击等日益严峻的挑战,国家对信息安全的监管和考核越来越严格,通过法律法规和政策的制定,不断加强信息安全管理。随着移动办公的兴起,企业单位在提高办公效率的同时,也面临着设备使用环境多样化带来的信息安全风险。移动办公引发的泄密事件频发,对社会稳定和国家安全构成威胁,凸显了信息安全等级测评的必要性。作为敏感信息收集的第一线,企业单位必须承担起保护移动信息安全的责任,采取有效措施,确保信息安全等级保护工作的顺利进行。信息安全等级测评(等保测评) [2]作为网络安全的重要组成部分,其重要性日益凸显,对于构建健全的网络与信息安全保障体系至关重要。通过等保测评,可以及时发现和解决信息安全问题,提高信息系统的安全性,保障国家和社会的安全稳定。
测评流程是经专业测评师现场测评后,会将最终测评结果以测评报告形式呈现。因此,等保测评报告的质量检测对于确保信息系统的安全性和合规性至关重要。它确保了报告的准确性,使报告能够真实反映信息系统的安全状况,包括潜在的安全漏洞[3]、风险点[4]以及可能受到的威胁,为制定有效的安全策略和改进措施提供了坚实的基础。同时,质量检测保证了报告内容的合规性,符合国家和行业的相关法规标准,避免了因不符合规定而受到的处罚或法律风险。此外,完整性是测评报告的关键,它包含了系统描述、安全控制措施、检测方法、发现的问题及建议等所有必要信息,确保了对信息系统安全状况的全面评估。并且,随着测评数据的庞大,人工纠错的方法已经远远不能满足目前需求。通过自动化地报告质量检测,不断发现测评过程中的不足和改进空间,不断推动测评方法和流程的持续改进,提高整体测评效率和质量。
1.2. 人工智能技术在报告质检中的重要性
人工智能技术(AI) [5]在等保测评报告的质量检测中扮演着越来越重要的角色,它通过自动化执行重复性任务提高了检测效率,同时利用机器学习[6]和数据挖掘[7]技术深入分析复杂数据集,识别出潜在的安全威胁和异常模式。AI系统的持续学习和优化算法提高了检测的准确性,减少了误报和漏报,而实时监控能力则确保了对安全事件的快速响应。自然语言处理技术(NLP) [8]和大模型技术[9]的应用使得AI能够更准确地理解和分析报告文本,提升了报告的可读性和一致性。此外,AI还能基于历史数据进行风险评估和预测,为报告提供深入的分析和未来趋势预测。个性化和定制化的服务使得AI能够满足不同组织和系统的具体安全需求,而减少人工干预则有助于降低人为错误,提高报告质量。AI技术还通过提供深入的数据分析和洞察,为决策者提供强有力的支持,帮助他们做出更明智的安全决策,从而在信息安全管理中发挥着不可或缺的作用。
2. 案例分析
2.1. 测评报告符合情况一致性判断
自然语言处理(NLP)是人工智能领域中一项关键的技术,它致力于使计算机能够理解、解释和生成人类语言。这项技术的应用范围非常广泛,包括机器翻译、情感分析、文本摘要、问答系统、语音识别和聊天机器人等。随着深度学习技术的发展,NLP在多个方面取得了显著的进展,尤其是在语言理解与交互应用方面。
在NLP领域,一些代表性模型已经成为研究和应用的基石。BERT (bidirectional encoder representation from transformers) [10],由Google开发,通过预训练双向Transformer模型[11],显著提高了语言理解的能力。ELMo [12],通过预训练的深度双向语言模型来生成词嵌入,提高了语言模型的上下文感知能力。XLNet [13]结合了Transformer和循环神经网络(RNN) [14]的优点,通过置换语言模型来捕捉更丰富的语言结构。Transformer是现代许多NLP模型的基础架构,它通过自注意力机制来处理序列数据,提高了模型的效率和性能。此外,NLP的未来趋势包括大模型主导地位、多模态融合[15]、持续学习与微调、可解释性与可信赖性、无监督与半监督学习以及跨语言处理。这些趋势不仅反映了NLP领域的研究现状和发展方向,也将对人工智能的整体发展产生重要影响。
在测评过程中,针对不同系统情况,采用相对应的条款对其进行逐个测评,若当前系统不能满足条款中提出的要求,则判断该系统存在安全风险,在报告中表现为该机器检测后的结果记录与条款不符合。在实际测评过程中,一般采用人工比对方法,这种方法存在误检率高、效率较低的问题。为此,为了实现对已测评后的报告数据进行质量检查,逐步优化识别算法,实现自动化的符合性判断,方法提出了基于NLP的语义理解能力对报告中的结果记录和条款进行符合情况判断。
首先,收集并处理专业测评报告数据。从测评管家系统中导出349.6万条数据,包含安全域、控制点、条款、结果记录、符合情况等关键信息。具体数据分布如下表1:
Table 1. Data distribution of compliance situations in evaluation reports
表1. 测评报告符合情况数据分布
情况分析 |
不适用 |
符合 |
部分符合 |
不符合 |
数量(条数) |
786,418 |
1,774,171 |
443,303 |
492,131 |
注:“不适用”即表示当前条款不适合测评当前系统,“部分符合”即表示该系统不完全满足条款中要求。
而后,通过对数据进行分析,可以将该需求转换为文本分类问题,将数据中(不适用、符合、部分符合、不符合)归为4大类。而后通过对文本(条款及结果记录)进行分析,得出该文本的类别(符合情况),因此选用BERT算法。其主要优势如下:
1) 利用掩码语言模型(MLM) [16]进行预训练,能够同时考虑单词的左右上下文信息。
2) 基于Transformer架构[11]能够捕捉到句子中单词之间的复杂关系。
3) 两阶段训练策略大大提升了模型在特定任务上的性能,同时也显著减少了针对特定任务所需标注数据的数量。
4) 与大模型相比,BERT算法具有硬件资源需求低、训练参数量少、训练成本低等优势。
明确模型后,进行数据清洗(异常值、空值等处理),基于该模型进行标准格式转换,具体见图1所示:
Figure 1. Standard training format
图1. 标准训练格式
其中,模型训练一开始使用条款(item_name)+结果记录(result)作为输入数据,符合情况(label)作为标签。训练集和测试集采用8:2方式进行划分,由此获得训练集275万条,验证集72万条,测试集22,706条。
实验中采用了一系列网络训练策略和技巧来提升分类模型的性能。在模型训练过程中部分重要参数的具体设置如表2所示:
Table 2. Table of model training
表2. 模型训练表
参数名称 |
参数值 |
备注 |
Pretrained |
bert-base-uncased |
预训练模型 |
Per_device_train_batch_size |
32 |
单张卡训练批量数 |
Adamw_torch |
True |
优化器 |
Num_train_epoches |
20 |
训练轮数 |
Max_seq_length |
512 |
最大截断token |
Learning_rate |
2e−5 |
学习率 |
Pytorch2.3.0+cuda11.6 |
- |
实验环境 |
Nvidia GeForce RTX4090 |
- |
实验平台 |
模型基于3张NVIDIA Ti显卡上训练,最大训练轮数为20,训练总时长54个小时,直到模型达到收敛。因训练数据对大小写不敏感,故预训练模型采用uncased版本(bert-base-uncased),每张显卡指定32个字段,优化器采用Adamw_torch,模型最大截断字数是512,且模型初始学习率为2e−5,实验环境为pytorch版本为2.3.0,cuda版本为1.6,显卡型号Nvidia GeForce RTX4090。
(a) (b)
Figure 2. Model training results and real-time reasoning speed. (a) Model training results; (b) Real-time reasoning speed of the model
图2. 模型训练结果及实时推理速度。(a) 模型训练结果;(b) 模型实时推理速度
模型训练结果如图2(a)所示,在训练轮数epoch达到第10轮时,模型得到较好收敛。可以看到,在验证集上,模型达到99%的识别准确度(eval_accuracy),验证损失(eval_loss)为0.069,在训练集上,达到0.017的损失(train_loss)。模型测试结图2(b)所示,在单张Nvidia GeForce RTX4090上,传输处理1000条数据需要约10 s,即模型可达到10 ms/条的实时推理速度。在测试过程中,为了更加准确评估模型性能,在22,706条测试集上进行预测评估,具体测试结果如图3所示。
可以看到,在测试集中,对四类报告数据都进行了抽样测试。其中,不适用测试数据5514条,错误预测数据4条;3359条,错误预测数据26条;部分符合测试数据3117条,错误预测数据不符合测试数据29条;符合测试数据10,716条,错误预测数据18条。可知,模型在判断“符合”与“不适用”情况表现较好,在“不符合”、“部分符合”上还有一定优化空间。通过模型在单个及总体测试数据集上的识别准确率,说明模型在等保测评报告的质量检测中,能够有效地识别和评估信息系统的安全状况。
Figure 3. Model test results
图3. 模型测试结果
2.2. 测评报告实体抽取方法
大型语言模型(LLMs)代表了人工智能领域的一项革命性技术,随着计算能力的显著提升、大规模数据集的可用性以及先进的算法设计,大模型技术得到了快速发展。大模型通过在海量文本数据集上进行训练,能够预测文本序列中的下一个词汇或段落,从而实现对人类语言的深入理解和处理。LLMs不仅拥有卓越的语言理解能力,还能生成与人类相似的文本,展现出情境感知和问题解决的智能。相比于其他自然语言处理模型,大模型具有更强的语义理解能力、更好的生成组织能力、有思维链(Cot, Chain of Thought) [17]能力,可以实现逐步思考。随着诸如ChatGPT [18]、LLaMA [19],以及对中文支持度较高的Qwen系列[20]、Glm系列[21]等模型的相继问世,LLMs的应用场景得到了显著的拓展。这些模型的推出不仅加速了LLMs在全球范围内的普及,更为语言处理技术的广泛应用奠定了坚实的基础,推动了相关技术在各行各业的深入应用和发展。此外,LLMs在自然语言处理(NLP)领域的应用也日益广泛,包括但不限于机器翻译、情感分析、文本摘要、问答系统和对话系统等。
对于大多数测评师而言,测评报告的编写与审核却常常成为他们面临的难题。此外,在进行项目定位和投入方向决策时,公司还需对已完成的项目进行深度内容分析。为了精准抽取分析报告中的实体,案例提出了一种基于baichuan-7B [22]大模型训练的方法,为识别错误信息以及为公司项目定位提供有力的前置条件。
Baichuan-7B是由百川智能开发的一个开源的大规模预训练模型。基于Transformer结构,在大约1.2万亿tokens上训练的70亿参数模型,支持中英双语,上下文窗口长度为4096。在标准的中文和英文权威benchmark (C-EVAL [23]/MMLU [24])上均取得同尺寸最好的效果,各模型性能对比如表3所示:
Table 3. Comparison of evaluation indicators for large models
表3. 大模型评测指标对比
Model 5-shot |
Average |
Avg (Hard) |
STEM |
Social Sciences |
Humanities |
GPT-4 [25] |
68.7 |
54.9 |
67.1 |
77.6 |
64.5 |
ChatGPT |
54.4 |
47.4 |
52.9 |
61.8 |
50.9 |
Claude-v1.3 [26] |
54.2 |
39.0 |
51.9 |
61.7 |
52.1 |
Claude-instant-v1.0 |
45.9 |
35.5 |
43.1 |
53.8 |
44.2 |
moss-moon-003-base (16B) [27] |
27.4 |
24.5 |
27.0 |
29.1 |
27.2 |
Ziya-LLaMA-13B-pretrain |
30.2 |
22.7 |
27.7 |
34.4 |
32.0 |
LLaMA-7B-hf |
27.1 |
25.9 |
27.1 |
26.8 |
27.9 |
ChatGLM-6B |
34.5 |
23.1 |
30.4 |
39.6 |
37.4 |
TigerBot-7B-base [28] |
25.7 |
27.0 |
27.3 |
24.7 |
23.4 |
BLOOM-7B [29] |
22.8 |
20.2 |
21.8 |
23.3 |
23.9 |
baichuan-7B |
42.8 |
31.5 |
38.2 |
52.0 |
46.2 |
普通的测评报告PDF文件中,通常含有大量停用词,同时数据的目标标签也并不清晰,这种未经处理的原始数据难以满足模型训练的基本要求。此外,模型训练通常需要的是结构化的.json格式的文本集文件。根据工程实践经验,要构建出成熟且具备高准确率的模型,往往需要数十乃至上百个这样的文本集作为数据支撑。因此,在利用baichuan-7B大模型进行训练之前,需对原始测评报告进行预处理,包括去除停用词、明确目标标签以及格式转换等工作,以确保训练数据的准确性和有效性,数据处理流程图见图4所示,具体实现步骤如下:
1) 清洗数据:清洗数据主要是为了去除原始数据中的冗余句子和段落,同时清除句子中的停用词。由于原始数据较为混乱,直接进行词元化后的词向量信息在宏观层面会表现出较大的方差。这种较大的方差会导致模型在反向传播过程中的梯度下降不稳定,进而使得模型难以收敛,最终影响模型的泛化能力。因此,数据清洗是提升模型性能的重要步骤。
2) 文本分句:经过清洗的文本数据需要按照其语意进行恰当的分割,因为正确的语意分割是确保模型能够按照我们期望的方向进行优化的关键。若语意分割不准确,模型的训练结果可能会不尽如人意,无法达到预期效果。
3) 数据标注:经过分句处理,我们获得了大量的句子。为了提供训练目标,我们手动提取并标注了这些句子中的实体。通过这样做,我们能够轻松地构建损失函数,从而指导模型进行训练。
4) 数据结构化:将上述得到的数据构建成json格式并打包封装为.json文件。因为这是模型支持的文件。
经过四步数据预处理,我们得到的训练的数据json文件,其中输入为input这是要进行实体抽取的句子。目标是target这是模型的训练目标。
Figure 4. Overall data processing flow
图4. 数据处理总体流程图
模型训练中,超参数设置如图5所示,模型采用lora微调方式,指定训练批大小(batch_size)为16,意味着在每一次参数更新过程中,模型将同时处理16个样本的梯度信息。整个训练过程将遍历数据集50次,以确保模型充分学习样本分布特征。
图6的整个训练过程可以看出,当训练迭代次数接近6000次观察到损失函数曲线呈现出明显的平稳趋势,这一迹象表明模型已进入快速收敛阶段,即模型参数的学习已逐步接近最优解,后续训练对性能提升的边际效应减小。整个训练过程共计完成了32,343次迭代。最终,模型在验证集上展现出最优识别率,数值高达89.4%,这一结果清晰地呈现在图6之中。基于ubuntu20.04、4颗Intel Xeon 6348H (24 C, 165 W, 2.3 GHz)平台,以及4080/16G*2环境上,在对大约2000条测试语句进行评估后,模型在目标实体识别任务上实现了平均准确率为88.1%的优异表现。这一结果表明,模型已成功达到预期的训练目标,并能够高效地识别报告中的关键实体。
Figure 5. Model hyperparameter settings
图5. 模型超参数设置
Figure 6. Model training process diagram
图6. 模型训练过程图
3. 总结及展望
本文深入探讨了人工智能技术在等级保护(等保)测评报告质量检测中应用案例及重要意义。通过分析传统质检方法的局限性,明确了引入人工智能技术的重要性。人工智能技术,特别是自然语言处理(NLP)、大语言模型(LLMs)、已经在等保测评的多个方面展现出显著优势。在案例中,通过自动化分析报告符合情况一致性,提高了报告质检效率和准确性,减少了人为主观因素的影响。通过大模型高效的信息抽取能力,进行复杂长文本的实体抽取,以提高测评报告关键信息的准确性。这些技术的应用不仅提高了等保测评的自动化和智能化水平,还为测评师提供了更高效、更准确的工具,从而更好地提高等宝测评的整体效率。
在当前时代,人工智能(AI)技术在等保测评报告质量检测中发挥着越来越重要的作用。AI的应用不仅提高了测评报告的效率和准确性,还通过自动化和智能化手段,增强了对潜在安全威胁的识别和预警能力。然而,尽管AI技术在等保测评中取得了显著进展,但其应用仍存在局限性,如对高质量数据的依赖、模型的可解释性问题以及对复杂任务的处理能力有限。
随着人工智能技术的不断进步,预计等保测评报告质量检测将更加依赖于智能化手段。通过引入更多的AI技术和工具,提高测评效率和准确性。AI的自我学习和自适应能力将使其在实时监测和响应安全威胁方面更加高效。此外,AI与大数据的深度融合,将进一步推动等保测评的自动化和智能化,实现更精准的风险评估和决策支持。同时,个性化服务和定制化防护将成为等保测评的重要发展方向,为企业提供更加精准和高效的安全保障。