APP下载

基于贝叶斯网络的公安网络执法手段研究

2018-06-29仝鑫

网络空间安全 2018年1期
关键词:贝叶斯网络情感分析

仝鑫

摘 要:公安传统网络执法手段难以应对日益复杂的网络,急需探索高效灵活的新途径。贝叶斯网络作为机器学习中重要的算法,被广泛应用于人工智能领域。然而,公安网络执法中尚未有相应的应用。论文提出一种新型的贝叶斯网络进行文本感情分析的方法,实现高效率的自动化网络舆情监控,并由此实现了基于犯罪目标求解一条最优的“侦查、渗透、取证”网络执法流程,完成自动化网络犯罪打击。此外,动态贝叶斯网络能够不断根据前驱训练结果和外部因素进行反馈调整,相比静态传统手段在精度和灵活性上都更加契合公安工作的需求。

关键词:公安网络执法;贝叶斯网络;情感分析;舆情监控

中图分类号:393 文献标识码:A

Research on law enforcement means of public security network based on bayesian network

Abstract: The traditional law enforcement means of public security is difficult to deal with the increasingly complicated network, so it is urgent to explore a new way of efficient and flexible. As an important algorithm in machine learning, Bayesian network is widely used in the field of artificial intelligence. However, there is no corresponding application in police network law enforcement. In this paper, a new Bayesian network for text affective analysis is proposed, which realizes an efficient automatic network monitoring of public opinion, and thus realizes an optimal "investigation, infiltration, forensics" Network law enforcement process based on the crime target to complete the automatic cybercrime attack. In addition, the dynamic Bayesian network can continuously adjust the feedback according to the result of the precursor training and external factors, which is more consistent with the demand of the public security work than the static traditional method in accuracy and flexibility.

Key words: network security law enforcement; bayesian network; sentiment analysis; public opinion monitoring

1 引言

随着计算机科学及互联网的发展,利用计算机网络的犯罪行为呈现出多样化发展的态势,这给公安网络执法带来了新的挑战。一方面,网络安全是国家的一项重要的战略任务,而大部分机构依靠聘请第三方完成安全需求,增加了不可靠性和泄密风险。另一方面,在网络安全执法工作中,实施人员会使用到众多零散的工具,很难构建完整的渗透测试体系,这给公安网络警察带来了巨大的专业压力。此外,互联网的开放性使得获取各种“黑客”学习资源轻而易举,而对于网络安全的侦查取证和打击需要大量的时间精力,可谓“易攻难守”,使本来就匮乏的警力更加难以招架。

无论是网络安全还是人工智能领域,都有成熟的理论体系。首先,网络安全渗透测试流程清晰明了。EC CEH(EC-Council Certified Ethical Hacker,伦理黑客认证)提出了渗透测试声明周期模型,包括 “侦查、扫描、获取访问、维持访问和痕迹清除” 五大核心阶段[1]。近几年人工智能领域飞速发展,大数据、机器学习等工具体系,逐步从理论走向实战。一些初级自动化渗透测试工具也为二者结合前景提供了技术参考, Metasploit(开源的安全漏洞检测工具)的AutoPwn模块能够实现基于数据库的自动化攻击[2]; Burp Suite 测试工具实现了自动识别并解密部分简单密码算法; SqlMap、W3af等知名网络安全工具都提供可轻松调用的API(Application Programming Interface,应用程序编程接口),为其它工具的实现与集成提供了技术基础。

刘涛[3]等论述了将机器学习应用于入侵检测上的可能性,但未给出实现细节;刘兰等[4]提出基于大数据的异构网络安全监控及关联算法来对网络安全整体势态进行分析,但在灵活性和细节无法满足;王聪[5]等基于关联特征,采用贝叶斯分类算法达到了对安卓恶意程序识别的目的,但無法应用于网络舆情监管;胡浩等[6]依据实时检测的攻击事件评估攻击者能力和漏洞利用率,构建贝叶斯网络从而预测后续攻击手段的方法适用于大型网络战场,忽视了网络犯罪取证,不能很好的契合公安工作。相比于其他方法,本文目的在于研究通过贝叶斯网络构建集实时网络环境监控、自动目标侦查、精确取证和迅速打击等功能于一体的智能化的网络安全执法手段。

2 构建智能化网络安全执法平台

2.1 平台定位和目标

