当前位置:朝夕网 » 数码科技 » 重放攻击那些事

重放攻击那些事

从这个解释上理解,加密可以有效防止会话劫持,但是却防止不了重放攻击。重放攻击在任何网络通讯过程中都可能发生,也是计算机世界黑客常用的攻击方式之一。短线轰炸,是重放攻击中最为直接的利用形式。根据重放攻击的特点,解决之道也非常明显:确定请求是否

单位:中国移动智慧家庭运营中心

Part 01

●什么是重放攻击 ●

根据百科的解释:重放攻击(Replay Attacks)又称重播攻击、回放攻击或新鲜性攻击(Freshness Attacks),是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。

它是一种攻击类型,这种攻击会不断恶意或欺诈性地重复一个有效的数据传输,重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器。从这个解释上理解,加密可以有效防止会话劫持,但是却防止不了重放攻击。重放攻击在任何网络通讯过程中都可能发生,也是计算机世界黑客常用的攻击方式之一。

Part 02

●重放攻击的分类●

根据重放消息的接收方与消息的原定接收方的关系、重放消息的来源和消息的去向,可以将重放攻击分类如下:

图1:重放攻击的分类

举例来说说现实中比较常见的重放攻击:

短线轰炸,是重放攻击中最为直接的利用形式。当系统端没有有效校验请求的时间差或只在前端做请求限制的时候,就可以使用无限的请求短信来达到短信轰炸的目的。

暴力破解是重放攻击中典型的非只重放而达到的攻击类型,而是利用重放这个动作来达到暴力破解的目的。当系统端未做请求验证和错误次数限制时,就可以根据字典或者设定的字符串来破解特定的参数。

重放支付往往出现在支付订单的时候,支付到最后一个请求包时,系统收到请求就会确定已支付下单。这时候如果系统没有做出准确效验,就会根据是否支付成功的验证字段来确定下单。多次重放的时候,系统会根据暂无失效且正常的请求下单,来达到使用同一请求多次获取成功的订单。

Part 03

●重放攻击的危害●

重放攻击本质上不是一种“攻击”,它的主要危害在于本该属于自己的数据包,被修改消息去向或多次执行。比如:根据消息的来源在协议中重放消息,破坏认证的安全性;或者改变消息的去向,将消息发送给指定的接收方等等。

图2:测试重放攻击

图3:对比原始回执包与重放回执包

Part 04

●如何防御●

根据重放攻击的特点,解决之道也非常明显:确定请求是否已经存在过请求中时间戳与服务器,存在过拒绝,新请求则放行。目前主流的防御方法和优缺点对比如下:

-加随机数

数据传输时在每条消息中添加随机数,通信双方通过消息中的随机数来判断消息的新鲜性。该方法优点是认证双方不需要时间同步,双方记住使用过的随机数,如发现报文中有以前使用过的随机数,就认为是重放攻击。

-加时间戳

“时戳”代表当前时刻的数,数据传输时在关键消息内加入时间戳来保证消息的时鲜性。只有当消息的时戳与本地时间差值在一定范围内时,接收方才接收这条消息。

-加流水号

数据传输时在每条消息中添加序列号请求中时间戳与服务器,通信双方通过消息中的序列号来判断消息的新鲜性。要求通信双方必须事先协商一个初始序列号,并协商递增方法。通讯中只要接收到一个不连续的序列号报文,就认定有重放威胁。

-其他方法

1)挑战/应答:每次数据传输时,发送端都给接收端发送一个不同的“挑战”字串,接收端收到这个“挑战”字串后,做出相应的“应答”。

2)一次性口令:每次数据传输时,发送端都给接收端发送一个不同的“口令”,通信双方通过消息中的口令来判断消息的新鲜性。

表1:各种防御方法的优缺点对比

Part 05

●总结●

重放攻击在任何网络通讯过程中都可能发生,尤其在关键信息基础设施通讯网络中重放攻击的危害巨大。由于网络环境的复杂性,我们有必要对重放攻击进行了解,做到防范于未然。

本文到此结束,希望对大家有所帮助!

免责声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如有侵权行为,请第一时间联系我们修改或删除,多谢。朝夕网 » 重放攻击那些事