当前位置:   article > 正文

浅析人工智能技术在网络安全领域中的应用

浅析人工智能技术在网络安全领域中的应用

文 | 绿盟科技集团股份有限公司 顾杜娟 杨鑫宜 王星凯 刘文懋 叶晓虎

企业数字化转型浪潮的来临促使人工智能技术得到了企业的普遍关注和重视。人工智能技术发展至今已经广泛应用到图像识别、自然语言处理等领域,并取得了重大的突破。随着网络空间逐渐成为数字经济发展的基石,网络空间的攻击面也不断地延伸和拓展,网络空间攻防双方信息的不对称性现象愈发明显。伴随着攻防对抗态势的升级,人工智能技术成为网络安全技术发展的必然趋势之一。近年来,越来越多的企业和组织将人工智能技术与网络安全技术进行深度协同,人工智能技术在网络安全领域的应用已经成为安全能力落地、发挥网络安全防御有效性和对抗高级持续性威胁(Advanced Persistent Threat,APT)等高级威胁最直接、最关键的环节之一。面对日趋白热化、持续化的网络攻防对抗环境,如何将人工智能技术赋能网络安全面临着诸多挑战。

最近 ChatGPT 因广泛应用先进的人工智能技术而备受关注,人工智能技术在传统网络安全领域一直被视为一把“双刃剑”。安全厂家可以使用人工智能驱动的安全工具和产品,自动化、智能化地应对大量网络安全攻击事件。但黑客也可以利用同样的技术开发智能恶意软件程序并发起隐形攻击。本文将介绍人工智能在网络攻击中的应用、人工智能技术在网络安全防御中的应用,以及 ChatGPT 这一备受瞩目的大语言模型(Large Language Models,LLMs)在网络攻防中的应用、自身风险及防御策略。人工智能技术已经被全面应用于网络空间安全领域,在应对数字化转型过程中的各类安全难题上发挥着巨大潜力。

一、人工智能在网络攻击中的应用

人工智能技术的发展促使攻击者引入机器学习、深度学习等方法,以提高网络攻击的自动化、智能化和武器化,近一半提高了攻击数量和复杂度,并加大了攻击被检测到的难度。人工智能技术从三个阶段助力网络攻击:攻击准备、攻击实施、攻击善后。

(一)攻击准备

网络攻击准备旨在侦查、研究攻击目标的敏感信息和漏洞,为后续设计攻击策略提供信息依据和参考。在攻击准备中,攻击者引入机器学习和深度学习技术实现以下几个任务内容:

第一,口令破解。口令是防范攻击者入侵目标网络的一道重要防线,一旦口令破解成功,攻击者就可以获取数据库的管理员权限和用户账号内的个人信息。为了完成口令破解,攻击者常常使用人工智能技术如 PassGAN、GENPass 等口令破解模型,它们基于生成对抗网络框架和长短期记忆网络 LSTM、残差网络 ResNet 等神经网络,自动学习口令分布,并能够在几秒内破解不超过六位字符的口令,同时生成丰富多样的口令。

第二,文本验证码破解。为了防止 DDoS 攻击,谷歌、百度、微软在内的很多企业在网页中引入了文本 CAPTCHA 自动化地区分程序和人类。基于字符分割的破解方案在面对 CAPTCHA 中越来越复杂和扭曲的字符时越发吃力,因此,深度学习的引入提高了文本验证码破解的通用性和有效性。例如,研究人员将生成对抗网络自动生成的文本验证码作为训练数据,再基于迁移学习微调文本识别模型,不仅避免了收集大量真实验证码样本,在效果上也能够破解 33 种文本 CAPTCHA 方案。

第三,钓鱼攻击和垃圾邮件生成。马尔可夫模型、长短期记忆网络 LSTM、自动编码器 AE、生成对抗网络 GANs 以及大规模语言模型 LLMs 等人工智能技术可以作为自动生成邮件的有效工具。对于 Transformer、BERT、GPT 生成式大模型来说,制造钓鱼邮件和垃圾邮件的成本很低,只需给出关键提示词,这些模型就可以在秒级内生成大量逼真、切题的鱼叉式钓鱼邮件和垃圾邮件,继而成为钓鱼攻击和拒绝服务攻击的跳板。

第四,网络资产自动探测。网络资产探测旨在掌握目标网络的设备属性、应用属性等资产信息,一般包括操作系统探测、端口探测、IP 存活性探测、流量采集等。朴素贝叶斯分类器、支持向量机、决策树、随机森林、卷积神经网络等人工智能算法在网络资产指纹识别和特征匹配方面已经得到了应用,基于网络流量指纹、Web 指纹等类型的指纹数据,被训练和优化过的人工智能模型可以实现被动和主动的设备识别。

