移动安全安全管理 应用案例 网络威胁 系统安全 应用安全 数据安全 云安全
当前位置: 主页 > 信息安全 > 安全管理 >

云计较做数据包阐发防御DDOS报复打击

时间:2013-06-22 14:48来源:TuZhiJiaMi企业信息安全专家 点击:
在云计较环境,云主机供给被要求的云办事,有时在收到大年夜量的要求时可能解体。这就是产生了拒尽办事(DoS)报复打击。它放正常常利用户不克不及正常拜候。DoS报复打击凡是采取IP棍骗的
Tags云计算(555)安全管理(325)数据包(2)防御DDOS攻击(1)  

  在云计较环境,云主机供给被要求的云办事,有时在收到大年夜量的要求时可能解体。这就是产生了拒尽办事(DoS)报复打击。它放正常常利用户不克不及正常拜候。DoS报复打击凡是采取IP棍骗的手法用来隐躲真实的报复打击源,同时使得报复打击源地址看起来都不不异。

  本文中我们供给了一个在云计较环境下防御DDoS报复打击的编制,这个新的跳数统计过滤的编制供给了一个在云计较环境下的自力收集 ,可以等闲的的避免DoS的解决方案。这个别例也能够或许降落正常常利用户云办事的不成用率,降落更新的数量,节流了计较时候。该编制摹拟了CloudSim Toolkit环境和响应的产生的成果。

  1、介绍

  云计较被定义为一种新型的计较情势,以可以动态扩大的虚拟资本在互联网上供给办事。高级的云计较手艺包含了,节流耗损,高可用和可扩大的特点。

  DoS 报复打击不在于经由过程点窜数据获得不法拜候,而是希看使方针的办事或全部收集解体,或是侵扰正常常利用户的拜候。DoS报复打击能在一个源或多个源倡议。多个源的报复打击被称为漫衍式拒尽办事报复打击(DDoS)。

  当把持系统寄望到某个办事的工作负载较高,它将分派更多的计较资本来应付增加的负载。报复打击者可以沉没一个单点的,系统根本的地址来达到使方针办事的全不成用目标。这些报复打击者比较典型的手法就是洪水报复打击,根基是由报复打击者倡议大年夜量的无意义的报文给某一肯定的在云上面开放的办事。每个要求城市被办事往措置以验证是不是为合法要求,这就使得每个总计要求城市占用必然量的工作负载。在洪水般的报复打击下凡是会造成办事器的拒尽办事。

  2、跳数计较

  当然跳数信息没有直接存储在IP头中,但它可以试用TTL字段计较出来。TTL在IP头中是一个8位的字段,开初是用来指定互联网上每个报的最大年夜生命周期的。每个中间的路由器会把颠末它的IP包在转发到下一跳前把TTL值减一。

  A.提取最终的TTL值

  当一个数据包达到目标地址提取TTL字段值的时辰,这个值被称为最终TTL值。跳数统计的挑战在于在目标地址只能看到最终TTL值。假定所有的把持系统都是用不异的TTL初始值的将会很简单,但实际他们并没有再初始TTL值上达成共叫。别的,因为把持系统对给定的IP地址可能会随时改变,我们就不克不及假定每个IP地址都利用一个不变的TTL初始值。

  B.研究TTL的初始值

  按照以上得出,大年夜大都现代的把持系统只选择利用几种初始TTL值,如 30,32,60,64,128和255.只有很少的互联网主机缘被豆割超越30跳以上,是以我们可以初步鉴定命据包的初始TTL值为在以上调集总大年夜于最终TTL值的最小数值。

  例如,假定最终TTL值为112,那么在可能的128和255当选择最小的是128为初始值。如许给出最终的TTL值就可以够找到初始的TTL值。初始TTL值可以由以下编制计较得出:

  Initial TTL=32 if final TTL <=32

  Initial TTL =64 if 32

  Initial TTL =128 if 64

  Initial TTL =255 if 128

  C.IP2HC表

  IP2HC表是一个在数据包源IP地址和这个IP的跳数做映照的表。这是一个以源IP地址为索引来匹配跳数信息。

  3、避免DoS报复打击的算法

  该算法利用跳数过滤机制,并且供给了一个在云计较环境中履行的明白思惟。

  这个算法需要在云上持续的监控经由过程收集的数据包,然后我们从监控到的TCP/IP包中提掏出SYN标识、TTL值和源IP信息。该算法辨认每个捕获的包的四元组的全部把持以下,

  假定SYN标识被设置,并且源IP地址在IP2HC表中存在,然后试用IP包的TTL值计较跳数。此刻查抄跳数是不是和存储的跳数是不是一致,假定不一致就更新这个IP地址对应的跳数字段的值。

  假定SYN标识被设置可是源IP地址在IP2HC表中不存在,那么就计较跳数,然后把源IP地址和对应的跳数作为新的条目添加到该表中。

  假定SYN标识没有被设置,并且IP地址存在于IP2HC表中,那么就计较跳数。假定跳数与IP2HC表中存储的对应跳数不符,那么可以鉴定这个包是子虚的或这个包是不法的。

  假定SYN标识没有被设置并且源IP地址不存在于IP2HC表中,这意味着这个包是子虚的,因为每个合法的IP地址都有一个可用的TCP连接信息记其实IP2HC表中的。

  这个检测算法提取往了每个IP包的源IP地址和最终TTL值。算法用猜测出初始的TTL值减往最终的TTL值来获得中间的跳数。源IP地址作为表的索引检索这个IP地址的准确跳数。假定某个数据包计较跳数和表中的匹配,这个包为可托的,反之这个包就比较像是子虚的。

  算法-1

  参考下面的标识:

  synflag = Syn bit of TCP packet.

  mcount =malicious packet counter.

  Tf= final value of TTL.

  Ti=initial value of TTL.

  伪代码以下:

  For each packet

  Set TTL = ExtractFinalValueOfTTL( );

  //get time-to-leave field of IP packet

  Set srcIp = ExtractSourceIP( );

  //get source IP address from IP packet

  Set synflag = ExtractSynBit( );

  //get Syn flag value from TCP packet

  If (synflag is set)

  {

  If (establish_tcp_connection( ))

  //true when connection established

  {

  If ( srcIp is exist in IP2HC table )

  {

  ComputePacket ( srcIp , TTL , synflag);

  // function call which filter the spoofed

  Packet

  }

  else //new connection packet

  {

  Hc=ComputeHopCount( TTL );

  //get hop-count value

  NewEntryInTable(srcIp,Hc);

  //Add entry into IP2HC table

  }

  }

  else

  {

  // ignore packet

  }

  }

  else //synflag is not set

  {

  If ( srcIp exist in IP2HC Table)

  {

  ComputePacket ( srcIp , TTL, synflag );

  // function call which filter the spoofed

  packet

  }

  else

  {

  ‘drop the packet’ //Packet is spoofed

  mcount++; // increment in malicious

  packet by 1

  }

  }

  ComputePacket ( string srcIp , int Tf , boolean

  synflag)

  {

  Hc=ComputeHopCount( Tf ); //get hop-count

  value

  Hs=RetreiveStoredHopCount(srcIp);

  //get stored hop-count value

  If ( Hc != Hs )

  {

  if( synflag is set)

  {

  UpdateTable ( srcIp , Hc);

  //update hop-count value in IP2HC

  table

  }

  else

  {

  ‘drop the packet’ //Packet is spoofed

  mcount++;

  // increment in malicious packet by 1

  }

  }

  else

  {

  ‘allow the packet’ // packet is legitimate

  }

  }

  int ComputeHopCount( int Tf )

  {

  Set Ti= InvestigateInitialTTL(Tf);

  return Ti - Tf; //return hop-count value

  }

  4、摹拟成果

  我们在CloudSim Toolkit上摹拟我们的算法,在云主机上已达到了1000 pps。尝试成果见表1,此中包含了包的SYN标识(Syn)和源IP地址(Src)的各类环境,Syn=0暗示SYN 标识没有被设置,Syn=1暗示SYN标识已被设置。一样Src标识当前源IP地址是不是在IP2HC表中。Src=0暗示条目不存在,Src=1暗示条目存在。

  第一个尝试包含了580(337+243,见表1)个歹意包,和173个新条目,并且只有83个条目被更新。相反,需要在表中需要被更新的包是130(Syn=1且Src=1)。所以有效包的(实际上已缩减)是47个(130-83)。总共缩减在表中更新数是30.15%(总共承诺的报数/所有包数),这比常规的编制改良了良多。

