基于攻击图的表述性状态传递安全分析与评估

2018-08-28 08:52张游杰张清萍
计算机应用 2018年6期
关键词:服务端攻击行为校验

张游杰,张清萍,吴 伟,师 哲

(1.中国电子科技集团公司第三十三研究所中电科华北网络信息安全有限公司,太原030032;2.南京邮电大学计算机及软件学院,南京210023)

(*通信作者电子邮箱zyoujie@163.com)

0 引言

表述性状态传递(REpresentationalStateTransfer,REST),是一组针对网络应用的架构约束条件和原则,最初由Fielding[1]提出,主要用于基于网络应用的架构设计,可以降低开发的复杂性,提高系统的可伸缩性。在目前主流的Web服务实现方案中,由于REST模式相比简单对象访问协议(Simple Object Access Protocol,SOAP)和可扩展标记语言(eXtensible Markup Language,XML)远程过程调用(XML Remote Procedure Call,XML-RPC)更加简洁,越来越多的Web服务采用了REST架构[2]。

然而,由于REST本身的安全机制不够完善,导致基于REST架构的Web服务面临各种信息安全问题的考验,如身份认证、信息篡改、重放攻击、资源访问、脚本注入等攻击都可能对其构成威胁[3-6]。

文献[3-6]对 REST的安全性进行了分析,并提出了针对REST的安全策略和安全模型,其主要方法是加强通信过程中的安全性,如通过身份认证、授权检测等手段保障消息传输过程的安全。但是这些策略和模型未能给出量化评估指标,对实际环境中Web服务的安全评估指导性不强。为此,本文在现有REST架构安全研究的基础上,提出了基于软件攻击图模型的REST安全架构和评估模型。

1 REST架构攻击图模型构造

1.1 攻击图

攻击图是评价网络系统安全的一种常见模型,用来描述从攻击起始点到目标的所有攻击路径。它从攻击者的角度出发,综合分析所有配置信息和脆弱性信息,通过信息之间的全局依存关系,找出所有的可能攻击路径,并将其可视化,直观展示目标网络内各个脆弱性之间、脆弱性与网络安全配置之间的关系以及所产生的潜在威胁。攻击图主要由攻击状态和攻击行为组成[7-8]。

目前,国内外已有许多研究者对基于攻击图模型的网络安全进行了研究[9-10],并演变出很多类型,如文献[11]提出了状态攻击图和属性攻击图。状态攻击图显式地展示了所有可能的攻击路径,但攻击路径会随着目标规模和脆弱性数目的乘积呈指数增长,存在状态爆炸问题,不适于大规模网络;属性攻击图能够更紧凑地展示所有的攻击路径,但只能隐式地展示攻击路径,不便于直观理解。

鉴于基于REST架构的Web服务规模有限,本文采用状态攻击图来构建攻击模型。

以图3为例。源节点s需向目的节点t传输一个数据包,且传输时延要求为15 s。即在15 s内完成数据包的传输。图3中的蓝线表示从源节点s至目的节点t的HBSP路径。假定这个路径长度为100 m。

1.2 REST架构攻击预测

本文研究的主要目标是REST架构安全模型,其所处环境(包括主机、操作系统、Web服务器、数据库服务器及相关的支撑软件等)的安全不在研究范围之内。借用文献[9]所采用的网络入侵目标的可能性预测方法,基于REST架构的Web服务可能受到的攻击以下几种:

1)SQL注入攻击。

蒋雯丽拍《幸福来拍门》,演80年代特立独行的时尚女人江路,烫大波卷,穿束腰花裙子,满身绵软,靠在收发室的外墙打手机,讲着讲着,抬手,打了个哈欠。

客户端向服务端提交特定格式的数据,如果服务端未对数据进行检验,而直接将数据用于构造结构化查询语言(Structured Query Language,SQL)语句,攻击者则可未经授权而访问一些敏感信息,或对数据库执行如update、insert、delete等敏感操作[12],甚至可能取得系统管理权限。

2)跨站请求伪造(Cross-site Request Forgery,CSRF)攻击。