《中华人民共和国计算机信息系统安全保护条例》中规定,公安机关对计算机信息系统安全保护工作有包括并不仅限于监督、检查、指导计算机信息系统安全等职权。传统的网络环境监管高度依赖于人工审核和字典过滤手段,但随着大数据时代的到来,传统手段的及时性与灵活性不足。因此,本文主要讨论将贝叶斯网络运用于不同执法场景,探索一条“监控、发现、侦查、取证/打击”为中心的、具有多分支结构的智能化、自动化网络安全执法手段网络。

2.2 解决新途径

本文将目光投向通过将人工智能算法与网络安全相结合以解决网络安全执法难题,利用贝叶斯方法实现自动化和智能化网络安全执法。

2.3 实施策略

将贝叶斯网络运用到公安网络安全与执法工作中,主要包括网络舆论环境监控和网络犯罪行为打击,前者通过贝叶斯网络进行文本内容分析,发现敏感内容和网络犯罪行为,从而保证网络环境的绿色和安全;后者将贝叶斯网络作为决策机制,用于对犯罪行为进行自动化侦查、取证和打击。

3 核心算法

本文提出利用人工智能算法解决公安网络安全与执法自动化网络安全执法平台的新途径,其核心算法是贝叶斯网络。

3.1 贝叶斯网络

贝叶斯网络(Bayesian Network)是一种基于加权有向无环图(Directed Acyclic Graphs)的概率图型模型,它是隐含马尔科夫链的扩展。一个贝叶斯网络由节点和弧(有向边)组成,每个节点代表着一个随机变量或参数,而弧是一条有向边,从一个节点(变量A)指向另一节点(变量B),表示A变量的取值会对B变量的取值产生影响,弧上往往有对应的权值或概率,指出了A到B的可能性。也就是说,如果两个节点直接有弧相连,则表示两个节点代表的两个随机变量是具有因果关系或是非条件独立的,起始节点被称作“因(Parents)”,指向节点被称作“果(Descendants)”;反而言之,如果两个节点没有直接用弧相连,则说明这两个随机变量无“直接”关联,或许它们直接有间接的联系。图3是一个典型的贝叶斯网络。

如图3中节点Var_B和节点Var_D直接相连,表示节点Var_D的值直接受节点Var_C影响。虽然Var_D和Var_A在图中不直接由弧相连,但是可以看出,Var_A可以通过影响Var_B或者Var_C的值,从而“间接”影响到Var_D。贝叶斯网络还有一个概率表,指明了各个节点直接转换的条件概率,在我们使用贝叶斯网络进行推算时,实际上是使用条件概率分步表中的先验概率和已知的证据节点来计算所查询的目标结点的后验概率的过程。表1是一个简单的概率分部表(CPT)

贝叶斯网络具有双重的含义:它指出了既指出了各个变量之间的条件独立和依赖关联;又表示出了随机变量之间转换的联合概率分布关系,依据贝叶斯网络的结构和条件概率分布表可快速得到每个基本事件的概率。贝叶斯理论通过先验知识及样本来获得对未知数据的评估,而联合概率与条件概率是先验信息和样本信息在贝叶斯学习理论当中的表现形式。

贝叶斯网络的应用在我们身边随处可见。早在2004年,Google基于贝叶斯网络构建了基于统计模型的文本分词器Rephil,广泛应用于广告服务和搜索服务[7]。另外,现如今拼写检查服务也大都基于贝叶斯网络。总之,贝叶斯网络在统计学、计算机图像处理及决策系统中都有着广泛的应用,它和我们的生活息息相关。

3.2 构建平台的基石

现如今的互联网环境中,大部分服务器具有一致的结构。在操作系统方面,Windows、Unix家族(包含Linux和安卓)垄断了市场。网站构建方面, Wordpress、Joomla、Struts2等开发框架愈发流行。大部分网络犯罪服务器也都基于这些框架。因此,构建一个通用漏洞利用数据库,用于作为打击网络犯罪的“参考手册”,是贝叶斯网络的自动化网络执法平台的基石。目前,国内外已经涌现出一批集“漏洞发现、成因、利用、修复”于一体的漏洞数据库,如国外的“exploit-db”和国内的“乌云网”。各网络安全团队也依据此开发出通用网络安全漏洞测试器, IBM公司的Security AppScan检测工具和由Tenable团队研发的Nessus,都能够对服务器进行综合性的安全审计,并且基于exploit-db识别漏洞CVE编号,为后续的自动化利用漏洞提供了可能。他们都为构建漏洞数据库提供了经验和参考,然而这些现有的社区组织维护的数据库在权威性和有效性方面仍值得商榷。在构建平台的漏洞数据库时,更应注意筛选,以保证高精度。

