APP下载

面向SOAP消息的Web服务注入攻击检测方法

2015-04-10吴长勤王传安

武汉工程大学学报 2015年7期
关键词:消息阈值矩阵

吴长勤,王传安

安徽科技学院数学与信息学院,安徽 凤阳 233100

面向SOAP消息的Web服务注入攻击检测方法

吴长勤,王传安

安徽科技学院数学与信息学院,安徽 凤阳 233100

面向SOAP消息的注入攻击对Web服务的发展前景和应用产生重要的影响,而目前尚缺乏有效的检测方法,为此我们提出了一种基于行为模式的注入攻击检测方法.该方法在Web服务访问日志行为建模阶段采用长度不同的特征子串来表示行为模式,并通过序列模式的支持度来建立正常消息行为模式轮廓;针对注入攻击复杂多变的特点,进一步提出基于矩阵相似匹配结合相似判决阈值的注入攻击检测模型.实验结果表明,与多种其他经典检测方法相比,该检测方法在检测率和误报率等方面检测效果好,可有效地检测出注入攻击.

注入攻击;SOAP消息;Web服务;行为模式

0 引言

Web服务是一个向其它应用过程或程序提供数据和服务的分布式模块化组件,它通过XML、SOAP等新技术实现各种服务之间的互操作[1]. Web服务具有高度互操作、松散耦合和可重用等特点,已成为网格和云计算等计算技术的重要实现方式之一.

目前Web服务通信是以传输SOAP消息为基础的,由于SOAP协议在设计时并没有过多的考虑其安全性问题,从而导致SOAP消息在传输过程中极易受到诸如SQL注入攻击和XML注入攻击等其他形式的命令注入攻击,因此保证SOAP消息传输的安全性是当前研究的一个重要问题[2].文献[3]描述了Web服务面临的安全威胁与状态,利用OWL-S与本体建立了服务安全攻击本体. Nils Gruschka等人[4]指出消息的机密性、完整性和用户验证对于服务平台安全性的作用很小,从而提出采用XML Schema中的消息对接受到的SOAP消息进行确认,以此发现具有注入攻击的服务调用.文献[5]在研究中定义了一个消息安全本体来对SOAP消息进行本体验证,进而对攻击进行检测.杨晓晖等人[6]提出基于信任度量的跨域访问控制模型,来实现Web服务访问安全.

笔者在充分考虑正常Web访问行为的特点后,采用长度不同的多种特征子串来表示正常SOAP消息行为,并通过支持度来建立正常消息行为模式,最后利用提出的检测模型对注入攻击进行检测.

1 注入攻击检测方法

文中提出的注入攻击检测方法的实现过程可分为正常行为建模和和攻击检测两个阶段,具体检测模型如图1所示.正常行为建模的主要任务是建立正常的SOAP消息的行为模式.攻击检测阶段的任务是根据建立的正常行为模式,利用特定的检测模型来识别当前SOAP消息中的异常行为.

图1 注入攻击检测模型Fig.1 The detection model of injection attack

1.1 行为建模

Web访问详细的记录了客户的SOAP信息行为,通过观察Web访问日志,可发现消息中会大量重复出现一些字符串,将这些重复出现的字符串称为特征子串,其特征相对稳定,可代表SOAP消息的行为模式[7].行为建模阶段的主要工作如下.

(1)获取训练数据:将无注入攻击时产生的Web访问作为训练数据E={e1,e2,…,en},其中ei表示按时间顺序排列的第i个SOAP消息事件,n为SOAP消息事件序列长度.

定义1:Web访问日志记录的一次会话或一次执行过程称为SOAP消息事件,记为e=<la,t>,其中la=<s1,s2,…,sm>表示该SOAP消息事件中的m个字符,t表示记录SOAP消息事件的时间.

(2)借鉴最长前缀提取算法[10]思想,采用最长前缀分析法提取训练数据E中所有长度大于1的重复出现的特征子串,组成特征子串集合T={t1,t2,…,tk},tj表示第j个特征子串,k为长度.