The pair-matching procedure is eventually accomplished by repeatedly maximizing Eq.(39)forThereafter,the estimated centralazimuth and elevation DOAscan be expressed as

1)CSRF攻击、网络嗅探的难度大大增加,只存在理论上的可能,其对应的权重值可按表1中的L0级取值。但是,一旦攻击成功,对系统保密性和完整性的破坏与图1相同,因此其后续攻击行为的权重值与图1相同。

3)网络嗅探攻击。

在环境保护督察方面,问题主要表现在以下几个方面:一是2016年1月以来,通过第一轮的督察,中央环境保护督察组形成了强大的震慑力。尽管如此,捂盖子的事情在各地仍然杜绝不了,如浙江湖州隐瞒填埋死猪事件,就是在中央环境保护督察组的干预之下于2017年被揭开盖子。有些地方把群众举报的案件说成是不属实的比例太高,很多真相的暴露和责任的追究仍然依靠领导的重视和媒体的曝光。如何建立让环境保护党内法规、国家法律法规自动启动和全天候运行的机制,是一个值得法学界、法律界深入研究的问题。二是环境保护督察的作用如何常态化,克服一阵风的缺陷,也是一个值得思考的问题。

如果采用了明文传输,攻击者可以通过网络嗅探的方式查看传输的信息。通过查看信息可能使其获取敏感数据,也可能使攻击者了解数据传输规则,进而使用SQL注入、CSRF等手段进行攻击。

图1中,攻击者从“初始状态”最多经过4步可到达“攻击成功”,因此其攻击可能性指标为V4(S0),攻击实现度指标为W4(S0)。将表2中的数据代入式(1)~(3)中,经迭代计算得出:

7)使用加密传输。

许多Web服务采用的是HTTP,在传输过程中可能会遭到HTTP劫持。攻击者通过HTTP劫持,可以查看、篡改传输的信息。通过查看信息可能使其获取敏感数据,也可能使攻击者了解数据传输规则,进而使用SQL注入、CSRF等手段进行攻击;通过篡改传输信息,可能实现信息欺骗、网站挂马等攻击。

5)重放攻击[12]。

攻击者发送大量重复的消息,超出服务器的处理能力,导致机器无法作出响应,甚至系统崩溃。

6)分布式拒绝服务攻击(Distributed Denial of Service,DDoS)。

攻击者操纵大量的主机对Web服务进行攻击,消耗系统资源,使得其无法提供正常的服务。

7)特大型有效载荷攻击[12]。

攻击者构造一个足够大的请求报文发送给服务器,使服务器对报文的解析、处理消耗大量的内存资源,甚至导致内存溢出。

8)未知漏洞攻击。

在没有时间同步机制的情况,网络运行1小时后,簇头和节点之间的最大累积误差达到近25 ms,即每秒6.9 μs误差。从图8可以看出,单个节点与簇头之间每隔两分钟的累积时钟偏差维持在一个稳定的范围内[14-16]。因此,节点可通过估算相对频率偏差在枪声事件发生后调整自身检测时间。

图1 中,椭圆用来表示攻击状态;有向边用来表示攻击行为;有向边上括号中的数字为攻击行为编号。为计算和论述方便,图1相对实际的攻击行为和攻击状态作了如下调整:

1.3 REST架构攻击图模型

根据对REST架构可能的攻击,可建立攻击图模型,如图1所示。

图1 REST架构攻击图模型Fig.1 REST architecture attack graph model

由于程序设计的原因,Web服务还可能存在一些未知的漏洞,这些漏洞也可能被攻击者利用。

1)由于未知漏洞可能对系统造成任何伤害,与木马造成的伤害相似,将其攻击行为指向了注入木马。

2)为简化攻击图,按照对信息系统的破坏程度,将攻击状态分为四类:保密性破坏、完整性破坏、可用性破坏及攻击跳板(以当前主机或系统为跳板,对其他主机或系统发起攻击)。

3)增加了“攻击成功”状态,只需计算从“初始状态”到“攻击成功”的各项安全性能指标,即可认为是REST架构的安全性能指标。

2 安全评估模型

