人工智能在安全领域的应用
2018-12-21张滨
张滨
(中国移动通信集团公司信息安全管理与运行中心,北京 100053)
当前,全球科技革命和产业革命方兴未艾,新技术行业融合创新不断,在移动互联网、大数据、云计算、物联网等新理论新技术以及社会发展相关的强烈需求的共同驱动下,人工智能(Artificial Intelligence,AI)加速发展,逐渐成为了产业革命和行业融合的关键技术。人工智能可以通过对数据的采集、分析和挖掘,形成有价值的信息和知识模型,实现对人类智能行为的模拟,具备一定环境下的自适应特性和学习能力。人工智能的要素一般包括数据、模型、运算力、应用场景几个方面。基于以上几种要素的不断发展进步,逐渐演化并形成了若干人工智能关键技术,包括机器学习、知识图谱、自然语言处理、计算机视觉、生物特征识别等。
随着人工智能相关学科的发展,理论建模、技术创新、软硬件发展等整体推进,各类人工智能应用能够大幅度提升智能制造水平、社会智能水平,推动我国制造强国和网络强国建设,推动社会各领域从数字化、网络化向智能化加速跃升,从而深刻改变甚至颠覆现有人类社会的生产生活方式。
然而,人工智能的发展和应用给信息安全领域带来了希望和挑战。一方面人工智能在信息安全领域的应用能够显著提升安全防护能力,另一方面人工智能自身也存在着数据安全、对抗欺骗、隐私保护、数据爆炸、动态环境适应和数据的可靠性等方面的安全问题。与此同时,人工智能技术、平台等也存在安全风险,会严重影响人工智能在各个应用领域的健康发展。本文分析了当前信息安全领域对人工智能的需求以及相关应用场景,分析了人工智能面临的安全挑战,提出了人工智能安全应用及安全防护建议,旨在推动信息通信及网络信息安全行业对人工智能带来的安全挑战达成充分认识,促进人工智能在行业的安全、可靠、可控发展。
1 安全领域的应用需求
1.1 网络安全方面
应用人工智能可以从海量网络数据、多样的安全攻击手段中快速检测出网络攻击并能依据网络环境变化进行自适应安全防御,人工智能在网络安全领域的优势主要包括大幅提升安全监测的精准度。网络流量规模巨大,安全设备及系统产生大量日志等重要安全信息,应用人工智能技术可以解决大规模数据处理分析、精准识别网络攻击、减少安全误报等安全挑战。及时发现复杂的攻击行为。复杂的网络攻击中,攻击者往往会采用各种逃避手段,将常见的攻击报文伪装成正常报文,避免被安全设备发现。基于人工智能技术,结合应用场景能够识别异常的网络通信,发现复杂的网络攻击行为。人工智能在网络安全方面有如下应用。
(1)网络入侵检测。收集网络流量样本、安全日志、系统日志等重要数据,可以利用贝叶斯方法、神经网络、决策树等人工智能技术,实时检测溢出攻击、Web攻击、木马、蠕虫等多种网络攻击行为,解决常见基于规则匹配的入侵检测方法存在的误报多、准确率低的问题,大幅提升网络入侵检测准确率与可用性。
(2)网络安全态势感知。收集安全领域不同设备产生的结构不一,而又相互关联的安全数据,利用人工智能常见算法进行关联、分析,能够评估网络设备运行状况、网络行为以及用户行为等因素所构成的整个网络的当前状态和变化趋势,实时地感知和预判网络基础设施面临的威胁,达到动态监测以及指导决策的目标。
(3)恶意代码检测。传统恶意代码检测通常采用各种代码匹配的方式进行,而恶意代码传播过程中会通过各种变形来躲避查杀,导致检测中的误报和漏报问题。另外,恶意代码监测要获得恶意代码样本后进行人工分析、提取特征,然后才能进行检测、查杀,整个过程对人员安全技术水平要求极高且具有明显的滞后性。使用AI技术进行恶意代码检测,特别是将二进制文件以灰度图像的形式表示,可利用图像中的纹理特征对恶意代码进行聚类。通过分析恶意代码图像、恶意文件头个数等信息,使用决策树、随机森林等AI算法能够准确发现恶意代码。
1.2 业务安全方面
当前,针对业务的攻击方式已日趋智能化,并不断衍生出各种各样的灰色攻击方式,常见的包括恶意秒杀、恶意刷信用、薅羊毛攻击等,采用人工智能技术能够有效降低业务安全风险:及时发现业务滥用。应用人工智能技术对用户正常行为模式建立业务模型,识别常见的业务攻击类型,形成业务防护手段。开展用户画像。基于用户在行为、习惯、喜好、社交等多方面特征,能够对用户进行画像,并对用户进行分类,有助于识别正常用户、受控恶意用户等,从而实现基于用户分类进行业务管控。人工智能在业务安全方面有如下应用。
(1)灰黑产行为识别。基于账户、设备、网络环境、操作、行为、用户计费信息等数据,使用常见监督式等人工智能技术开展用户业务使用行为分析,可以发现常见的灰黑产的业务攻击情况,如通过批量注册用户实施各类薅羊毛行为。
(2)业务风控。随着业务日益复杂化、多样化,面对大规模的业务数据,服务提供商针对每一项业务进行业务风控面临着极大挑战。基于用户行为、习惯、喜好、社交等数据,使用人工智能技术为用户进行智能画像将用户进行分类,同时,不同行业、不同应用场景可以共享、优化用户分类信息,达到复杂数据下进行自动建模与分析,建立精准的用户评估与业务风控体系。
1.3 信息安全方面
在信息安全领域,常常需要开展自然语言处理、图像识别等工作,人工智能在这些领域具有成熟的算法、成熟的应用:多媒体识别能力。基于人工智能技术的文本、图片、音频、视频等内容识别算法已经在众多行业拥有成熟的应用,识别准确率、效率等远高于传统技术。自动模型训练。基于样本数据,应用人工智能技术能自动生成判定规则/模型,可以进行病毒样本、恶意URL、钓鱼网站等领域的分析。人工智能在不良信息管控方面有如下应用。
(1)多媒体内容识别。采用基于人工智能技术来识别暴恐音视频、情色图片识别等多媒体内容,同时辅助人工审核的方式能够完美解决内容安全问题。在多媒体内容机器识别领域,一般采用深度学习技术不断地训练海量的数据,抽取目标特征,最后达到识别特定目标的目的。基于人工智能的多媒体识别技术可应用在不良网站识别、骚扰电话识别、垃圾短/彩信识别等领域。
(2)恶意网站识别。一方面,可以应用人工智能技术对网络流量历史数据进行分析与识别,建立正常通信模型,基于模型识别非正常的网络访问;另一方面,可以利用递归神经网络模型来检测访问的URL,同时使用向量编码、分词序列等技术来解析URL,从而识别钓鱼网站URL。
2 人工智能安全应用实践
2.1 网络安全应用
(1)在恶意URL识别方面。针对现网中冒充10086、银行的钓鱼网站,以及包含病毒、恶意软件的网页链接等恶意URL链接,可利用人工智能分析技术、内容分析来自动化分析URL及网页内容;同时,面对已确认的恶意URL,通过关联分析,溯源黑产,进一步挖掘恶意URL链接。目前通过人工智能分析,每天挖掘出仿冒建行、工行、农行、邮储等各行业的潜在钓鱼网站超过2 100个,提升了20%的查全率,基于域名注册信息的聚类分析方法可推广使用,通过识别恶意网页链接,能够避免用户访问,从而避免经济损失。
(2)在网络安全监控与态势感知方面。实时监控中国移动现网中网络设备和安全设备的状态,利用人工智能技术,对受攻击情况、攻击来源以及易受到攻击服务进行建模分析,实现攻击的主动发现、精准检测和自适应防护。主要包括僵尸网络主控C&C端主动发现、入侵攻击精准检测、自适应攻击防护等具体应用领域。能够提前主动发现超过30%的攻击手段并进行主动防御,同时能够提升攻击检测精准度。
2.2 业务安全应用
(1)在物联网卡监控应用方面。针对中国移动物联网卡在发放、售卖、使用过程中出现的滥用、DDoS攻击、发布违规信息等问题,基于人工智能的物联网卡监控利用位置数据、日志数据、账单数据等进行管理风险、业务风险、内容风险分析,对涉嫌违规物联网卡进行分级管控,对物联网卡安全进行指标预警等。能够提高物联网卡识别准确率到90%以上,相关外部投诉比例同比下降50%。
(2) 灰黑产行为识别应用方面。中国移动的流量、话费促销活动,常常被非法的“黑卡用户”批量获取,并将抢获的奖励在淘宝等平台销售牟利,而普通用户则无法获取相应的奖励。针对以上灰产场景,从用户的业务日志、上网日志、计费信息等多个渠道对用户数据进行分析,达到准确找出“黑卡用户”并对其进行封杀的目的。利用人工智能分析技术,黑卡用户的查找准确率达到99%,促销信息被普通用户获取的比例达到90%以上。
(3)业务风险防控方面。针对互联网业务中的各类业务风险,如登录注册环节的扫号拖库撞库、垃圾注册、短信轰炸、账号盗用获取利益等。通过结合大数据实时计算与深度学习技术,进行风险事前预警、事中拦截、风控数据的事后溯源与黑产团伙分析,从而做到风险事件的全链路管控。人工智能技术的引入可实现业务风险的自动化识别,减少企业的损失。
2.3 信息安全应用
(1)通信信息诈骗治理方面。中国移动开展了基于“场景式/剧情式”的电信欺诈联动分析治理,通过各类诈骗场景及号码行为分析,研究形成针对多种诈骗场景的分析模型,进而挖掘识别疑似诈骗事件。目前已建设并持续完善“国际拦截、网间联动+封堵、网内严打”的诈骗电话防控体系,仅国际诈骗电话月均拦截量达906万余次,网间虚假主叫拦截量达3 600余万次。
(2)垃圾短信治理方面。中国移动采用指纹识别技术开展垃圾短信自动识别,使用人工智能文本分类等技术,自动识别广告推广类、色情类等文本信息,以解决现有文本类垃圾变形多、更新快、扩散广的问题。目前,采用文本机器学习和自动化识别技术缩短了识别垃圾短信的耗时,月均减少垃圾短信发送量约8 500万条。
(3)骚扰诈骗电话语音自动识别方面。开展了基于语音自动分析的骚扰诈骗电话识别,使用相似音频模糊识别技术,对疑似骚扰诈骗通话进行自动化分析,实施拦截骚扰诈骗电话。将语音自动识别技术应用到骚扰诈骗电话中,能够提升骚扰诈骗电话识别及拦截能力,间接减少用户的经济损失。
3 人工智能安全风险分析
人工智能风险分析如图1所示,由系统层、算法层及应用层构成。系统层包括数据平台、云平台、存储硬件、存储数据等基础设施以及深度学习框架Tensorflow、Caffe、Mxnet等;人工智能算法能力层包括语音识别、图像识别故障异常检测等算法能力,深度学习、强化学习、多任务学习等深度学习算法;最上层为人工智能应用层,主要包括人工智能的典型应用,如机器人、无人机、智慧家庭、精准营销以及之前提到的人工智能安全应用实践中的应用等。
图1 人工智能风险分析图
3.1 系统安全风险
人工智能应用与算法本身运行在通用的各种IT系统之上,因此系统安全是人工智能安全的基础。在底层系统存在安全隐患的情况下,一旦被攻陷上层人工智能应用的安全会受到极大影响。系统安全风险包括基础安全风险与框架安全风险。
基础安全风险包括基础设施安全风险、物理/硬件安全风险、数据安全风险、云平台漏洞以及大数据平台漏洞等。框架安全风险包括软件漏洞、软件权限被控制以及端口与服务安全风险。
目前大部分AI系统是在深度学习框架基础上实现,主流的深度学习系统框架非常多,包括TensorFlow、Torch以及Caffe等。深度学习框架的使用可以让应用开发人员无需关心神经元网络分层以及培训分类的实现细节,更多关注应用本身的业务逻辑。开发人员可以在框架上直接构建自己的神经元网络模型,并利用框架提供的接口对模型进行训练。深度学习框架掩盖了它所使用的组件依赖,同时也隐藏了系统的复杂程度。每种深度学习框架又都是实现在众多基础库和组件之上,很多深度学习框架里还包括图像处理、矩阵计算、数据处理、GPU加速等功能。
3.2 算法安全风险
人工智能算法能力层包括深度学习、强化学习等多种算法以及基于以上算法形成的语音、图像等识别能力,该层面临的安全风险包括如下。
(1)非受控算法风险:即人工智能算法演进失控,甚至走向预期相反方向,可能引发伦理道德问题。
(2)AI对抗算法风险:根据人工智能算法能力,针对性的训练出对抗算法,来规避原有算法能力,常用于人工智能防御。
(3)恶意样本注入:攻击者利用样本进行逃逸攻击,使原有识别模型失效,如攻击自动驾驶汽车系统,将停车标志识别为“通行”或其它标志,可能导致交通事故,而把支票上的数字识别出错则会直接带来经济损失。
(4)算法自身缺陷:因算法能力无法获取全局最优解。
3.3 应用层安全风险
人工智能可以提供的应用日益增长,也产生许多安全风险。安全风险包括如下。
(1) 系统失控:该风险由非受控算法导致,可能造成人工智能误操作。
(2)DoS攻击/死机:该风险可能造成人工智能能力中断,如黑客对于语音识别系统大量访问,则普通用户无法获取到语音识别数据。
(3) 系统被控:该风险由软件漏洞、弱口令等原因造成,可能造成黑客利用人工智能设备进行攻击,例如智能家电如冰箱和烤面包箱被僵尸网络控制,进行DDoS攻击或者挖矿。
4 人工智能安全管控建议
4.1 系统安全防护措施
针对上述AI系统软件安全漏洞导致安全风险,可以考虑以下安全措施。
(1) 使用最新版本的软件和第三方库,并及时更新补丁。
(2) 编程采用安全的函数,避免函数使用不当产生的安全漏洞。
(3)采用专业软件测试工具;聘请专门的软件安全测试专家或团队对AI系统进行测试,及时发现可能存在的安全漏洞。
(4)加强AI模型的保护,采用高强度的加密算法对AI模型进行保护;或者采用其它更高级的数据保护机制进行保护,如SGX等。
(5)对AI模型进行剪枝来防御后面攻击:通过剪除原模型的神经元,在保证正常功能一致的情况下,可以减少后门神经元起作用的可能性。利用细粒度的剪枝方法,可以去除组成后门的神经元,防御后门攻击。
4.2 算法安全防护措施
针对上述AI算法模型的安全威胁,可以加强AI算法模型训练与测试,使其构造对抗样本的难度加大,从而使得AI算法模型更加健壮。具体地说,可以尝试以下方法。
(1)数据清洗。数据清洗主要是对恶意的训练数据进行筛选移除;对训练数据和模型进行严格检查,尽量使用安全可控的模型和数据。
(2)提高AI系统本身的安全性,如增加反调试等,防止逆向攻击。
(3)对抗训练。对抗训练可通过在训练时加入对抗样本的方式仿真测试时可能的数据分本,降低模型对对抗样本识别的错误率。
(4)防御蒸馏。针对AI算法模型的安全威胁,学者提出如防御蒸馏、对抗训练、输入重构等防御技术对抗闪避攻击。防御蒸馏通过对多个DNN进行串联,将前一个DNN生成的分类结果被用于训练后一个DNN,降低AI模型对输入扰动的敏感度,提高AI模型稳定性。
(5)输入重构方法。则是通过对输入样本加噪音、去噪音等方法进行变形,这种变形不会影响模型正常分类,但能够一定程度上抵抗对抗样本。
4.3 应用安全防护措施
针对系统失控、DoS/死机、系统被控等安全风险,应用层在满足数据安全、终端/应用物理安全的同时,还应需具备如下安全能力。
(1)应用终端安全:应用应遵循“最小权限原则”,保持权限和服务的最小化运行,采用访问控制、身份认证、权限限制等机制提高系统的可靠性和完整性,缩小攻击面;其次,应严格限制调试进程在系统中的权限,提高调试功能可控性;另外,应尽量避免设备缺省密码固化等硬编码问题。
(2)业务安全:可对业务行为、状态进行监测,避免业务超限;可对威胁情报交换、共享,为攻击检测、安全防护、联动处置、信息共享提供一个决策信息平台;对部分业务应具备分级管控的能力、具备金库机制。
(3)日志审计:应保留系统重要日志,并具备对系统日志进行日志审计能力。
5 总结
人工智能在全球呈现出加速发展的态势,在很多领域已经展示出巨大的应用前景,人工智能已经成为国际竞争的新焦点、经济发展的新引擎。随着万物互联、云计算等技术发展,人工智能应用数据规模、计算能力将爆发式增长,人工智能也会对社会各方面深度介入并改变甚至颠覆人类现存生产工作和交往方式,世界也将走向人工智能时代。
在人工智能快速发展的同时,应对清醒地认识到人工智能的首要问题是安全问题,人工智能发展的安全性将给社会带来极大挑战。人工智能技术在造福人类的同时也可能加大技术对社会的危害性,基于人工智能的安全对抗也会是长久的过程。因此,产业各方应对人工智能安全性有统一的认识,以法律和伦理为界,加强在人工智能技术研究与开发领域的合作,建设安全管控能力,确保人工智能是安全、可信赖的,共同应对智能机器人在信息安全、伦理道德以及社会等层面带来的安全挑战。