第五,漏洞挖掘。漏洞挖掘旨在发现和分析软件、系统生命周期中存在的安全缺陷。人工智能技术基于漏洞数据库中提取的漏洞知识和特征,实现漏洞自动挖掘和预测。支持向量机、逻辑回归、决策树、随机森林等机器学习算法,以及卷积神经网络、循环神经网络、长短期记忆网络、图神经网络、生成对抗网络等常见的深度学习模型都已经在漏洞挖掘领域得到了广泛研究。这些算法基于软件度量、代码属性、文本语法语义特征,通过合理的数据处理、数据表征、模型构造与优化,能够自动地在智能合约、物联网、浏览器、二进制程序等目标上实现漏洞挖掘,结合使用人工智能漏洞挖掘技术和传统程序分析技术可以进一步提高漏洞挖掘的性能和效果。

(二)攻击实施

在获取目标关键信息和发现有效漏洞后,攻击者就会实施漏洞利用、入侵、渗透等攻击行为。人工智能在以下几个方面赋能攻击实施:

第一,恶意软件生成。人工智能技术从协助恶意软件逃避检测、自主适应执行环境、生成恶意软件变体等多方面赋能恶意软件。Swizzor 恶意软件家族中已被发现的二进制样本高达数百万个,恶意软件生成速度之快正是借助机器学习算法自动生成恶意软件变体的能力,生成的变体在保有与之前版本相似特征的同时增加了攻击的隐蔽性,极大地推动了恶意软件的传播。

第二,漏洞利用。公开的安全漏洞报告、系统漏洞补丁、前期挖掘到的漏洞信息均可以作为漏洞利用的数据源。而人工智能中的自然语言处理可以从中提取漏洞的特征信息,并自动化生成漏洞利用程序,从而引导后续的漏洞定位和攻击路径搜索等过程。例如,SemFuzz 使用 NLP 提取 CVE 报告、Linux git 日志中的漏洞文本信息来自动生成 PoC exploits,同时发掘了未公开的漏洞。

第三,自动渗透测试工具。自动化渗透测试工具可以通过一键式完成渗透测试全流程,包括漏洞信息收集、漏洞扫描、漏洞分析、漏洞利用、后渗透攻击以及报告生成等。例如,DeepExploit框架在 Metasploit 基础上使用 A3C 强化学习算法提升渗透测试的效率。而 Shennina 框架则使用人工智能技术实现了全自动主机渗透,其中人工智能负责自动识别可用的渗透方案、提供漏洞利用技术以及执行渗透测试等任务。

(三)攻击善后

攻击善后的重要目标之一在于模糊、隐藏攻击行为的存在与攻击意图,以提高攻击隐蔽性,降低被检测的风险。

第一,流量模仿。在攻击过程中产生的恶意流量经过检测和分析会暴露攻击信息,因此自适应地模仿正常流量是掩盖网络攻击的重要方式。现有的人工智能流量模仿方案大多基于生成对抗网络及其变体 WGAN、WGAN-GP 等。GANs 通过学习正常流量的特征分布和表现,模仿生成的流量能够显著降低现有入侵检测系统的效果,极大地增强了恶意攻击的隐蔽性。

第二,攻击意图混淆和掩盖。攻击意图的掩盖是恶意软件的一个重要目标,运用机器学习和深度学习技术能够有效提高恶意代码的生存能力和免杀效果。例如,IBM 提出的恶意软件 DeepLocker 嵌入了深度神经网络 DNN,识别到攻击目标后实施针对性攻击,在隐藏攻击意图的同时增加了攻击隐蔽性。除此之外,基于 GAN、强化学习框架生成的静态可执行文件能够成功绕过恶意软件检测机制。

二、人工智能技术在网络安全防御中的应用

由于攻击者会利用大数据分析、自动化工具等先进技术来提升恶意攻击的效率和隐蔽性,倒逼网络安全防御突破传统网络安全防御阶段。研究人员逐渐运用人工智能技术直接或间接地提高网络安全防御效率,在实际攻防实战中快速地定位威胁攻击,提升网络安全防御的自动化、智能化水平。目前,人工智能技术在网络安全防御中的应用包括以下几个方面:

(一)攻击检测

第一,网络入侵检测。为了提升网络入侵检测的性能,研究人员正在逐渐将深度学习网络,如卷积神经网络 CNN、循环神经网络 RNN,以及对抗神经网络和强化学习等技术应用到网络入侵检测中。虽然这些技术已经取得了初步成果,但在大型动态系统中有效地实现基于人工智能技术的网络入侵检测依旧面临困难。