(3)将训练数据E中的SOAP消息事件序列转换为按时间排序的n个长度分别为l(1),l(2),…l(n)的特征子串序列流C={C1,C2,…,Cn},其中Ci表示eiSOAP消息事件中包含的所有特征子串,记为Ci={tj,tj+1,…,tm}.

(4)计算集合T中每个特征子串在训练数据序列E中的支持度.

定义2:一个特征子串在序列E中的支持度等于该子串出现的次数除以所有特征子串总计出现次数,即:support(ti)=number(ti)/Number(T),其中Number(T)为集合T中所有特征子串出现的次数和.

(5)从n个特征子串流中,分别按照相应的支持度提取正常Web访问行为模式序列L(i).

考虑到不同的特征子串表示的行为模式意义可能不尽相同,其出现的频率也会有较大的区别,不能采用单一支持度,在文中设置了k个相应于不同特征子串的最小支持度minsup(t1),minsup(t2),…,minsup(tk).对于1≤i≤k,将Ci中等于或大于相应最小支持度minsup(ti)的特征子串提取出来,构成满足支持度要求的行为模式序列L(i).

(6)构建正常行为模式轮廓

将S个满足最小支持度要求的序列L(1),L(2),…L(S-1),L(S)存储起来,用于描述正常行为模式轮廓,同时也作为下一步进行注入攻击检测的正常行为模式轮廓L={L(1),L(2),…,L(K)}.

1.2 注入攻击检测

攻击检测阶段的任务是根据建立的正常行为模式,利用特定的检测模型来识别当前SOAP消息事件中的异常行为.攻击检测阶段的主要工作如下.

(1)获取测试数据:选取监测时间内Web访问日志作为测试数据,并进行预处理.设预处理后得到的日志数据字符串序列为E’={la1,la2,…,lan},其中lai为按时间顺序排列的第i个字符串.

(2)按照行为建模阶段提出的方法,提取测试数据E’中的K个行为模式序列,并以此构建当前日志行为模式轮廓L’={L’(1),L’(2),…,L’(S)}.

(3)将两阶段构建的行为轮廓L和L’分别转化成k·n的模板矩阵M和检测矩阵Q.

模板矩阵M=(M1,M2…MK)T,其中Mi表示序列L(i)转化的由n个0和1组成的行向量,即Mi=(a1,a2,…,an),其物理意义表示:若子串集T中的某个特征子串在L(i)中出现,将相应的矩阵位置元素置为1,否则置为0.如L(i)由集合T中的第1,2,4个特征子串组成,即L(i)={t1,t3,t5},则转化的行向量Mi=(1,1,0,1,0,0,…,0).同理,将序列库L’转化为行向量表示的检测矩阵Q.

(4)矩阵相似性度量:使用矩阵相似度来衡量检测矩阵Q与模板矩阵M之间的匹配程度.下面引入矩阵间相似度的概念[8],设m×n矩阵全体为Cm×n,假如A·B∈Cm×n,矩阵内积可定义为

式(1)中tr(﹒)表示矩阵主对角线元素的和,而矩阵内积表示两矩阵相对应位置元素的乘积累加和,由矩阵内积可导出范数

若A、B为实数矩阵,则|<A·B>|≤||A||·||B||,当且仅当A和B两矩阵完全相似时,|<A·B>|=||A||·||B||.

可知,A和B两矩阵的相似度为

式(3)中θ为A和B两矩阵之间的夹角,当θ=0°时,表示A和B相似性最好;当θ=90°时,A和B则完全不相似.

为计算检测矩阵Q与模板矩阵M之间的匹配程度,需将公式(3)改为

当检测矩阵Q与模板矩阵M之间的匹配度sim(M,Q)小于给定的判决阈值w时,则将矩阵Q标记为异常,并发出异常警报,最后将报警SOAP消息事件交由专家系统并结合人工进行验证,进而判定Web访问是否遭受注入攻击.

(5)判决阈值选择:选择合适的判决阈值是决定检测率和误报率的关键因素.参照文献[9]中交叉验证的方法来确定文中的判决阈值w,将获得的Web访问日志按一定比例分成两部分,一部分用于获取行为模式,而另一部分用于确定判决阈值和测试误报率,如此反复交叉的测试,并在测试过程中通过调整判决阈值来获得误报率与不同判决阈值间的对应关系,最终将期望误报率所对应的判决阈值w作为检测注入攻击的阈值.

