重放攻击与中间人攻击

重放攻击与中间人攻击

大概有多半年没有更新博客了吧,本来还想保持最起码一月一更的 ,但是考研复习后面越来越紧张,一直到今天,最后一科专业课考完,绷了一年的紧张的神经,终于可以稍微缓一缓了,本想着先休息一下,缓个两三天再开始总结的,但是突然发现:之前一直紧张的复习,现在突然闲下来不知道干嘛,那索性就从今天开始总结吧,虽然考得不咋样,数学有点凉~哎,不说了,直接到今天的主题:重放攻击和中间人攻击! 专业课被这个题目卡了一下,重放攻击,在书上看到过,但是没太深入去了解,中间人攻击,根本不知道是啥,今天遇到了,就直接详细了解一下吧,问题不就是要一个一个解决的么

重放攻击

又称为(ReplayAttacks)又称重播攻击、回放攻击或新鲜性攻击(FreshnessAttacks),是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。
它是一种攻击类型,这种攻击会不断恶意或欺诈性地重复一个有效的数据传输,重放攻击可以由发起者,也可以由拦截并重发该数据的敌方进行。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给认证服务器。从这个解释上理解,加密可以有效防止会话劫持,但是却防止不了重放攻击。重放攻击任何在网络通讯过程中都可能发生,是计算机世界黑客常用的攻击方式之一

典型例子

重放攻击与 cookie

我们监听http数据传输的截获的敏感数据大多数就是存放在cookie中的数据。其实在web安全中的通过其他方式(非网络监听)盗取cookie与提交cookie也是一种重放攻击。我们有时候可以轻松的复制别人的cookie直接获得相应的权限。关于cookie,以后再单独讨论,当查阅文献的时候,才知道差的太多了!(这里简单介绍一下,Cookie,俗称小甜饼,给的比喻也是相当的形象,它是一小段文本信息,伴随着用户请求页面在web服务器和浏览器之间传递)

防御方案

时间戳

“时戳”──代表当前时刻的数

基本思想──A接收一个消息当且仅当其包含一个对A而言足够接近当前时刻的时戳

原理──重放的时戳将相对远离当前时刻

时钟要求──通信各方的计算机时钟保持同步

处理方式──设置大小适当的时间窗(间隔),越大越能包容网络传输延时,越小越能防重放攻击

适用性──用于非连接性的对话(在连接情形下双方时钟若偶然出现不同步,则正确的信息可能会被误判为重放信息而丢弃,而错误的重放信息可能会当作最新信息而接收)

序号

通信双方通过消息中的序列号来判断消息的新鲜性(到这,应该对于重放攻击的另一个名称,新鲜性攻击就更容易理解了!)

要求通信双方必须事先协商一个初始序列号,并协商递增方法
提问与应答

“现时”──与当前事件有关的一次性随机数N(互不重复即可)

基本做法──期望从B获得消息的A 事先发给B一个现时N,并要求B应答的消息中包含N或f(N),f是A、B预先约定的简单函数

原理──A通过B回复的N或f(N)与自己发出是否一致来判定本次消息是不是重放的

时钟要求──无

适用性──用于连接性的对话

重放攻击是对协议的攻击中危害最大、最常见的一种攻击形式。
接下来,介绍一下中间人攻击,拿他们来比较一下

中间人攻击

中间人攻击(Man-in-the-MiddleAttack,简称“MITM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为**“中间人”。然后入侵者把这台计算机模拟一台或两台原始计算机,使“中间人”能够与原始计算机建立活动连接并允许其读取或修改传递的信息,然而两个原始计算机用户却认为他们是在互相通信。通常,这种“拦截数据——修改数据——发送数据”的过程就被称为 “会话劫持”
在网络安全方面,MITM攻击的使用是很广泛的,曾经猖獗一时的
SMB会话劫持、DNS欺骗等技术都是典型的MITM攻击手段**。在黑客技术越来越多的运用于以获取经济利益为目标的情况下时,MITM攻击成为对网银、网游、网上交易等最有威胁并且最具破坏性的一种攻击方式。

防御手段

  • 对于DNS欺骗,要记得检查本机的HOSTS文件,以免被攻击者加了恶意站点进去;其次要确认自己使用的DNS服务器是ISP提供的
  • 至于局域网内各种各样的会话劫持(局域网内的代理除外),因为它们都要结合嗅探以及欺骗技术在内的攻击手段,必须依靠ARP和MAC做基础,所以网管应该使用交换式网络(通过交换机传输)代替共享式网络(通过集线器传输),这可以降低被窃听的机率。
  • 当然要想根除根除会话劫持,还必须使用静态ARP、捆绑MAC+IP等方法来限制欺骗,以及采用认证方式的连接等。

重放攻击和中间人攻击的联系和区别

相同点:

  • 两种攻击手段都是采用欺骗的方式

区别:

  • 重放攻击是攻击者获取客户端发送给服务器端的包,不做修改,原封不动的发送给服务器用来实现某些功能。中间人攻击是攻击者把自己当作客户端与服务器端的中间人,客户端发送的信息会被攻击者截取然后做一些操作再发送给服务器端,服务器端响应返回的包也会被攻击者截取然后再发送给客户端
  • 重放攻击是欺骗服务器,比如说客户端发送给服务器端一个包的功能是查询某个信息,攻击者拦截到这个包,然后想要查询这个信息的时候,把这个包发送给服务器,服务器就会做相应的操作,返回查询的信息。中间人攻击是欺骗双方。相对于客户端来说攻击者是服务器端,相对于服务器段来说攻击者是客户端,两边都欺骗,从而获取所有的信息。

这些大概能够帮助理解一下这两种攻击方式了!

重放攻击与中间人攻击_第1张图片

你可能感兴趣的:(计算机网络)