2024人工智能AI安全白皮书.docx
人工智能Al安全白皮书2024目录Al赋能安全101.lAl赋能安全101.2Al伴生安全261 Al安全的生态361.1 Al安全的监管生态361.2 Al安全的技术生态572 Al安全的热门问题902.1 大模型安全902.2 对抗样本攻击922.3 数据投毒攻击942.4 供应链攻击962.5 数据泄露攻击992.6 模型窃取攻击1022.7 Al伦理/对齐1042.8 Al辅助安全1083 Al安全的行业发展1213.1 监管发展1213.2 技术发展1264 总结与展望1351 Al赋能安全1.1 Al赋能安全1.1.1 Al赋能漏洞挖掘1.1.1.1 漏洞挖掘的发展历史人工智能技术的发展和应用不断推动着网络安全攻防自动化和智能化的水平,目前已经在恶意代码检测、恶意流量分析、漏洞挖掘、僵尸网络检测、网络灰产检测等各领域有了广泛的应用。基于人工智能的漏洞挖掘方法通过训练大批量的漏洞代码样本,学习漏洞代码的语义、结构、指令序列等特征,从而能够自动化的定位到可疑代码。越来越多的安全公司都在增大对AI研究的投入,并将Al安全作为业务发展的重心,信息安全漏洞挖掘技术的发展历史可大致分为以下四个阶段。第一阶段,人工代码安全审计,60年代就开始的一种漏洞挖掘方式,由专门的安全审计人员在开发过程中或发布前后检测和评估代码。但代码安全审计是一项复杂而繁琐的任务,需要具备专业的技术和知识,投入大量的时间和人力,在安全服务领域算是工作量最大的一种服务方式,并且存在检测不全面的情况。第二阶段,静态分析工具辅助,70年代开始出现了一种用于分析应用程序源代码和二进制文件的技术SAST静态应用程序安全测试,但SAST无法考虑代码的上下文信息,也不能处理代码中变量和数据流的复杂性,所以有较高的漏报和误报率,所以还是需要人工进行验证和复审。第三阶段,结合动态测试技术,90年代开始的黑盒模糊测试就是其中一种代表性技术,通过模拟攻击者可能使用的各种手段来评估软件系统的安全性,可以更好地发现系统可能存在的安全缺陷,但漏报概率较高和覆盖率相对较低,还是有一定的限制。第四阶段,人工智能漏洞挖掘,近10年间模糊测试技术已经从传统的黑盒模糊测试技术,逐步演进到了基于覆盖引导、定向模糊测试的灰盒模糊测试技术。随着人工智能与网络安全不断交叉融合,对于AI赋能于漏洞挖掘也有了新的探索,AIGC可以赋能模糊测试生成更精准的测试用例,融合覆盖引导、遗传算法、神经网络和AIGC等技术。1.1.1.2 全球业界的大力推动2018年3月,美国国际战略研究中心(CSIS)在题为美国机器智能国家战略的报告中提出美国政府应在战略层面注重机器智能与人工智能发展齐头并进,纵观整个网络安全行业,尽管已经有很多安全公司提出了以AI和大数据为驱动的口号,但似乎还鲜少看到实际的应用落地。图1美国CGC比赛现场2023年9月份美国宣布发起为期两年的人工智能网络挑战赛(AlCyberChallenge,AIxCC),以推动自动化网络攻防技术的发展,保护美国的关键软件。该竞赛将由美国国防高级研究计划局(DARPA)牵头,旨在利用AI安全技术快速识别和修复关键软件漏洞。这是DRP发起机器自动化网络对抗的超级挑战赛CGC(CyberGrandChalIenge)之后,再次牵头主办的“人工智能网络挑战赛”,整个赛事的奖金总额为1850万美元(约合人民币1.33亿元),不论是从时间成本,还是资金投入,都可见美国政府对此赛事的重视程度非同一般。放眼国内,近年来我国信息安全体系日趋完善,2017年印发的新一代人工智能发展规划,标志着我国人工智能发展进入到国家战略层面。在“十四五”规划纲要中,共有6处提及人工智能,并将“前沿基础理论突破,专用芯片研发,深度学习框架等开源算法平台构建,学习推理与决策、图像图形、语音视频、自然语言识别处理等领域创新”视为新一代人工智能领域的重点攻关方向。3一网络安图2中国首届国际机器人网络安全大赛RHG智能化攻防技术也得到了迅速发展,RHG(RobotHackingGame)竞赛在国内逐渐兴起,陇剑杯、黄鹤杯、强网杯、网鼎杯、纵横杯等都有AI攻防赛道,进一步推动人工智能技术在网络安全自动化的应用和实践。为模拟实战应用场景和检验企业的自动化安全攻防能力,这类竞赛为自动化攻防技术的探索和应用提供了实践的土壤,推动智能化攻防技术进步,标志着漏洞攻防正逐步向智能化方向演进。1.1.1.3 漏洞挖掘的相关技术目前,对于软件漏洞挖掘主要从源代码和二进制两个方面开展。其中针对发现漏洞的最佳实践方式有源代码审查、模糊测试、基于规则的静态分析、基于规则的动态分析等,这些方法在特定情况下针对特定二进制程序可以产生很好的检测效果,但仍然存在一些很难突破的先天缺陷,下面分别对6种代表性的漏洞挖掘技术作一下简要的介绍。1符号执行(SymbolicExecution)是一种静态分析技术,用于探索程序在不同执行路径上的行为,而不限于浅层路径。在程序执行过程中,将输入变量替换为符号变量,将程序的执行路径转化为约束条件。以达到绕过输入验证、触发故障修复或其他类型的漏洞利用的目的。2模糊测试(FUZZing)用于向目标软件输入各种测试数据来发现漏洞或测试目标程序的鲁棒性。与符号执行和生成式测试的结合能够产生更多利用潜力的输入。将模糊测试中生成的输入作为符号化输入,然后进行符号执行路径探索,针对不同的输入生成一组约束条件。约束条件可以描述输入所需的特定属性或限制,例如特定的字节序列、特定的函数调用序列等。通过约束条件激活器解决这些约束条件,找到满足约束条件的具体输入,结合符号执行的约束条件和约束初始化。3代码插桩(COdeInStrUmentatiOn)是一种修改程序源代码或二进制代码的动态分析技术,具体取决于可用的工具和技术,以在运行时插入附加监测代码,获取代码执行过程中的指令序列,学习漏洞代码的动态执行特征。4控制流程图(COntrOIFlowGraph,CFG),针对目标二进制文件中的函数、库函数以及各种间接跳转,获得程序的控制流图的节点,结合反汇编出来的代码或者脚本语言,从而识别出可疑的汇编代码序列,进而快速有效地发现未知漏洞。5遗传算法(GeneticAlgorithm,GA)根据大自然中生物体进化规律而设计提出的。是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种在复杂的高维空间中通过模拟自然进化过程搜索最优解的方法。该在漏洞挖掘中遗传算法可用于生成测试用例,通过迭代进化候选测试用例的群体并根据某些标准(例如覆盖率或风险)选择最佳测试用例。图3神经网络示意图(来源互联网)6人工神经网络(ArtificialNeuralNetwork,ANN),从信息处理角度对人脑神经元网络进行抽象,建立某种简单模型,按不同的连接方式组成不同的网络。在漏洞挖掘中,测试工具可在模糊测试过程中生成海量测试用例,以用于训练神经网络并教育其识别海量输入中可能导致错误或其他意外行为的模式,进而形成更高效的变异策略或变异模板。随着测试数据的积累,漏洞挖掘引擎也必将愈发智能化。基于敏感函数进行代码切片,运用双向递归神经网络对代码进行训练,提取漏洞代码的静态语义特征。1.1.1.4 自动挖掘流程与场景通过生成式人工智能AIGC(ArtificialIntelligenceGeneratedContent)与模糊测试相结合,模型可以根据历史漏洞数据和程序的行为特征生成更高效的测试用例,从而大幅提升测试用例质量与漏洞检测效率,自动化漏洞挖掘已经成为一种有效的技术。首先使用模糊测试生成大量的随机输入,将这些输入提供给目标程序执行。这些输入会触发目标程序中的不同代码路径。接着利用符号执行技术对模糊测试生成的测试用例进行分析,计算程序执行的不同路径,并收集关于程序状态的符号约束信息。符号约束描述了在特定输入下程序能够到达指定路径的约束条件。从程序路径中选择部分路径,根据各个路径的约束条件,生成新的、符合路径约束的测试用例。这些生成的测试用例更有可能触发深层的未知漏洞。利用符号执行生成的测试用例验证目标程序的执行状态,检查是否出现异常行为。如果发现异常行为或异常状态,进一步分析其成因和利用可能性。根据验证结果,给模糊测试程序进行反馈,迭代模糊测试的输入生成策略,以便更好地挖掘漏洞。然后使用代码插桩对目标程序的运行状态进行动态监测,包括代码覆盖率、路径信息和程序状态等。代码插桩为模糊测试和符号执行提供了关键的运行时数据,帮助识别异常行为和异常状态。结合模糊测试和代码插桩的结果,可以识别出目标程序中的疑似漏洞。符号执行生成的符号化输入可以帮助模糊测试触达更多路径,从而挖掘更多潜在的深层漏洞。同时符号执行也能提供精确的漏洞触发路径。插桩提供的运行时信息可以确定程序的异常行为和异常状态,从而更准确地发现漏洞。在发现潜在漏洞后,进行验证和利用。符号执行计算出的漏洞触发路径可以精准的触达漏洞的触发点。一旦漏洞被确认,进一步构建针对该漏洞的攻击手段和攻击策略。综合利用模糊测试、符号执行和代码插桩技术,可以自动化地发现和验证目标程序中的漏洞。自动化漏洞利用(AutomaticExploitGeneration,AEG)的技术体系已经得到了广泛的关注和使用,利用计算机程序或工具自动生成针对已知或未知漏洞的利用代码或攻击创建适配器,自动生成有效的利用代码,以利用目标系统或应用程序中的漏洞,主要应用于如下几个场景:1可用于验证漏洞的可利用性。当一个漏洞发现并报告给厂商或开发者时,AEG可以用于自动生成针对该漏洞的利用代码,以验证漏洞的实际利用效果,并确认其是否会导致系统被攻击。2用于评估漏洞修复的效果,AEG工具重新生成利用代码,以测试修复后的系统是否仍然容易受到攻击。这种方式,可以评估修复措施的质量,并帮助开发者或厂商确保漏洞已经得到适当的修复。3可用于自动化的安全漏洞挖掘。它可以通过生成大量的输入和攻击适配器,探索目标系统或应用程序中的未知漏洞。通过尝试不同的输入和攻击方式,AEG工具可以发现和生成新的漏洞利用代码,进一步帮助安全研究人员发现和修复系统中的潜在缺陷。漏洞自动化生成利用技术是一个复杂的研究领域,涉及多种技术和方法的融合,通常情些技术是结合使用,以自动化生成针对漏洞的利用代码。1.1.1.5 自动化挖洞未来展望自动化漏洞大大减少了使用的难度,并且可以通过预先定义的漏洞利用模板、脚本、PayIoadS等工具和资源,提高了利用的速度和效率。能够覆盖多种不同类型的漏洞,包括操作系统、应用程序、网络设备等各种目标中的漏洞。相比手动漏洞利用,自动化漏洞利用技术能够广泛地扫描和利用各种漏洞,避免由于人为疏漏或不完整扫描而导致的漏报的风险。自动化漏洞挖掘与利用已经成为红队不可或缺的一部分,提高效率,加强测试多样性,持续性的评估。不仅适用于安全研究人员,同样适用于不擅长漏洞挖掘的程序员,降低了漏洞利用环节的利用门槛。随着AI自我学习的完善,未来漏洞检测率将越来越高,检测成本降越来越低,漏洞检测时间将越来越短。1.1.2 Al赋能安全防御随着现代社会的高度数字化,各种新型网络攻击威胁着政府、能源、金融、医疗等行业的网络安全,人工智能技术与网络安全防御融合应用是一种必然的趋势,新型网络攻击威胁不断向规模化、自动化发展,亟需打造智能化的网络安全运营体系,筑牢网络空间安全。1.1.2.1 人工智能应用于网络安全防御的特点网络安全己经从人人对抗、人机对抗逐渐向基于人工智能的攻防对抗发展演化,人工智能技术应用于网络安全防御领域主要有以下方面特点:1、有效抵御复杂网络系统的安全漏洞可通过机器学习和深度学习等方法,从大量的网络流量和日志数据中提取有用的信息,自动化、快速、准确地检测和修复复杂网络系统中的安全漏洞,从而更快发现并解决安全漏洞,提升整体安全防御水平。2、大幅缩短对攻击的响应时间通过人工智能技术可以在短时间内快速分析网络流量和日志数据,从而在攻击威胁发生时能够实时检测并响应。与传统安全防御技术相比,人工智能技术可更快实现网络自主监测,发现攻击威胁,大幅缩短响应时间,降低误报率,减少潜在损失,提高网络安全防御的效能。3、增强网络安全防御的协作能力通过人工智能技术应用帮助网络安全运营团队提升应急响应协作的效率,实现团队之间高效的信息交流、共享和写作,提高整体的安全防御效果赢得网络安全防御主动权,最大限度阻断威胁、降低风险。1.1.2.2 人工智能在网络安全防御中的应用人工智能技术应用可以提升网络安全防御的智能化水平,在网络安全防御中的应用包括以下几个方面:1、智能安全漏洞防御传统的安全漏洞检测主要依靠人工的方式进行,专家依赖性强且耗时长,通过人工智能技术实现自动化漏洞发现与修复,极大提升安全漏防御能力。 安全漏洞发现:可通过机器学习算法分析网络流量、系统日志、攻击特征等多维数据,识别漏洞特征,通过深度学习准确地判断是否存在漏洞。结合神经网络和自然语言处理等人工智能技术,识别并解释代码语法含义以评估风险,分析漏洞利用趋势,缩小代码审计范围,减少开发人员检测和发现漏洞的时间。 安全漏洞修复:由于漏洞类型繁多、漏洞定位困难等因素的存在,修复漏洞需要大量人工参与,自动化漏洞修复技术能够极大提升漏洞修复效能。机器学习算法可以通过分析漏洞特征和历史修复方案,自动学习漏洞修复方法,并为工程师提供修复建议。通过对漏洞的深度分析和模拟测试,自动生成修复代码或提供修复工具,帮助工程师快速修复漏洞,提升漏洞修复效率。2、智能安全态势感知随着网络部署规模复杂化,网络安全情报数据种类和数量激增,对网络安全态势感知提出更高要求。人工智能技术在安全态势感知中的应用,可以提高数据处理效率,增强关联分析能力,自动检测和响应威胁,打造智能安全防御体系,提高网络安全性: 提升海量数据处理效率:人工智能技术可以自动化地收集和处理大量的网络安全威胁情报数据,包括来自安全设备、网络流量、安全事件等来源海量数据,高效地完成数据处理,快速、准确地识别出威胁。 增强威胁数据挖掘能力:通过学习和分析大量网络安全威胁数据,识别出威胁模式和攻击者的行为特征,将多个独立的安全事件进行关联和分析,挖掘潜在关系,多维构建攻击者画像、建立威胁情报库,更全面掌握高级威胁情报。 智能检测和预警:通过对威胁情报数据智能分析,实现自动检测和识别潜在的安全威胁,通过对历史数据的分析和预测,预警未来可能出现的威胁趋势和攻击模式。3、智能安全运营网络安全运营面临诸多挑战,例如安全设备种类繁多、威胁数据量庞大、专业人才短缺以及人工处理效率低下等问题。将人工智能技术与安全运营相结合,能够显著提升安全运营的智能化水平,极大提高处理效率。AISecOps(智能驱动安全运营)是人工智能技术与安全运营的融合,以安全运营目标为导向,以人、流程、技术与数据的融合为基础,面向预防、检测、响应、预测、恢复等网络安全风险控制环节,构建具有高自动化水平的可信任安全智能模型。通过有效纳管企业安全产品,实现模块整合、统一运营、指标量化,精准判断安全事件影响范围,快速指挥调度及响应。人工智能技术应用可以从以下几方面提升安全运营效能: 智能化响应与处置:将威胁模型实践与实时网络流量相关联,通过自然语言处理NLP、语义分析、上下文处理,并结合正则匹配、关联分析和迁移学习等技术,能够准确实现智能分析研判,加速安全策略自动下发提升安全响应速度和效率,减少安全事件的影响范围和损失。 安全运营流程智能化:打造人机智能协同的算法、模型、系统与流程,才能不断地适应高级别的智能化安全运营场景,实现安全运营全流程智能化,包括安全审计、漏洞扫描、合规性检查、安全事件处理等。 智能分析预测与决策:可以通过数据分析和模式识别,预测未来的安全趋势和威胁,。可以为决策者提供重要信息,优化安全运营战略和决策。 自动化生成合规性报告:支持自动生成安全运营报告,满足合规性要求。通过人工智能技术自动化分析整体安全态势,生成多维度、安全运营报告。 打造智能安全防御体系:通过与其他安全设备结合和联动,如防火墙、入侵检测等,实现不同安全防御设备联动调度,打造动态的、智能的安全防御体系。通过持续监控和评估安全防御系统的效果,优化模型和算法,提高智能安全检测的准确度和效率,提高网络安全整体水平。4、智能网络攻击溯源随着网络攻击和数据泄露等威胁不断增加,在网络安全防御中,网络攻击溯源扮演着重要角色,网络攻击溯源结合人工智能技术,能够提供更准确、更智能的网络安全保护。网络攻击溯源通过安全设备告警、日志和流量分析、服务资源异常、蜜罐系统等对网络攻击进行捕获,发现威胁,利用已有的IP定位、恶意样本分析、ID追踪、溯源反制等技术,收集攻击者信息。通过对攻击路径的绘制和攻击者身份信息的归类形成攻击者画像,完成整个网络攻击的溯源。1.1.2.3人工智能在网络安全防御中的挑战1、网络安全场景攻击趋于复杂化,基于已知样本集预测未知难度较大人工智能算法本质是基于样本抽象出特征,进而基于特征表征问题,用于新数据推理判定。但网络安全领域中标注样本少,攻击方式多样化、复杂化,仅基于已知样本构建的人工智能算法模型难以覆盖所有攻击场景。2、算法模型如果不能自适应优化,可能导致无效告警产生通过人工智能算法可以发现更多的安全问题,但不同客户场景业务、网络和资产属性不尽相同,会导致通用模型检测出的告警中存在一定的无效告警或误报,如果算法模型不能自适应优化,需要安全专家重复研判分析,这将大大增加人工成本。3、人工智能算法模型检出告警的可解释性需要关注如果告警的可解释性足够高,安全专家才能从事件描述中了解攻击详情,对威胁进行精准溯源和处置。基于专家规则或IOC检测的告警,解释性较高。但人工智能算法模型自身缺乏透明度,若其检出的告警描述仅呈现如报文大小、概率值等特征原始数值,将很难支撑安全专家进行响应处置。1.1.3Al赋能威胁检测从广义上来说,符号逻辑、规则与专家系统等都在Al的范畴内,那么Al赋能网络安全领域的威胁检测应用可能已有40多年或更长的历史;即使是逻辑回归、支持向量机、贝叶斯等机器学习算法的应用,也在上个世纪90年代就已出现。受限于篇幅,同时也从时效性的角度出发,本节将对近些年来更为流行的Al赋能威胁检测应用的相关技术给出简要介绍。1.1.3.1 恶意代码检测网络空间时刻面临着以“僵木蠕”(僵尸网络、木马、蠕虫)攻击为典型代表的严峻安全威胁,而恶意代码通常是这些攻击的重要载体,包括近些年来在全球范围内广为流行的勒索病毒、挖矿病毒等,也往往由某种恶意代码承载。因此,精准有效的检测恶意代码对于网络安全保障有着不可忽视的作用。由于文件类型和系统平台的多样性,恶意代码也有很多种类,但检测技术上都存在一定的相似性。不失一般性,本小节以最常见的恶意代码类型之二进制PE文件为例,说明AI如何赋能恶意代码检测。从总体上看,经典的检测方法可以分为两大类。基于静态分析的方法:直接对恶意代码本身进行分析,从中提取可用于识别的特征签名(如病毒的特征码等)作为识别的直接依据,也可对属于同一类别的多个恶意代码特征进一步总结出识别的规则。基于动态分析的方法:在虚拟环境中运行恶意代码并监控其行为,如系统调用、文件系统访问、网络传输等,从中找出异常及可能造成危害的行为模式,并作为识别的依据。实际上,这两类方法均可采用不同的实现方式,除了上面所描述的基于特征签名和基于规则的方式外,也都可以采用机器学习、深度学习等AI技术,即基于恶意代码的多维度特征构建智能检测分类模型。相比来说,AI技术的应用能够有效提高检测分类的自动化水平,减少了人工定义检测规则或特征的工作量,而且Al模型可以通过使用新样本进行迭代训练而实现自动更新优化,避免了规则或特征库更新所需的人工投入。1.1.3.2 恶意流检测网络攻击总是需要通过网络流量来承载,如何能高效精准识别这些承载攻击的恶意流量一直是网络安全领域的重要研究问题。随着技术的发展,恶意流量越来越呈现出隐蔽性和多样化的特点,传统的基于特征指纹的检测手段难以达到安全防护的目标,尤其是如今加密流量占比日益增加,更是给恶意流量的检测识别带来了新的挑战。AI技术在恶意流量检测中的应用也很广泛,具体有如下两种典型方式。(1)基于历史流量数据构建异常检测模型。这类方法相对较为简单,但也应用广泛。一方面,可以采用不同的AI技术构建统计基线以用于异常检测,包括面向单数值特征的数值分布区间、正态分布拟合及3。准则等,面向时间序列的ARIMA、指数平滑等,面向多维度特征的One-ClassSVM,自编码器等。另一方面,还可以选择一些不需要预训练而直接使用的异常检测算法,包括孤立森林、ABOD等。(2)针对流量数据提取多维度特征构建基于机器学习的分类检测模型。其中,根据特征来源不同,可分为单包特征、统计特征、包序列特征等。具体来说,一些恶意攻击的特征直接体现在对应的单个报文里,因此可以提取一系列单包特征用于构建分类检测模型,例如HTTP协议头中的URL、refereruser-agent>cookie等字段特征,报文净荷中包含的明文敏感函数调用,加密流量中使用的证书特征等。另一方面,针对单包和流会话的相关统计特征也可用于区分正常流量与特定类型的恶意流量,如信息燧、可见字符占比、参数个数及意义分值、base64编码长度等。此外,流会话中的上下行包大小序列及包时间间隔序列相关特征也广泛用于构建识别加密恶意流量的检测模型中。在完成相应特征提取及特征工程后,通常采用逻辑回归、LGBM>Xgboost等机器学习算法进行建模实现对恶意流量的有效检测分类。(3)针对流量数据直接构建基于深度学习的分类检测模型。类似于恶意代码检测中将二进制PE文件当作灰度图像分类的思想,网络流量数据也可以转换成灰度图像的样式,然后采取CNN等深度学习算法进行建模而无需进行单独的特征计算提取步骤。另一方面,上面所提到的包大小序列和包时间间隔序列也可以采用RNN.LSTM>Transformer等深度学习算法直接进行建模。1.1.3.3 恶意域名检测恶意域名有不同的种类,有的是对应网站包含不良信息或恶意代码,有的是仿冒的钓鱼网站,也有的是DGA算法生成的随机性域名用于建立C&C通信,等等。对于这些不同类型的恶意域名,检测方法与所需要的数据也是不同的。单纯使用域名黑名单的方法无法识别新出现的或未知的恶意域名,而且恶意域名通常也无法使用正则表达式等规则匹配的方式进行精准识别。本小节对一些AI赋能恶意域名检测的常见做法给出简要描述。(1)基于域名字符串的检测方法对于DGA算法生成的恶意域名,或者仿冒的钓鱼网站域名等场景,由于其域名本身包含较为丰富的特征,所以可基于域名字符串提取一系列特征以构建AI模型。因为域名是文本字符串格式的,所以可借鉴采用文本分类中的相关技术,从简单的rgram特征提取,到LSTM>Transformer等深度学习模型的应用,技术细节这里不再赘述。(2)基于域名请求解析记录的检测方法除了域名字符串本身外,针对域名的请求解析记录数据能够为恶意域名的检测判定提供更多的信息。通过对解析记录数据提取多维度特征,包括域名解析的结果、解析请求的时间及IP分布等,基于有监督机器学习算法可以构建更精准的恶意域名检测分类模型。(3)基于网站内容的检测方法有些恶意域名需要结合对应网站的页面内容进行更精准的判定,例如包含不良信息或植入恶意代码的网站、仿冒的钓鱼网站等。通过爬取网页并从中提取更多特征,包括页面的文本内容及图片元素、内嵌的JS代码等,然后构建相应的检测分类模型。1.1.3.4 威胁情报提取威胁情报对于网络安全威胁检测与防护有着非常重要的价值,但是很多原始情报信息存在于非结构化的文本中,比如攻击事件报告、漏洞信息描述等,需要经过提取才能成为更易用的结构化情报,而且由于自然语言的灵活性,通常无法使用基于正则表达式等模板匹配方式完成自动化提取。下面以从漏洞信息中提取有价值的情报场景为例,说明相关Al技术是如何应用的。很多来源的漏洞描述信息是以非结构化文本形式呈现的,包括CVE、ExploitDB、SecurityFocus>SeCUrityTraCker、OpenwallsSecurityFocus等。从这种非结构化文本中提取有价值的威胁情报,如受漏洞影响的软件名称和版本等,面临多项技术挑战:(1)由于软件名称和软件版本等相关情报信息的多样性,基于字典和正则表达式的方案难以实现高精确率和高召回率;(2)漏洞描述信息的非结构化文本经常包含代码,而且其独特的写作风格也使得传统的自然语言处理算法难以驾驭;(3)需要在提取有价值情报的同时排除文本中无关的实体,如不受漏洞影响的软件名称及其版本。鉴于上述原因,通常采用基于深度学习模型的自然语言处理技术来完成威胁情报的自动化提取的。具体来说,首先需要使用命名实体识别模型来识别感兴趣的实体(即期望提取的情报元素),例如受漏洞影响的软件名称及版本,然后使用关系抽取模型将识别出的实体进行配对,例如漏洞可能影响到多个软件的若干版本,则需要将软件名与对应的版本信息配对。其中,上述命名实体识别模型可采用BiLSTMBiGRUBERT、UIE等,上述关系抽取模型可采用HAN、CasReKTPLinkerUIE等。1.1.3.5 敏感信息识别随着互联网的飞速发展,网络成为了信息传播的重要渠道,同时内容安全、信息泄露等问题日益突出。为了避免敏感信息的外泄对个人、企事业单位、甚至国家安全和利益造成的威胁,必须对敏感信息与数据进行严格管控。因此,如何高效精准地识别敏感信息成为一个需要解决的重要问题。敏感信息的表现形式多样,其中最常见的一种就是以文本内容为主的敏感文档。传统的敏感文档识别技术主要基于关键词表与词频统计,将文档中是否出现关键词及出现数量作为主要识别依据。然而,现实存在另一类比较广泛的应用场景却不适用这一方法。在这类场景中,会预先指定一批文档为敏感文档,需要识别与指定文档语义相近的所有文档。注意这些指定文档未必是一般意义上的敏感文档,可能不包含特定的敏感词语,比如内部会议纪要等。针对上述问题,核心关键是计算不同文档之间的相似度,基于与指定文档相似度的高低来判定是否敏感。为了快速计算大量文档间的相似度,可以先采用词嵌入向量、文档嵌入向量等AI技术将一篇文档表示为多维向量,然后使用余弦距离、词移距离等距离度量来作为相似度的表征,再运用聚类方法将所有文档自动聚成不同的分簇,并将与指定敏感文档归为同一分簇的文档标记为敏感,从而实现一次性对大量文档完成标记工作。另一方面,随着社交网络平台的发展,用户发布的信息通常由图片、文本等多种格式组成,仅从文本或图片单一维度进行敏感信息识别是不全面的,而必须采用多模态方法。一种简单而实用的思想是分别针对文本与图像构建相应的敏感信息识别分类模型,然后再在决策层使用融合算法进行最终判定。1.2Al伴生安全1.2.1 概述新技术解决问题的同时会带来安全问题,这是新技术在安全方面的伴生效应。这种伴生效应会产生两方面的安全问题:一是由于新技术的出现,其自身的脆弱性会导致新技术系统出现不稳定或者不安全的情况,这方面的问题是新技术的内生安全问题;另一方面是新技术的自身缺陷可能并不影响自身的运行,但这种缺陷却给其他领域带来问题和风险,这就是新技术的衍生安全问题。人们首先会去享用新技术带来的红利,之后才会注意到新技术伴随的种种网络安全问题,比如先有云计算,后有云计算安全。同样,人工智能作为一项新技术革命,既能赋能安全,又具有伴生安全问题。目前,Al的安全问题伴生效应也会表现在两个方面:一个是Al系统的脆弱性导致自身出现问题,无法达到预设的功能目标,即自身的内生安全。从人工智能内部视角看,人工智能系统和一般信息系统和应用一样,由软硬件系统组成,会存在脆弱性,一旦人工智能系统的脆弱性被恶意分子利用,就可能引发安全事故,还有一种情况是新技术存在着天然的缺陷,比如人工智能依赖于数据与算法,数据的丢失和变形、噪声数据的输入、数据投毒攻击都会对人工智能系统形成严重的干扰。伴生效应的另一个方面是系统的脆弱性被攻击者所利用或不恰当地使用,从而引发其他领域的安全问题。比如,人工智能系统的不可解释性也许不会影响人工智能系统在一般情况下的运行状态,但可能会导致人工智能系统可能出现失控的情况,造成系统可能会不按照人类所预计的或所期望的方式运行,而这种不可预计的情况可能给人类带来威胁。比如,如果一个养老机器人不按照人类期望的方式运动,可能会伤害人类。还有一类具有移动性、破坏力、可自主学习的人工智能系统(比如机器人)有可能从人类为其设定的约束条件中逃逸,进而危及人类安全,这些都是人工智能的衍生安全问题。另外,随着ChatGPT等大模型的广泛使用,某些别有用心的人将其作为违法活动的工具。例如生成虚假新闻、深度合成伪造内容进行诈骗或钓鱼攻击,侵犯他人肖像权、隐私圈,输入的语料和生产的内容也可能涉及知识产权方面的纠纷。Al衍生安全影响Al的合规使用,还涉及人身安全、隐私保护、军事与国家安全、伦理道德和法律规范等一系列与社会治理有关的挑战性问题。1.2.2 Al内生安全人工智能内生安全指AI技术的脆弱性、对数据的依赖性等自身缺陷原因而带来的问题。AI技术近几年的快速发展依赖于深度学习算法、算力和数据。针对AI的威胁在总体上分为三个大方面,即AI模型和算法、数据与AI依托的信息系统,后者指软硬件环境和网络等。AI内生安全涉及多个方面: 人工智能依赖的框架、组件、环境等存在问题 人工智能数据的噪声、不平衡、错误等问题 人工智能算法缺陷问题 人工智能模型的知识产权保护、污染等问题2023年,OwASP发布的机器学习安全风险TOPlO就涵盖诸多方面。ML01:2023对抗住攻击AdversarialAttack当攻击者故意更改输入数据以误导模型时,就会发生对抗性攻击。ML02:2023数据投毒攻击DataPoisoningAttack当攻击者操纵训练数据导致模型以不良方式运行时,就会发生数据投毒攻击。ML03:2023模型反转攻击ModelInversionAttack当攻击者对模型进行逆向工程以从中提取信息时,就会发生模型反转攻击。ML04:2023成员推理攻击MembershipInferenceAttack当攻击者操纵模型的训练数据以使其行为暴露敏感信息时,就会发生成员推理攻击。ML05r2023模型窃取ModelStealing当攻击者获得对模型参数的访问权时,就会发生模型窃取攻击。ML06:2023损坏的组件包CorruptedPackages当攻击者修改或替换系统使用的机器学习库或模型时,就会发生损坏的组件包攻击。ML07:2023迁移学习攻击TransferLearningAttack当攻击者在一个任务上训练模型,然后在另一个任务中对其进行微调,导致结果未按照预期产生,就会发生迁移学习攻击。ML08:2023模型偏斜ModelSkewing当攻击者操纵训练数据的分布,导致模型以不希望的方式运行时,就会发生模型偏斜攻击。ML09:2023输出结果完整性攻击OutputIntegrityAttack当攻击者的目的是为了改变其ML模型的行为或对使用该模型的系统造成损害,从而修改或操纵ML模型的输出结果,就会发生输出结果完整性攻击。ML10:2023神经网络重编程NeuralNetReprogramming当攻击者操纵模型的参数使其以不良的方式运行时,就会发生神经网络重编程攻击。图4OWASP机器学习安全风险TOPlO框架(如TenSOrFlow、Caffe)是开发人工智能系统的基础环境,重要性不言而喻。当前,国际上已经推出了大量的开源人工智能框架和组件,并得到了广泛使用。然而,由于这些框架和组件未经充分安全评测,可能存在漏洞甚至后门等风险。训练后投入使用的模型是机构重要的资产,面临被窃取或污染的风险,需要有知识产权保护和风险防范与检测机制。在算法方面,难以保证算法的正确性是人工智能面临的一大问题。现在的智能算法普遍采用机器学习的方法,直接让系统面对真实可信的数据来进行学习,以生成机器可重复处理的形态,在可靠性、公平性、可解释性、透明性和鲁棒性方面存在安全缺陷。例如,对抗样本就是一种利用算法缺陷实施攻击的技术,自动驾驶汽车的许多安全事故也可归结为由于算法不成熟而导致的。以深度学习为代表的人工智能技术与数据是相辅相成的,数据安全是人工智能安全的关键要素,人工智能系统高度依赖数据获取的正确性。然而,数据正确的假定是不成立的,有多种原因使得获取的数据质量低下。例如,数据的丢失和变形、噪声数据的输入,都会对人工智能系统形成严重的干扰。人工智能在部署后才能应用,可能由于主客观原因导致运行时出现安全问题。下面分布对AI框架、算法、模型、数据和运行五个方面进行说明。1.2.2.1框架安全人工智能算法从设计到实现需要经过很多复杂的过程,许多程序在不同的算法中是可以高度复用的,因此出现了很多深度学习的框架,提供了常用的函数和功能等,供开发者以更简单的方式实现人工智能算法。通过使用深度学习框架,算法人员可以无需关心神经网络和训练过程的实现细节,更多关注应用本身的业务逻辑,目前使用较多的深度学习框架包括TensorFlow.PyTorch.FddleFddle等。此外,算法模型和框架还强依赖于大量三方包,如numpy>PandaS、计算机视觉常用的OPeneV、自然语言处理常用的NLTK等等。因此,一旦这些深度学习框架和三方包中存在漏洞,就会被引入模型,并破坏模型的可用性。例如,CVE公布的CVE-2019-9635漏洞指出TensorFlow1.12.2之前的版本存在“空指针解引用“漏洞,可通过构造特殊GIF文件对系统进行“拒绝服务攻击”。这几年,关于AI框架与组件的漏洞急速提升,各主流平台无一幸免,漏洞类型涵盖缓冲区溢出、CSRF.XSS等。1.2.2.2算法安全算法是人工智能系统的大脑,定义了其智能行为的模式与效力。现在的智能算法普遍采用机器学习的方法,直接让系统面对真实可信的数据来进行学习,以生成机器可重复处理的形态,最经典的当属神经网络与知识图谱。神经网络是通过“输入血出”对来学习已知的因果关系,通过神经网络的隐含层来记录所有已学习过的因果关系经过综合评定后所得的普适条件,神经网络在很多问题上均能取得十分优异的表现,但是神经网络为什么能取得如此好的效果,神经网络中的多个隐藏层分别代表什么含义,神经元的参数等是否具有具体的意义?这些问题目前都很难回答,神经网络如同是一个黑盒子,具有不可解释性。可解释性要求强的场景中,神经网络造成的失误则会造成巨大的损失。例如,在医学场景中,如果让智能算法自动识别某患者是否患病,神经网络不具有可解释性,仅会给出患者是否患病的分类结果;如果算法错误,则影响很大,在这样的场景中,不论是病人还是医生都希望这样的智能算法能给出解释,即是什么症状及检查结果让算法识别为患病。综合来说,以机器学习为代表的算法自身在可靠性、公平性、可解释性、透明性和鲁棒性方面存在安全缺陷,决策过程如同黑盒不可预见。从外部威胁角度来看,对抗样本攻击、数据