2 实验与分析

本文的试验是在安徽科技学院校园网中进行的,采集到的数据集既有校园网内部的Web访问数据,也有来自于或传输到教育网上的数据,并利用C++语言完成文中相关的算法和实验.具体实验环境见图2所示.

图2中的环境配置如表1所示.

图2 实验环境图Fig.2 The platform of experimental environment

表1 环境配置表Tabel 1 The configuration of experimental environment

实验所采用的Web访问数据集如下:

训练数据集:将T2产生的1 000个SOAP消息记录作为训练数据集,用来建立正常的SOAP消息的行为模式.

测试验证数据集:将T1采集到的Web访问日志和P1、P2产生的100个SOAP消息记录作为测试数据集,用来验证文中提出的注入攻击检测效果.

根据训练数据集,运行特征子串提取算法,提取了35个用于表示行为模式的特征子串,进一步采用文中提出的行为模式序列提取方法,获得了21个行为模式序列库L={L(1),L(2),…,L(21)}.

在建立正常行为模式轮廓后,对测试验证数据集采用文中提出的注入攻击检测方法进行检测.为选择最佳的检测判决阈值,可通过已有的训练数据并通过判决阈值选择法来确定.图3给出了实验过程中选择判决阈值w的曲线,图中的实线为未进行注入攻击对应的判决阈值曲线,而虚线为注入攻击后的判决阈值曲线.从图3中可以看出,当w=0.55时,正常SOAP消息行为模式下的判决阈值曲线与注入攻击后对应的判决阈值曲线几乎没有的交叠部分,具有较好的区分度,因此文中将0.55作为最佳判决阈值.

图3 判决阈值曲线Fig.3 The curve of decision threshold

同时,还采用文中实验用的Web访问数据集分别对文献[10]中基于序列对比的检测方法、文献[11]中基于本体的检测方法以及文献[12]中基于文本聚类的攻击检测方法进行了对比实验,在检测率、误报率和实验时间方面进行了对比,实验对比结果见表2所示.

表2 不同检测法的检测结果比较Tabel 2 The comparison results of detection effect

从表2中可以看出,文中提出的检测方法在检测率上明显优于其他3种检测方法,且误报率也明星低于序列对比和文本聚类的检测方法.由于文中提出的检测方法需要先建立正常行为模式,然后再进行验证检测,所以在实验时间方面稍高于序列对比和本体检测法,但是其他两项检测指标具有明显的比较优势.由实验对比结果可见,文中提出的注入攻击检测方法是有效的,具有很好的综合检测性能.

3 结语

提出了一种新的面向SOAP消息的注入攻击攻击检测方法,该方法充分考虑了正常Web访问行为的特点,采用长度不同的多种特征子串来表示正常消息行为,并通过支持度来建立正常消息行为模式,最后利用特定的检测模型来检测SOAP消息中是否含有注入攻击.实验结果表明,文中提出的检测方法可有效的检测注入攻击,且具有很好的检测效果.

致谢:

在此对文中实验和测试等提供支持和帮助的安徽科技学院计算中心表示感谢,并对在研究过程中提供的指导的各位老师帮助表示感谢!

[1]刘玲霞,王东霞,黄敏桓.一个Web服务可信体系结构[J].计算机科学,2014,12(41):30-32.

LIUling-xia,WangDong-xia,HuangMin-heng.Trustworthy Architecture for Web Services[J].Computer science,2014,12(41):30-32.(in Chinese)

[2]SABBARI M,ALIPOUR H S.A security model and its strategies for web services[J].International Journal of computer Applications,2011,36(10):24-31.

[3]JENSEN M,GRUSCHKA N,HERKENHONER R,et al.Soa And Web Services:New Technologies,New Standards-New Attacks[C]//2007.ECOWS'07.Fifth European Conference on.Web Services,2007:35-44.

[4]NILS Gruschka,Norbert Luttenberger.Protecting Web Services from DoS attacks by SOAP Message Validation[J].IFIPInternationalFederationforInformation processing 2006,9(201):171-182,