3.3 算法及过程描述

3.3.1 网络环境监控

对于网络环境的监控,实质是对数据内容和感情色彩的分析,从而实现舆情监管的目的。

定义1:设原始词库W包含词汇的二元组(w, r)其中w是单词,r是初始阶段人工的评级,W={(w1, r1), (w2, r2),…, (wN, rN)},r∈{Low,Medium,High}。

定义2:设人工已标记且已分词后的语料库为T,感情色彩为S。

定义3:设网络测试数据为I,I也被进行分词处理 。

定义4:设贝叶斯网络训练函数为F,F在计算节点概率时通过古德-图灵估计法(Good-Truing Estimate)对零概率进行消除,并采用卡茨退避法(Katz Backoff)进行平滑处理。

定義5:词汇感情倾向Flag,代表着消极或积极,在很多程序语言中这个字段可用布尔变量(bool)来表示。

公式1:通过贝叶斯公式计算测试文本中出现Word情况下,感情色彩为积极或消极的概率,如下:

公式2:一句话可能有多个表示情感的词,需要求得在这些词出现的条件下该文本为积极的条件概率:

算法1:通过扫描标记过的语料,来获取不同感情色彩的词汇在训练集的词频/权重,如词Word在积极色彩训练语料库里出现频率为0.2%,而在消极色彩语料库里频率趋近于0,并使用迭代算法。

输入:Ω(n) = F (W, T, S, Ω(n-1))

输出:训练结果集Ω是一个四元组集合,包含了词汇、感情色彩倾向、出现频率p和新计算的评级,即Ω={(w1,flag1,p1, r1), (w2,flag2,p2, r2),…, (wN,flagN,pN, rN)},并可根据flag将结果集导出成积极感情词库α和消极感情词库β。

结论:贝叶斯网络的自学习性进行网络监控,能够根据提供的语料库来进行感情色彩评判和分类更显灵活,随着其迭代训练,准确率将不断提高,从而在大数据时代挖掘数据相关性,使得舆情检测分析从定性走向定量[8]。

扩展:为了应对更加复杂格式的数据,还将贝叶斯网络运用于图像处理,能有效发现蕴含不良信息的多媒体视频或图像信息,从而高效自动地锁定执法目标。

3.3.2 基于贝叶斯网络的自动化网络安全执法

通过贝叶斯网络能够轻松实现“动态监控——实时发现——迅速取证和打击”的自动化网络安全执法手段。

定义1:设网络执法目标为A,目前已知A的少量信息,如IP或域名。

定义2:设人工网络安全执法的完整流程的集合为γ,侦查、渗透、取证对应的环节变量分别设为s,a,f因为每个环节往往包含多种方式,则γ={(s1,s2,…,sN),(a1,a2,…,aN), (f1,f2,…,fN)}。

定义3:每一个环节都有对应的输出结果,可设侦查、渗透、取证结果分别为rs, ra,rf,则总结果集S={(rs1,rs2,…,rsN), (ra1,ra2,…,raN), (rf1,rf2,…,rfN)}。

定义4:设训练函数为F,通过贝叶斯网络来进行决策并不断自学习,F接受上次的训练结果即执法流程参考库并输出新的执法流程参考库Δ。

算法:网络安全执法中的每一个步骤(节点),受前驱节点的状态影响,并影響后继节点,通过检测不同节点的“概率”,贝叶斯网络能够给出渗透流程中可能性最大的路线即最优解从而得到执法流程参考库Δ。

输入:Δ = F (A, Δ(n-1))。

输出:Δ是一个用于决策的多维元组,包含一个完整的渗透流程元组(rI, aJ, fN),一个代表当前流程可行性权重的综合概率p,以及衡量标准的效率η,综合来看Δ=((rI, aJ, fN), p, η) 。

过程:produce name:BayesianTrain

foreach s in (s1,s2,…,sN)

foreach a in (a1,a2,…,aN)

foreach f in (f1,f2,…,fN)

p.Add(P(s)P(a│rs)P(F│ra,rs))

return MAX(p)

end produce

结论:贝叶斯网络克服了其他机器学习算法如有限状态机中机械性强的束缚,能够分析各种错综交叉的问题,能够根据上次的训练结果与本次训练结果不断得到更加完善的决策结果。为了取得更好的训练效果,动态贝叶斯网络( Dynamic Bayesian Network,DBN)表现的更加可靠,它能够学习不同节点间的概率依赖关系以及其随时间t变化的规律 ,从而达到根据实际情况来调整网安全执法流程规则的目的,如图4所示是一个典型的动态贝叶斯网络。