第二,垃圾邮件检测。基于人工智能技术的垃圾邮件检测方案已经发展多年。目前,谷歌表示基于人工智能技术的 Gmail 垃圾邮件识别率高达 99.9%。由于垃圾邮件的数量巨大,0.1% 的垃圾邮件依然会给用户带来很多问题。因此,如何采用新的人工智能技术不断改善垃圾邮件检测技术依旧值得深入研究。

第三,恶意软件识别。目前大多数传统基于机器学习的恶意软件检测方法属于监督式学习,这些方法容易被攻击者绕过。研究人员通过利用强化学习技术提出了 DQEAF 框架,该框架通过不断与恶意软件样本进行交互来训练人工智能代理,利用强化学习方法来规避反恶意软件引擎,以突显近年来基于监督学习的恶意软件检测模型的弱点。

第四,加密流量检测。随着 TLS 加密技术在互联网上的普及,如何通过不解密的方式直接从海量的加密流量中检测出恶意流量是学术界和工业界非常关注的问题。从技术发展趋势来看,下一代技术是基于大数据的统计特征,即在大量数据上进行统计,基于统计的结论提取能够描述样本分布本质原因的特征,这个过程将由擅长分析数据统计规律的人工智能来实现。但是在流量识别领域,人工智能尚处于起步阶段,暂时不适合做最后一步的判定,而是适合数据处理和辅助决策,基于人工智能的加密流量检测将会是长期的研究课题。

(二)攻击防范

第一,漏洞修复。机器学习和深度学习算法可以实现漏洞自动化修复,及时弥补系统缺陷。GenProg 使用遗传编程修补程序源代码,DeepRepair 在此基础上使用深度学习生成修复方案。由于漏洞类型繁多、漏洞定位困难等因素的存在,目前人工智能修复漏洞仍需要人工参与和研判。可靠的全自动化漏洞修复技术需要进一步的研究投入。

第二,攻击预测与拦截。通过学习已知漏洞的潜在特征,人工智能具备预测零日漏洞、未公开漏洞等未知威胁的能力。Check Point 的 Quantum Titan 平台利用深度学习技术防范网络钓鱼攻击和域名系统漏洞,相较于传统的签名防御技术实现了五倍以上的 DNS 攻击拦截率和四倍以上的零日钓鱼攻击拦截率。Darktrace 推出的 Antigena 人工智能产品检测网络中的访问行为、邮件传输、云端动态等活动中存在的异常行为和漏洞,及时自动阻断并拦截异常连接和操作,实现了自主响应网络攻击威胁。

(三)安全运营

基于人工智能在网络攻击和防御中的应用,进一步打造智能化、自动化的网络安全运营体系。

AISecOps(智能驱动安全运营)平台是安全运营与人工智能技术的融合,提供自动化异常行为分析、自适应防御策略生成、告警评估和攻击研判等功能。目前 Splunk、Broadcom 等企业都在重点布局相关技术。AISecOps 技术内涵可概括为:AISecOps 技术以安全运营目标为导向,以人、流程、技术与数据的融合为基础,面向预防、检测、响应、预测、恢复等网络安全风险控制、攻防对抗关键环节,构建具有高自动化水平的可信任安全智能模型,以辅助甚至代替人提供各类安全运营服务。未来,在 AISecOps 技术自动化水平提升过程中,需要打造人机智能协同的算法、模型、系统与流程,才能不断地适应高级别的自动化安全运营场景。

三、大语言模型在网络安全中的应用

最近 ChatGPT 因广泛应用先进的人工智能技术而备受关注,而让 ChatGPT 爆火的大规模语言模型(Large Language Models,LLMs)也引起网络安全界的高度关注,人们关注人工智能生成的内容工具所产生的影响,尤其是对网络安全的影响。人们担心,这些工具是否可以用于网络攻击或者防护?又是否暗藏新的网络安全隐患?

(一)大语言模型应用攻击和防御

根据现有研究资料和实践案例,LLMs 作为一种强大的人工智能技术,其在传统网络安全领域的应用既包括攻击性的应用也包括防御性的应用。

第一,LLMs 被应用于网络攻击。LLMs 的出现降低了攻击门槛,即便是没有太多攻防经验的攻击者,也可以通过和 LLMs 进行对话,可以更容易地发起多项网络攻击任务,如钓鱼邮件生成、撞库攻击、恶意代码生成、漏洞利用、渗透攻击等。LLMs 也被用于生成假新闻,散播不实信息,引发社会混乱或舆论控制。