[5]DIEGO Z G,MARIA B F.Ontology-based Security Ploicies for supporting the management of Web Service BusinessProcesses[C]//TheIEEEinternational Conference on Semanitic computing.2008.

[6]杨晓晖.一种基于信任度量的Web服务跨域访问控制模型[J].山东大学学报(理学版),2014,9(49):115-122.

YANG Xiao-hui.A cross-domain access control model of Web service based on trust measurement[J].Journal of Shandong University(Natural Science),2014,9(49):115-122.(in Chinese)

[7]王传安.SCADA系统通信网中的高级持续性攻击检测方法[J].计算机科学与探索,2015,3(9):352-259.

Wang Chuan-an.Detection of Advanced Persistent Threats in SCADA Communication Network[J].Journal ofFrontiersofcomputerscienceandtechnology,2015,9(27):352-359.(in Chinese)

[8]翟东海.基于矩阵相似度的最佳样本块匹配算法及其在图像修复中的应用[J].计算机科学,2014,1(41):307-310.

ZHAI Dong-hai.Optimal Exemplar Matching Algorithm Based on Matrix Similarity and its Application in Image Inpainting[J].Computer science,2014,1(41):307-310.(in Chinese)

[9]田新广.基于shell命令和多重行为模式挖掘的用户伪装攻击检测[J].计算机学报,2010,33(4):697-705.

TIAN Xin-guang.Masquerade detection based on shell commands and multiple behavior patter mining[J].Chinese Journal of computer,2010,33(4):697-705.(in Chinese)

[10]孙义,胡雨霁,黄皓.基于序列比对的SQL注入攻击检测方法[J].计算机应用研究,2010,9(27):3525-3528.

SUN YI,HU YU-JI,HUANG Hao.Method of defense SQL injection attacks based on sequence alignment[J].ApplicationResearchofComputers,2010,9(27):3525:3528.(in Chinese)

[11]陈军.基于本体的Web服务攻击检测技术研究[J].计算机应用,2011,6(31):1515-1520.

CHEN Jun.Research of Web Services attack detection basedonontology[J].JournalofComputer Applications,2011,6(31):1515:1520.(in Chinese)

[12]杨晓峰.基于文本聚类的网络攻击检测方法[J].智能系统学院,2014,1(9):1-7.

YANG Xiaofeng.Text clustering based Web attack detection method[J].CAAI Transactions on Intelligent Systems,2014,1(9):1-7.(in Chinese)

Detection of SOAP message-oriented injection attacks on Web services

WU Chang-qin,WANG Chuan-an
College of Mathematical and Information,Anhui Science and Technology University,Fengyang 233100,China

SOAP message-oriented injection attacks have great impacts on prospects and applications of Web services;however,there is not an effective injection attacks detection method now.We proposed a method to detect injection attacks based on behavior patterns.In this method,the behavioral patterns of the legal behavior were characterized by characteristic substring sequences of different lengths,and the sequence supports were used to construct the normal behavior profiles in modeling stage of Web-access log message behavior. According to the complex and volatile features of injection attacks,a detection model based on matrix similarity matching and decision threshold was proposed.Compared with other classical detection models in experiments,the proposed method has better detection rate and false positive rate,showing good detection effects on injection attacks.

injection attacks;SOAP messages;Web services;behavior profiles

TB35

A

10.3969/j.issn.1674-2869.2015.07.013

1674-2869(2015)07-0060-05

本文编辑:陈小平

2015-06-10

安徽科技学院青年科研研究项目(ZRC2014426);安徽省自然科学研究项目(KJ2013Z048).

吴长勤(1962-),男,安徽肥东人,副教授,研究方向:计算机应用技术.

猜你喜欢

消息阈值矩阵
一张图看5G消息
小波阈值去噪在深小孔钻削声发射信号处理中的应用
基于自适应阈值和连通域的隧道裂缝提取
比值遥感蚀变信息提取及阈值确定(插图)
室内表面平均氡析出率阈值探讨
初等行变换与初等列变换并用求逆矩阵
矩阵
矩阵
矩阵
消息