中国IDC圈6月24日报道:在云计算环境,云主机提供被请求的云服务,有时在收到大量的请求时可能崩溃。这就是发生了拒绝服务(DoS)攻击。它放正常用户不能正常访问。DoS攻击通常采用IP欺骗的手法用来隐藏真正的攻击源,同时使得攻击源地址看起来都不相同。

本文中我们提供了一个在云计算环境下防御DDoS攻击的方法,这个新的跳数统计过滤的方法提供了一个在云计算环境下的独立网络 ,可以容易的的防止DoS的解决方案。这个方法也能够降低正常用户云服务的不可用率,降低更新的数量,节省了计算时间。该方法模拟了CloudSim Toolkit环境和相应的产生的结果。

一、介绍

云计算被定义为一种新型的计算形式,以可以动态扩展的虚拟资源在互联网上提供服务。高级的云计算技术包括了,节省消耗,高可用和可扩展的特性。

DoS 攻击不在于通过修改数据获得非法访问,而是希望使目标的服务或者整个网络崩溃,或者是扰乱正常用户的访问。DoS攻击能在一个源或者多个源发起。多个源的攻击被称为分布式拒绝服务攻击(DDoS)。

当操作系统注意到某个服务的工作负载较高,它将分配更多的计算资源来应付增加的负载。攻击者可以淹没一个单点的,系统基础的地址来达到使目标服务的全不可用目的。这些攻击者比较典型的手法就是洪水攻击,基本是由攻击者发起大量的无意义的报文给某一确定的在云上面开放的服务。每一个请求都会被服务去处理以验证是否为合法请求,这就使得每个共计请求都会占用一定量的工作负载。在洪水般的攻击下通常会造成服务器的拒绝服务。

二、跳数计算

虽然跳数信息没有直接存储在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地址为索引来匹配跳数信息。

三、防止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

}

四、模拟结果

我们在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%(总共允许的报数/所有包数),这比常规的方法改善了很多。

在对模拟样本输入到达率为‘A’的计算时间的各种结果进行了分析汇总为表2.

表2:样本输入

图3中展示了我们提出的方法可能节省的计算时间,在2,3,4的用样本里趋势有变化。样本2需要更多的时间,样本3和4因为依赖于接收包的字段。计算时间是云网络性能衡量的相关因素。它提高了云主机的处理能力,可用资源损失达到最小化。

图3:计算时间

五、结论

云计算越来越流行,但是随着云的广泛使用,其安全问题也越来越明显。一个运安全的主要的威胁是分布式拒绝服务攻击(DDoS)或者是更为简单的拒绝服务攻击(DoS)。提高资源的可用率,是很有必要提供一种防御DDoS攻击的机制。其中一种防御方法就是跳数过滤方法(HCF)。本文展示了一个版本的跳数统计方法,不只是检测恶意数据包也包括了更新IP的跳数表的机制。通过分析TCP协议的SYN标识减少了更新次数,也就节省了计算时间。

关注中国IDC圈官方微信:idc-quan 我们将定期推送IDC产业最新资讯

查看心情排 行你看到此篇文章的感受是:


  • 支持

  • 高兴

  • 震惊

  • 愤怒

  • 无聊

  • 无奈

  • 谎言

  • 枪稿

  • 不解

  • 标题党
2025-02-25 14:34:54
2025-01-14 16:51:00
2024-12-04 11:45:49
云资讯 亚马逊推出新一代基础模型Amazon Nova
亚马逊的新一代基础模型提供前沿智能和行业领先的性价比,Amazon Nova模型扩展了Amazon Bedrock中针对企业客户提供的丰富且强大的基础模型选择。 <详情>
2024-11-19 19:22:36
国内资讯 政策驱动下“AI + 云网安”服务发展:第一线的战略布局与实践
针对企业大模型训练与推理,第一线正探索构建AI原生超互联总线架构。 <详情>
SpaceX斥资28亿美元 为数据中心采购燃气轮机
2026-05-22 10:11:28
AI行业最大的错配:我们都在为Token买单,却还按囤卡思维投资
2026-05-22 09:50:00
商汤林海谈AIDC:“通用标准”已不再是最优解,“适用高效”成为新法则
2026-05-21 10:48:23
东南亚AI数据中心迎“寒武纪时刻”,当前面临最大挑战是什么?
2026-05-21 10:15:26
5月27日•曼谷,DIFGC 2026•Thailand正式启幕!500位产业领袖齐聚,聚焦AI数据中心本地化交付与绿色能源协同
2026-05-21 09:24:00
35小时智能体自主进化!千问旗舰模型Qwen3.7-Max重磅发布
2026-05-20 11:22:17
阿里发布基于新一代真武芯片的超节点服务器,可支持海量Agent并发推理
2026-05-20 11:08:24
申报倒计时|2026中国智算产业年度评选活动即将截止
2026-05-20 09:42:00
投资2.5亿美元 中资企业将在马来西亚开发NexQuantum AI数字园区
2026-05-20 09:23:36
先场景,后全球:中企通信助力中企AI竞争力出海
2026-05-19 14:00:10
DayOne计划在新加坡与美国同步IPO
2026-05-19 10:28:12
一期总投资3.36亿元,中国电信(济南)智算中心正式发布
2026-05-19 09:26:41
日本最大单体数据中心10亿美元出售
2026-05-18 13:31:44
总投资20亿!中国电信天府云计算中心建设正式启动
2026-05-18 09:30:33
190亿算力租赁大单;金融机构采购飞腾/鲲鹏/海光;运营商174亿「押注」Token工厂;三江源EPC「废标」……|算力情报局Vol.07
2026-05-18 09:30:00