文献[10]提出了基于马尔可夫链的攻击可能性指标和攻击实现度指标。攻击可能性指标,表示攻击者达到攻击目标的可能性,其值越大,攻击者到达攻击目标的可能性越大;攻击实现度指标,表示着成功实现攻击的可能性,其值越大,攻击者越容易实现攻击。

本文引用这两个指标对REST架构的安全性作评估,其主要计算公式有3个。

选择概率[10]如式(1):

其中:P(S0Si)是攻击者在状态S0时选择通过攻击行为Ai到可到达下一个状态Si的概率,Ai是指向第i个状态Si的攻击行为;i=1,2,…,n,n是S0的下一个状态的数量;ωi是Ai对应的攻击实现度层次等级的权重值,引用文献[10]的权重取值标准,可按弱点攻击实现度分级取值,如表1所示。

表1 弱点攻击实现度层次分级Tab.1 Level gradation of vulnerability attack realization

攻击可能性指标迭代公式[10]如式(2):

其中,Vn(Sm)是攻击可能性,n=0,1,…,N,攻击图中从攻击初始状态最多经过N步可到达攻击目标状态,令V0(S0)=0,V0(Si)=1,i=1,2,…,M - 1,M是攻击状态的数量,S0是初始状态,经过多次迭代后可计算出VN(S0),VN(S0),即攻击图的攻击可能性;P(SmSt)是攻击者在状态Sm时选择通过攻击行为Ai到可到达下一个状态St的概率;SUBSEQ(Sm)是从状态Sm出发经过一步跃迁可到达的所有状态的集合;RULES(Sm→St)是从状态Sm跃迁到St可选攻击行为的集合。

攻击实现度指标W4(S0)=0.064764

攻击实现度指标迭代公式[10]如式(3):

其中:Wn(S)是攻击实现度,n=0,1,…,N,攻击图中从攻击m初始状态最多经过N步可到达攻击目标状态,令W0(S0)=0,W0(Si)=1,i=1,2,…,M - 1,M 是攻击状态的数量,S0是初始状态,经过多次迭代后可计算出WN(S0),WN(S0),即攻击图的攻击实现度;P(SmSt)是攻击者在状态Sm时选择通过攻击行为 Ai到可到达下一个状态 St的概率;SUBSEQ(Sm)是从状态Sm出发经过一步跃迁可到达的所有状态的集合;RULES(Sm→St)是从状态Sm跃迁到St可选攻击行为的集合;E(Ai)是攻击行为Ai所对应的攻击实现度,在REST架构未采取任何安全措施时,其值可取表1中的权重值,即式(1)中的ωi。

根据每种攻击行为的难易程度,对照表1,图1所示攻击图中所有攻击行为的权重值如表2所示。

图1中,达到窃取数据、攻击跳板、损毁系统、拒绝服务四个状态时已完成了攻击的目标,可认为其100%可达到攻击成功的状态,因此攻击行为28、29、30、31的权重值全部取1.0。

(2)企业经营业绩,反映海外经营成效,具体指标如:被国外当地消费者所消费的海外销售额、海外子公司的销售总额、外国子公司运营收入总和等。

4)超文本传输协议(HyperText Transfer Protocol,HTTP)劫持攻击。

攻击可能性指标V4(S0)=0.189720

从式(3)可知,变压器效应产生的感应电动势对磁通门信号来说是非常大的噪声来源,所以在实际应用中一般选择如图1所示的差分结构磁通门传感器,该结构上下两个铁芯参数完全对称,激励线圈反向串联,因此激励绕组在磁芯中产生的磁场大小相等方向相反。但是被测磁场在两铁芯中分量大小方向均相同。所以在检测线圈上,激励产生的感应电动势互相抵消,而被测磁场呈两倍效果,则检测线圈上的感应电动势可表示为:

表2 REST架构攻击图攻击行为权重值Tab.2 Attack behavior weight value of REST architecture attack graph

3 REST架构安全设计

针对图1中的攻击状态和攻击行为,可采用多种措施进行安全防护。

1)服务端单项数据校验。