动态贝叶斯网络能够根据如工作服务器负荷、网络情况等外因,及时动态的改变和优化网络执法策略,因此它的优越性远超其他模型。DBN是贝叶斯网络在时间维度的扩展,同时兼顾了每个节点受其他节点的影响和该节点随时间变化的情况,使得网络安全执法的流程更加准确。

扩展:为了保证自动网络执法的高效性,可以采用基于数据库的自动执法和贝叶斯网络决策相结合的手段,在简单的环境下,基于数据库的自动执法将大幅度减少贝叶斯网络训练带来的开销和资源占用。

3.4 合法性

基于贝叶斯网络实现的自动化网络安全与执法,虽然能极大地减少网安工作所需投入的人力和物力,但它更是一把双刃剑,在法律上和道德上都还有待完善,使用不得当将带来难以预料的后果。因此,更要强调人工智能的守法性:保证每一次的自动化网络安全执法都是符合法律规定的;可控性:自动化网络执法流程随时可被中断,并且用户(公安)指令的优先级高于贝叶斯网络推断的指令的优先级;可追溯性:即每一次的执法都应该有详细的日志记录。最终保证整个人工智能活动的合法性和权威性,如表2提供一个参考的完整日志记录。

4 结束语

贝叶斯网络将会在实时网络违法行为监控、全天候网络环境监管、自动化网络犯罪取证和智能化网络安全渗透打击方面发挥强大的作用,保证及时发现和熄灭犯罪“苗头”,帮助公安迅速在风云多变的网络环境中锁定、取证打击各类网络违反行为,是一款够威慑网络犯罪的战略武器。

此外,其他新技术也可作为扩展:在大数据环境下基于Hadoop部署安全势态分析系统[9],将计算能力分散到各个市、区级网络安全中心,可提升运算速度;密码学中关于自动密文识别和破解技术也不断突破,重合指数法(Index of Coincidence)[10]已经能够在仅有密文的情况下进行分析和破解;BP(Back Propagation)神经网络是目前另一种主流机器学习算法,在模式识别、分类、数据挖掘等领域也都发挥着不可替代作用,在对未知词汇分类和识别方面具有不俗的可靠性和高效性。

参考文献

[1] (美)James Broad,Andrew Bindner. Kali渗透测试技术实战[M].北京:机械工业出版社,2014(9):P3.

[2] 吴军. 数学之美(第二版)[M].北京:人民邮电出版社,2014(11):P214-P215.

[3] 魔术.Metasploit自动攻击和选择模块攻击详解[J]. www.freebuf.com/articles/web/5628.htm,2012(9).

[4] 刘涛.机器学习算法在校园网入侵检测系统中的应用[J].黑河学院学报,2017(9):P215-P216.

[5] 刘兰,林军,蔡君.面向大数据的异构网络安全监控及关联算法研究[J].电信科学,2014(7):P84-86.

[6] 王聪,张仁斌,李钢.基于关联特征的贝叶斯Android恶意程序检测技术[J].计算机应用与软件,2017(1):P286-P287.

[7] 胡浩,叶润国,张红旗,杨英杰,刘玉岭.基于攻击预测的网络安全态势量化方法[J].通信学报,2017(10):P122-P124.

[8] 宫泽林,徐艳红.创新大数据技术下网络舆情监测与分析的研究[J].网络空间安全,2016(6):P4.

[9] 章翔凌,杨永群,黄勤龙,陈权.基于大数据分析的应用安全态势系统设计与实现[J].网络空间安全,2017(2-3):P56-P57.

[10] 弋建伟,马晓荣.基于Java的维基利亚密码分析[J]. 陕西师范大学学报(自然科学版), 2008(36):P9-P10.

猜你喜欢

贝叶斯网络情感分析
基于语义的互联网医院评论文本情感分析及应用
基于双向循环神经网络的评价对象抽取研究
基于分布式贝叶斯网络的多故障诊断方法研究
基于SVM的产品评论情感分析系统的设计与实现
无人机数据链测试与评估研究
基于贝叶斯网络的流域内水文事件丰枯遭遇研究
基于词典与机器学习的中文微博情感分析
在线评论情感属性的动态变化
基于兴趣预测和热点分析的联合推荐算法研究 
文本观点挖掘和情感分析的研究