廖子渊,陈明志,邓辉
(1.福州大学数学与计算机科学学院,福建福州350108;2.网络系统信息安全福建省高校重点实验室,福建福州350108;3.安徽省淮南市公安局,安徽淮南232001)
摘要:当前云计算发展十分迅速,而信任管理对其可持续发展而言是最具挑战性的问题
之一。云计算因其高度动态、分布式以及非透明等特点而引发了若干关键性问题,如隐私性、安全性以及可用性。保护云服务商免受恶意用户的攻击也是一个棘手的问题。文章根据云计算信任管理的设计理念,引入一种计算用户评价可信度的方法,将计算得到的信任结果作为其评价证据的可信权重。用户一般分为两类,一类是正常用户,根据实际的交易情况给出可信评价;另一类是恶意用户,通过提交恶意评价来攻击服务实体。通过计算用户的评价可信度可识别出恶意用户,保护信任管理模型。文章使用云计算中真实的信任反馈建立实验,通过用户的评价可信度淘汰恶意用户,使用正常的用户反馈证明了该模型的可行性。
0引言
云计算采取基于互联网相关服务的增加、使用和交付的模式,通过互联网来提供动态易扩展且经常是虚拟化的资源。云计算作为一种新资源使用方式,改变了传统的IT服务模式,但却未改变传统的安全形势。云计算由于其高度动态、分布式以及非透明等特点,使得云环境中的信任管理成为一个具有挑战性的问题。
国内外学者在信任管理方面的研究已经取得了丰硕成果:张琳等人在模糊集合理论的基础上提出了一种用于网络环境的信任评估模型。田立勤等人参考了社会信任的特性以及计算机信任评估的要求,提出了一种基于行为证据的双滑动窗口的行为信任量化评估机制。田俊峰等人提出了一种基于多部图的云用户行为认定模型,以解决云服务中用户行为可信度问题。王汝传等人提出了一种基于评价可信度的动态信任评估模型,该模型将云服务提供商的服务能力和云用户所需求的服务能力分别划分等级,有效解决了云服务提供商服务能力动态变化对模型造成的潜在破坏问题。周茜等人采用AHP模糊理论架构给出了云环境下用户安全防御模型,但因采用三标度法,分析问题主观性过强且不够准确。吕艳霞等人在传统FAHP方法的基础上建立了云计算中基于信任的防御模型来解决用户信任问题,采用基于三角模糊数的模糊网络分析法来反映专家评判的模糊性,并对网络用户行为各属性的权重进行了量化计算,使评判结果更加客观。BROSS0[8]等人提出一种建立在用户行为分析上的连续认证系统,提取用户的行为证据,并把用户分为不同的信任等级,通过神经模糊逻辑不断更新用户行为数据库,保持用户行为的可靠性以及准确性。王守信等人基于信任云理论,提出了一种主观信任模型,使用信任变化云来刻画可信度的变化状况,对主观信任评价的研究起到了推动性作用。
本文概述了基于评价可信度的云计算信任管理框架的设计理念。在该框架中,信任管理服务( Trust ManagementService,TMS)跨越若干分布式节点以分散方式管理反馈,可信度作为一种服务被传递。在信任管理服务中,反馈的可靠性是关键性问题。因此,本文提出几项针对合谋反馈和女巫攻击的检测指标。这些指标不仅能够区分来自恶意用户的恶意反馈,还能侦测到间歇性合谋反馈和间歇性女巫攻击。
1云计算信任管理框架
云计算信任管理框架建立在面向服务框架( ServiceOriented Architecture,SOA)之上,SOA将可信度作为一种服务进行传递。云计算中的资源作为服务被暴露在云端,在某种意义上使得SOA和Web服务成为相对重要的技术之一。信任管理服务使得用户可以提交反馈或是查询信任结果。图1显示云计算信任管理框架分为三层,分别是云服务提供层、信任管理服务层以及云服务消费者层。
1)云服务提供层。此层由不同的能够提供若干云服务的云服务商组成。此层上的互动可以认为是云服务商与用户和TMS的云服务互动以及云服务商为其服务做的广告。
2)信任管理服务层。此层由分布在不同地域中的云环境里的若干TMS节点组成。这些TMS节点提供接口,使得用户可以提交反馈并查询信任结果。此层的互动包括:(1)与云服务商的云服务互动。(2)使得用户能够通过网络获得新的云服务可信度。(3)评价可信度计算使得TMS能够证实特定消费者的反馈的可信度。
3)云服务消费者层。此层由使用云服务的用户组成。此层的互动包括:(1)使得用户能够通过网络发现新的云服务。(2)使得用户能够针对特定服务提交反馈。(3)使得用户能够通过登记证件来建立身份档案。
2管理服务
2.1身份管理服务
可信度与身份认证有着很强的关联性,我们提出使用身份管理服务( Identity ManagementService,ldM)来帮助TMS度量用户反馈的可信度。然而,处理ldM信息可能会泄露用户的隐私。一种保护隐私的方法是使用密码加密技术;另一种方法是使用匿名技术处理IdM信息,这样就不会侵犯到用户的隐私。显然,在高度匿名化与高效用之间存在权衡。高度匿名化意味着更好的隐私,而高效用则会导致隐私得不到保护。
2.2信任管理服务
在TMS的典型交互中,用户可以针对特定云服务的可信度提交反馈,也可以获取该服务的信任评价。当用户第一次使用TMS时,他们需要在IdM的信任身份登记处(TrustIdentity Registry)登记自己的证书以建立身份档案。信任身份登记处存有身份记录,由数组I=(c,ca,Ti)代表每个用户的身份。其中,c是用户名称;Ca代表身份的属性,如密码、lP地址等;Ti代表用户在TMS的登记时间。
通过用户的反馈,云服务的信任行为实际上是一个历史记录的调用集合,由数组H=(c,c,F,Tf)表示。其中,c是用户名称,s代表云服务。F是一系列信任反馈,包括安全性、响应时间、可用性等。F里的每一项信任反馈由范围在[0.1]内的数值表示,0、0.5、1分别代表消极、中立、积极。Tf表示信任反馈提交的时间戳。每当c要求s的信任评价时,TMS会计算信任结果Tr(s),计算公式如公式(1)所示。
式中,V(s)代表所有针对云服务s的信任反馈,l V(s)l代表信任反馈的总数;F(c,s)指来自用户c的信任反馈,当c值不同时,F(c,s)也发生改变;Ct(s,to,f)为在一段时间内信任结果改变的速率,它使得TMS可以为遭受恶意行为影响的云服务调整信任结果。
3可信度模型
我们设计可信度模型的目的有:1)合谋反馈侦测。包括计算反馈密度以及侦测间歇性合谋反馈。2)女巫攻击侦测。包括多重身份识别以及侦测间歇性女巫攻击。3)计算用户的评价可信度。
3.1合谋反馈侦测
3.1.1反馈密度
合谋反馈是指用户为了提高某个云服务的信誉度而在一段时间内给其发送的大量信任反馈。一些研究者认为高信任反馈数量意味着高可靠度的云服务。然而,信任反馈数量并不能完全决定信任反馈的可靠度。例如,假设有两个不同的云服务sx和Jy,它们的信任反馈数量都很高,sx在150个反馈中有79%的信任反馈,sy在150个反馈中有87%的信任反馈,那么用户通常选择信任反馈数量较高的云服务sy,但是sy可能是合谋反馈导致的结果,这就意味着我们有可能要选择sy。
为了解决这个问题,我们引入反馈密度的概念来帮助确定信任反馈的可靠度。我们将给特定云服务提交信任反馈的用户总数称为反馈堆,提交的信任反馈总数称为反馈量。反馈量受到合谋反馈量的影响,合谋反馈量由合谋反馈量阈值控制。例如,如果合谋反馈量阈值为15,则反馈量一旦超过15,用户就被怀疑参与了合谋反馈。
云服务s的反馈密度D(s)由公式(2)得出。
式中,M(s)表示针对云服务s的反馈堆;∣V(s)∣表示针对云服务s的反馈量;L(s)表示合谋反馈量,该值可以用来减少来自同一用户的过多反馈带来的干扰,由公式(3)给出。
式中,ey(s)表示合谋反馈量阈值,∣Vc(c,s)∣表示用户c针对云服务s提交的反馈数量。
例如,上文提过的两个云服务sx和sy,sx在150个反馈中有79%的信任反馈,sy在150个反馈中有87%的信任反馈。假定针对sx的反馈堆高于sy(如M(sx)=20,M(sy)=5),针对两个云服务的反馈量分别是∣Vc(c,x)∣=60和∣Vc(c,y)∣=130。我们进一步假定合谋反馈量阈值ey=10。根据公式(2)可得,D(sx)=0.0952,D(sy)=0.0173。可见,针对sx的反馈密度大于针对sy的反馈密度,也就意味着,针对sy的反馈有可能是合谋反馈,因此针对sx的信任反馈的可靠度高。
3.1.2间歇性合谋反馈
3.3.1交易满意度
交易满意度是指用户实体c,将服务实体si提供给自己的服务能力与si自己宣称的服务能力进行比较,根据差值计算得到的满意度。用p(ci,si,ti)表示用户实体ci根据服务实体si在tk时刻提供的服务能力计算得到的交易满意度,计算方式如公式(5)所示。
根据时间窗win内用户实体c,对服务实体s的每次交易满意度,求出用户实体ci在该时间窗win内对服务实体S的直接交易可信度,如公式(7)所示。
式中,fr为当前时刻,z=min{k∣tk∈win};u(k)为时间衰减函数,令u(k)=Ttr-tk,O<T<1。h=r-z,为用户实体ci在时间窗win内已交易的次数。Ψ(h)= exp(-ΨΨ去)为交易次数函数。时间窗win内交易次数越多,则Ψ(h)越大,Ttrci,sj也越大,意味着服务越可信。
3.3.2信誉度
根据所有用户对某服务的直接交易可信度能够得出该服务的信誉度,即根据众多用户的评价得出的某服务的可信度。假设时间窗win内与服务实体s进行交易的用户实体集合为C=(c1,…,cn),则服务实体s的信誉度TDtysj由公式(8)得出。
3.3.4评价可信度
时间窗win内与用户实体ci进行交易的服务实体可能不止一个,评价可信度是根据多个服务实体对用户实体ci给出的评价的满意度而得出的综合评价,表达了用户实体给出的评价的可信程度。如果评价可信度太低,说明该用户是为了攻击云服务而给出恶意反馈。假设时间窗win内与用户实体ci进行交易的服务实体集为P={s1,…,sn),则用户实体ci的最终评价可信度为
式中,∣p∣表示集合P中服务实体的数量。
4仿真实验
CCIDTM模型作为参考,对可信度模型抵御恶意攻击的健壮性进行验证,并给出实验结果。
4.1实验环境
TMS是可信度模型框架的一部分,该框架提供了一个针对云服务的基于评价可信度的信任管理平台,该平台提供了用户可以提交反馈和请求云服务的信任评价环境。TMS由两部分组成:信任数据供应和信任评估函数。
信任数据供应负责收集云服务和信任信息。云服务爬虫模块使得平台能够自动发现网络上的云服务。信任反馈收集模块直接从用户处收集信任反馈并且存储在信任反馈数据库中。用户第一次使用信任管理平台时必须在身份管理服务中登记。身份信息收集模块负责收集用户的身份总数。
信任评估函数负责处理来自用户的信任评估需求,并且根据用户的评价可信度区别出恶意用户。我们使用信任评估来比较云服务的可信度和计算提交的所有反馈的平均值。
4.2可信度模型实验
我们利用云服务上的真实信任评价来测试可信度模型。使用爬虫工具设法收集了若干网站中580个用户针对30个真实的云服务提交的876个反馈,并根据用户的评价可信度区别出恶意用户,使用剩下的用户进行实验。
每一组实验对应不同的攻击行为模型,如图3和图4所示。图3中为Waves模型,横坐标为Tf(即时间节点),纵坐标为∣V(s)∣(即反馈总数);图4中为Peaks模型,横坐标为Ti(即时间节点),纵坐标为∣I(s)∣(即身份总数)。
Waves模型可以反映在一个特定时间段中恶意反馈的总数。例如,图3中,当Tf=40时,∣V(s)∣=60,代表有60条恶意反馈。Peaks模型可以反映当遇到女巫攻击时,攻击者在一个时间段内建立的身份总数。例如,图4中,当Tf=20时,∣I(s)∣=80,代表有80个恶意身份。
为了评估可信度模型在面对恶意攻击时的健壮性,我们使用了两个实验条件。1)实验条件I:与传统CCIDTM模型比较,测试可信度模型的表现;2)实验条件Ⅱ:使用precision(TMS在侦测攻击时表现如何)和recall(被侦测到的攻击有多少是真的)两个度量指标测试可信度模型的表现。我们组织了8次实验,其中4次用来评估可信度模型在面对合谋攻击时的健壮性,4次用来评估可信度模型在面对女巫攻击时的健壮性。
4.2.1面对合谋攻击时的健壮性
在合谋攻击中,我们模仿恶意用户,通过提交可信度在[0.7,1.0]内的反馈来提高云服务的信任结果。图5至图8描述了可信度模型面对合谋攻击时的健壮性,图5和图6表示实验条件为I时,合谋攻击模型分别为Waves和Peaks的测量结果,虚线代表传统CCIDTM模型,实线代表可信度模型。图7和图8表示实验条件为Ⅱ时,合谋攻击模型分别为Waves和Peaks的测量结果。
我们发现,使用传统CCIDTM模型计算可信度时,时间越接近10,信任结果越高,原因是恶意用户为了增加云服务的信任结果而提交了恶意反馈。而当使用可信度模型计算时,信任结果几乎没有发生改变,这证实了可信度模型对于合谋攻击是敏感的且能够侦测到恶意行为。我们还发现,在两种攻击模型下,recall的分值都比较高,这意味着大多数被侦测到的攻击都是真实的,也证实了可信度模型能够成功侦测合谋攻击。
4.2.2面对女巫攻击时的健壮性
在女巫攻击中,我们模仿恶意用户,通过建立多重身份和提交恶意反馈来降低云服务的信任结果。图9至图12描述了可信度模型面对女巫攻击时的健壮性,图9和图10表示实验条件为I时,女巫攻击模型分别为Waves和Peaks的测量结果,虚线代表传统CCIDTM模型,实线代表可信度模型。图11和图12表示实验条件为Ⅱ时,女巫攻击模型分别为Waves和Peaks的测量结果。
我们发现,使用传统CCIDTM模型获得的信任结果在时间接近10时减少,这是因为恶意用户通过提交恶意反馈来降低云服务的信任结果。而使用可信度模型获得的信任结果要比使用传统CCIDTM模型获得的高,这说明面对女巫攻击时可信度模型有着更好的健壮性。我们还发现,在两种攻击模型下,precision分值和rec all分值都比较高,证明了可信度模型可以很好地侦测女巫攻击。
5结束语
当前的云计算环境中,针对云服务商和用户的信任管理仍然是极具挑战的任务之一。用户反馈依然是评价云服务可信度的重要资源,但是部分用户的恶意行为会严重影响云服务的信任评价。本文提出了一种可侦测合谋反馈以及女巫攻击的可信度模型,并收集了许多真实的用户反馈来评价该模型。实验结果证实了该模型在侦测恶意反馈方面的能力。未来研究将尝试将不同的信任管理技术结合进去,争取提高信任结果的精度。此外,信任管理服务的性能也将是重点研究方向之一。