对服务端提交的数据项分别进行合规性校验,如通过正则表达式校验、长度校验等方式,并且不允许出现单引号,以及SQL中的特殊符号如“--”、“#”等。这种方法可有效防止SQL注入攻击和特大载荷攻击。

2)服务端整体数据校验。

以高分四号卫星影像和HJ-1B卫星影像重叠区作为实验验证区,采用分层随机采样的方式,随机选择512个验证点,基于临近时期高分一号卫星影像和图像间对比解译分析,逐点确定积雪覆盖情况,计算积雪识别精度、Kappa系数等统计值,对积雪覆盖精度进行统计,结果如表2.基于多时相高分四号卫星图像积雪提取结果的Kappa系数达到0.84,表明该方法生产的积雪覆盖产品与真值基准数据间具有很强的一致性、精度高.

向服务端提交数据前先对数据作整体校验,生成校验数据,然后将校验数据也加入到提交的数据中。服务端接收到数据后可首先检验数据的正确性。这种方法可有效防止HTTP劫持攻击,也可防护未能正确生成校验数据的CSRF攻击,从而增加CSRF攻击难度。

3)服务端状态检验。

REST本身具有无状态性,这就使得服务端难以发现重放攻击与DDoS攻击。为解决这两项问题,可以在服务端内存中以尽量小的内存占用量记录每个用户的状态。针对每次提交的请求,服务端可利用用户状态,通过适当的规则判断是否为攻击行为,从而减弱重放攻击与DDoS攻击对系统的影响。

NAT结果受脂肪血和溶血等干扰因素的影响[4],但是通过本试验数据可以看出,一定浓度的脂肪血和溶血对联检及鉴别的定性检测的干扰在一定程度上是可以接受的。在实际工作中,标本的采集、离心处理保存不当,均会造成核酸酶污染的假阳性或病毒核酸降解的假阴性,从而影响NAT结果的真实性,故标本的前处理关系到检验结果的准确与稳定。

4)禁止动态拼装SQL语句。

禁止使用提交的数据拼装SQL语句,而是使用参数化的SQL或者存储过程进行数据查询和增删改操作。这种方法可有效防止SQL注入攻击。

5)使用尽量低的权限连接数据库。

试验混凝土的水胶比统一为0.40,粗骨料和细骨料均分别为1 174 kg/m3及552 kg/m3。分别以粉煤灰掺量为水泥质量的0 %、20 %、30%、40 %和50 %替代水泥,以研究粉煤灰掺量对混凝土水、气体渗透性及其微观结构参数的影响。试验混凝土配合比见表2,粉煤灰的掺量百分比表示其替代水泥的质量比。

由图1可知,一旦系统被SQL注入成功,攻击者将对系统造成非常严重的破坏。一些严重损害,如损毁系统,通常是窃取了系统管理权限后造成的。如果连接数据库时使用了管理员权限,攻击者在SQL注入成功后将很容易获得系统权限。因此,在连接数据库时应使用尽量低的权限,以增加攻击者获取系统权限的难度,减少对系统的威胁。

6) 使用安全令牌[13]。

可以在执行比较敏感的功能前要求客户端先登录,登录时服务端随机生成一个令牌发往客户端。客户端在执行其他功能时必须提交该令牌。除合法的客户端外,攻击者很难获得该令牌,因此这种方法可有效防止CSRF攻击。

用来构成特殊疑问句的代词叫疑问代词。常用的有:who, what,which,whose,whom,在句中常作主语、宾语、定语、表语。

根据计算结果可知,采用湿法回收技术处理每吨废旧电池,LFP亏损 312.0元,三元材料则可盈利6 355.0元。因此,采用湿法回收技术处理三元材料动力电池获利更明显。

使用加密传输,如采用以安全为目标的 HTTP通道(HyperTextTransferProtocoloverSecure SocketLayer,HTTPS),可以有效防止网络网络嗅探攻、HTTP劫持等攻击。

8)分布式服务。

使服务端支持分布式应用模式,配合多台服务器主机,可有效减弱DDoS攻击对系统的影响。

4 安全REST架构评估