第二,LLMs 被应用于网络防御。防御者可以借助 LLMs 优化攻击流量分析、恶意代码逆向分析等任务,也可以使用 LLMs 进行自动化响应编排、检测规则编写或辅助安全事件处置。LLMs 利用迁移学习微调各类攻击场景,以一个大模型检测各类型网络攻击,并与传统安全设备整合,助力传统安全产品革命性升级。

第三,LLMs 被应用于网络安全运营。LLMs 具备辅助建设网络安全运营体系的能力,能够承担安全运营体系的部分子功能,如构建安全运营知识库、担任人工智能技术客服或作战室管家、指导安全合规体系建设以及对各类制度文档进行自动合规迭代。微软提出利用基于 ChatGPT 的Security Copilot 进行辅助安全运营,并与微软拥有65万亿个网络安全威胁的安全模型库相结合使用,为企业、个人用户提供网络安全、恶意代码防护、隐私合规监控等自动化生成式人工智能服务。

(二)大语言模型自身风险与防御

LLMs 技术应用于网络攻防的同时,也带来了一系列新的安全风险。无论是作为攻击武器还是防御工具,LLMs 的引入都会因其自身脆弱性和自身面临的安全威胁给使用者带来额外的风险。

1. 可解释性不足导致的风险。现有研究尚无法清晰解释深度学习模型内部结构、神经元、参数的含义。透明性和可解释性的缺乏使得人们难以界定人工智能在网络攻防中的决策依据,也导致面对人工智能安全威胁难以有效地对症下药。

2. 内在脆弱性导致人工智能易受风险威胁。人工智能自身内在的脆弱性导致其易遭受到多种攻击,包括但不限于对抗样本、后门攻击、对抗重编程、图像缩放攻击等。这些攻击可能会劣化模型性能、影响模型决策,严重时会引发人工智能系统崩溃。

3. 隐私泄露风险进一步增大。除了数据滥用、数据违规收集引起的隐私泄露风险外,人工智能算法还面临着成员推断攻击、模型反演、模型窃取等新型隐私窃取风险,数据信息、模型信息失窃的可能性增大。

4. 算法框架和开源基础库存在漏洞。常见的开源深度学习框架及其第三方 SDK 中包含着多种漏洞,其中作为主流框架的 TensorFlow 被发现在接口、学习算法、编译、部署和安装中都存在漏洞,利用这些漏洞将导致逃逸攻击、拒绝服务攻击、堆溢出攻击等威胁。

对 LLMs 上述风险,可以采取以下防御措施提高人工智能系统的安全性:

1. 输入和输出过滤。可以设置过滤器,阻止 LLMs 模型生成或者接受某些类型的输入或者输出,比如有害的、冒犯性的或者不适当的内容。检测入模数据中的异常数据和离群值,丢弃或转化异常数据,避免影响模型效果。

2. 透明度和解释性。提供模型的工作原理和透明可审计的决策过程,以便用户能够理解和质疑模型的输出

3. 模型安全检测和防御。针对人工智能算法可能面临的投毒攻击、后门攻击等风险,设置基于特征压缩、局部本征维数等检测方案,同时采取对抗训练、数据增强等防御策略,保障模型和算法的安全。

4. 检测和修复框架漏洞。基于开源漏洞信息和模糊测试、深度学习等技术扫描框架中潜在的安全漏洞,及时修复框架和第三方库中的漏洞。

5. 模型知识产权维护。限制模型访问频率一定程度上可以缓解模型窃取攻击,而模型水印、指纹、签名技术可以识别和验证可疑模型是否为窃取模型,从而保障模型知识产权。

LLMs 技术的使用应该在持续的监督和调整下进行,以便及时发现和纠正问题。此外,以上防御措施的实施需要考虑到伦理、法律和社会因素,以确保新人工智能技术的使用是可靠和可持续的。

四、结 语

随着人工智能技术与网络安全攻防的融合,网络安全领域正在全面、深刻地改变。恶意攻击者不断地向着规模化、组织化、军事化,攻击技术的自动化、智能化、武器化的方向发展。如何基于人工智能技术与攻击者进行安全对抗,保障网络安全,愈发成为网络空间中攻防双方角力的重点。大语言模型技术将进一步推动网络安全攻防的变革。虽然目前相关大语言模型技术在网络安全领域的应用尚未成熟,存在诸多挑战。但是谁能抢先找到相关技术与网络安全攻防的最佳结合点,就会掌握在网络安全攻防博弈的主动权。因此,推动人工智能技术在网络安全攻防场景中不断走向实际应用,提升网络防御能力,对于网络安全智能不断走向成熟具有重大意义。

(本文刊登于《中国信息安全》杂志2023年第5期)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/685722
推荐阅读
相关标签
  

闽ICP备14008679号