云计较做数据包阐发防御DDOS报复打击

  在对摹拟样本输进达到率为‘A’的计较时候的各类成果进行了阐发汇总为表2。

云计较做数据包阐发防御DDOS报复打击

  表2:样本输进

  图3中揭示了我们提出的编制可能节流的计较时候,在2,3,4的用样本里趋势有改变。样本2需要更多的时候,样本3和4因为依托于领受包的字段。计较时候是云收集机能衡量的相干身分。它进步了云主机的措置能力,可用资本损掉达到最小化。

云计较做数据包阐发防御DDOS报复打击

  图3:计较时候

  5、结论

  云计较愈来愈风行,可是跟着云的遍及利用,其安然标题问题也愈来愈较着。一个运安然的首要的威胁是漫衍式拒尽办事报复打击(DDoS)或是更加简单的拒尽办事报复打击(DoS)。进步资本的可用率,是很有需要供给一种防御DDoS报复打击的机制。此中一种防御编制就是跳数过滤编制(HCF)。本文揭示了一个版本的跳数统计编制,不只是检测歹意数据包也包含了更新IP的跳数表的机制。经由过程阐发TCP和谈的SYN标识削减了更新次数,也就节流了计较时候。

  原文地址:http://irnet.sg/irnet_journal/journal/IJCSEE/IJCSEE_Vol1Iss1/06.pdf

------分隔线----------------------------

推荐内容