采用上述多种措施进行安全防护后,可形成安全REST架构。基于安全REST架构重新构建攻击图模型,如图2,其所有攻击行为的权重值及实现度如表3所示。

图2 安全REST架构攻击图模型Fig.2 Secure REST architecture attack graph model

表3 安全REST架构攻击图攻击行为权重值Tab.3 Attack behavior weight values of secure REST architecture attack graph

图2与图1的区别如下:

当正常用户通过访问Web服务使服务器或数据库改变其状态后(如某用户执行权限校验功能),非法用户可能通过其他客户端假冒该用户,并构造特定的数据提交给服务器,用以获取信息或使用某些功能。如果服务器未能分辨此数据是否来源于非法用户,就可能被窃取信息或受到其他损害。

重点水利项目建设加快推进。三座店、哈拉沁、美岱等水库工程基本完工,海勃湾水利枢纽初期下闸蓄水,扬旗山水库实现大坝截流,黄河近期防洪工程即将竣工,扎敦水库开工建设。黄河干流盟市间水权转让试点启动,一期工程开工建设。Z866项目和尼尔基水库下游灌区已报送国家发改委待核准,“引绰济辽”工程规划已经水利部批复,文得根水利枢纽及至乌兰浩特输水段工程项目建议书和绰勒水库下游灌区可研通过水利部审查。

2)HTTP劫持的难度大大增加,只存在理论上的可能,其对应的权重值可按表1中的L0级取值。即使HTTP劫持成功,其后将目标主机作为攻击跳板的难度也大大增加,只存在理论上的可能,因此攻击行为12的权重值可按表1中的L0级取值。

3)SQL注入攻击可被完全防范,在图2中将不体现。

4)重放攻击、特大载荷攻击与DDoS攻击对系统的影响被消弱,同等条件下通过这三个状态实现拒绝服务(可用性破坏)的可能性变小,故其对应的攻击实现度取值应减小。其中重放攻击和特大载荷攻击对系统的影响主要与主机性能有关,DDoS攻击对系统的影响主要与主机数量有关,不同的硬件环境将造成其攻击实现度的不同。在此将其攻击行为(图2中的攻击行为(14)、(15)、(16))对应的攻击实现度取为原值的一半。但是,实现这三种攻击并通过其达到可用性破坏所需的工具和方法并未改变,因此其对应的权重值不变,与图1相同。

根据图2,将表3中的数据代入式(1)~(3)中,经迭代计算得出:

攻击可能性指标V4(S0)=0.018519

攻击实现度指标W4(S0)=0.000750

与攻击图1相比,攻击可能性指标约为其1/10,攻击实现度指标约为其1/86,表明所提的安全防护措施起到了预想的作用。

5 结语

通过构造REST架构攻击图模型,可实现REST架构安全性能的量化评估。对攻击图中的攻击状态和攻击行为进行针对性防护后,其攻击可能性与攻击实现度均明显降低,表明了防护的有效性。在实际使用中,由于人力、资源、时间、环境等限制,可能只能采用本文所提出的部分防护措施,此时可通过重新构建攻击图模型,计算攻击可能性与攻击实现度指标,估算其安全性能。本文在构造攻击图过程中,对一些攻击状态和攻击行为作了简化;在评估过程中,对攻击状态的权重值与攻击实现度等参数的取值主要依据经验构造,并且仅从攻击可能性与攻击实现度指标两方面对安全性作了量化。在未来的研究中,可考虑更精细地构造攻击图,采用更科学的方式获取参数,并从更多维度进行量化评估,以更准确地衡量REST架构的安全性。

猜你喜欢
服务端攻击行为校验
癫痫伴发精神障碍患者攻击行为发生状况及高危因素
住院精神病人暴力攻击行为原因分析及护理干预
使用Excel朗读功能校验工作表中的数据
孤独症儿童攻击行为与病情严重程度、语言能力及智力水平的关系
新时期《移动Web服务端开发》课程教学改革的研究
基于三层结构下机房管理系统的实现分析
基于三层结构下机房管理系统的实现分析
电子式互感器校验方式研究
基于FPGA的CRC32校验查找表算法的设计
浅谈微电子故障校验