设为主页 | 加入收藏 | 繁體中文

小心遭遇来自半路的遭劫

  错误引导——DNS诱骗
  临近过年,一辆远程客车满载着归家的旅人们在高速公路上行驶着,此时已是深夜,旅客们多数都已进入梦境。司机发现前面不远处摆满了石块,另有一块指向报告公路旁岔路口的牌子写着:“因前方公路塌方,严禁车辆通过,请绕道。”司机迟疑了一下,把车驶进了岔路。不远处,几双不循分的眼睛正在注视着客车……
  中间人打击(Man-in-the-Middle Attack,简称“MITM打击”)是一种“直接”的入侵打击, 这种打击模式是通过种种技能本领将受入侵者控制的一台计算机虚拟安排在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。然后入侵者把这台计算机模仿一台或两台原始计算机,使“中间人”可以或许与原始计算机创建活动连接并容许其读取或修改传递的信息,然而两个原始计算机用户却认为他们是在相互通信。通常,这种“拦截数据——修改数据——发送数据”的过程就被称为“会话挟制”(Session Hijack)。
  DNS诱骗(DNS Spoofing),就是此中的一种惯用伎俩。打击者通过入侵DNS办事器、控制路由器等要领把受害者要访问的目标呆板域名对应的IP剖析为打击者所控制的呆板,如许受害者本来要发送给目标呆板的数据就发到了打击者的呆板上,这时打击者就可以监听甚至修改数据,从而收集到少量的信息。如果打击者只是想监听两边会话的数据,他会转发全部的数据到真正的目标呆板上,让目标呆板举行处理,再把处理效果发回到原来的受害者呆板;如果打击者要举行彻底的粉碎,他会伪装目标呆板返回数据,如许受害者吸收处理的就不再是原来盼望的数据,而是打击者所盼望的了。例如让DNS办事器剖析银行网站的IP为自己呆板IP,同时在自己呆板上伪造银行登录页面,那么受害者的真实账号和暗码就袒露给入侵者了。
  云云说来,这种打击理应是最强大最损伤的,然而实际上它却很少派上大用场,为什么?因为DNS诱骗的打击模型太理想了。在实际生存中,大部分用户的DNS剖析恳求均是通过自己的ISP办事器举行的,换句话说,就是体系在连接网络时会获取到ISP办事器提供的DNS办事器地点,全部剖析恳求都是直接发往这个DNS办事器的,打击者底子无处入手,除非他能入侵更改ISP办事器上DNS办事的剖析指向。以是这种伎俩在广域网上乐成的几率不大。
  固然,这种打击的乐成率也有例外存在,例如一个ISP办事器上存在Bind漏洞,打击者就能通过Bind漏洞进入办事器更改掉DNS剖析指向,甚至取得最高权限;另一种要领是入侵路由设备,修改内里的DNS办事器地点为自己控制的呆板地点,这种要领只能在用户呆板自身是通过路由器返回域名剖析的情况下才气乐成,多见于一些使用小区宽带连接Internet的用户,因为这种用户呆板的DNS地点通常必须指向小区宽带内部的某台办事器地点或者交给路由举行转向,这工夫只要打击者入侵了路由或者那台干系到全部人的办事器修改掉DNS记录,整个小区用户的网络都完了。固然,打击者不能把全世界网站都伪造到他硬盘上,他只需要改几个重要商务站点的指向即可,如许便可招致用户访问某些商务站点时被转向到打击者的呆板去。但是,这种打击伎俩同时对打击者自身也是一种损伤:如果小区内有许多用户都访问这些商务站点,则少量数据恳求会猖獗消耗打击者的呆板资源,打击者非但不能及时处理数据,更是面对着呆板瘫痪和袒露自己的双重损伤。
  聪明的打击者不会选择去入侵DNS办事器,他们会想办法更换掉Hosts文件,从而引导受害者走向自己的呆板……
  不可信托的陌生人——会话挟制
  客车沿着岔路行驶下去,怎料道路越来越颠簸,底子不像能开回高速公路的样子,满车的旅客被晃醒了,不住的诉苦起来。司机内心也有点发慌,客车在荒山野岭停了下来。在众人手足无措的工夫,车外有几个看似本地居民的人恳求搭个便车外出,并表现自己懂得出去的道路。司机固然半信半疑,可终究照旧翻开了车门。谁也没有发觉到那几个人的嘴边正浮现出一丝凶险的笑容……
  “会话挟制”(Session Hijack)是一种联合了嗅探以及诱骗技能在内的打击本领。狭义上说,会话挟制就是在一次正常的通信过程中,打击者作为第三方到场到此中,或者是在数据里参加其他信息,甚至将两边的通信模式黑暗转变,即从直接接洽酿成有打击者到场的接洽。简略地说,就是打击者把自己插入到受害者和目标呆板之间,并设法让受害者和目标呆板之间的数据通道变为受害者和目标呆板之间存在一个看起来像“直达站”的代理呆板(打击者的呆板)的数据通道,从而干涉两台呆板之间的数据传输,例如监听敏感数据、更换数据等。由于打击者曾经介入此中,他能方便晓得两边传输的数据内容,还能凭据自己的志愿去左右它。这个“直达站”可以是逻辑上的,也可以是物理上的,关键在于它能否获取到通信两边的数据。
  典型的会话挟制是使用TCP/IP的事情原理来设计打击的。在谈TCP/IP会话挟制前先表明一下TCP/IP用于确认数据传输的判断机制。许多人一定都有过如许的疑问:我们曾经晓得TCP/IP是使用点对点(Point to Point)连接举行数据传输的,但是它是如何晓得上一条数据和下一条数据存在的接洽的呢?如果我发送数据后失慎掉线,恰好另一个人接着我的IP地点连接到了Internet,那他会不会收到办事器返回给我的数据?其实只要看过TCP/IP协议的书籍就会明确,TCP协议采用了两种条件来确认每条曾经创建连接的TCP通道,第一个是底子连接确认,即TCP连接中的四大必备条件:源IP、源TCP端口、目标IP、目标TCP端口;第二个条件是“序号标识”(Sequence numbers,SEQ),它们是成对出现的,分为“Sequence”(SEQ,序号字段)和“Acknowledgement Sequence”(ACK SEQ,确认序号字段),TCP每次创建一个连接时,会给两边指定如许一条规则:序号字段指出了本报文中传送的数据在发送主机所要传送的整个数据流中的次序号,而确认序号字段指出了发送本报文的主机盼望吸收的对方主机中下一个八位组的次序号。(这里可能比力难明确,可以举个不专业的例子表明:流水线上的工人被规定好了每人负责安置8个差别的零件,则每次传输到他们手上的都应该是只留下给他们安置的8个零件位置,这就是序号字段;而下一个工人则被规定在前一个工人的底子上安置另一个部分的8个零件,这就是确认序号字段,如果这个工人发现传到自己手上的产物多了或少了零件,则阐明前一个工人出错,这个产物就被从流水线提取出来返工,这就是TCP对序号的精密审查和丢弃制度)。TCP云云谨慎,就是为了避免出现前面提到的假定,固然这种假定发生的几率很小(需要满足TCP的底子连接确认条件),但是它总偶然机发生的。然而不幸的是,这对序号是可以预测的,因为TCP必须遵从以下守则:一台主机行将发出的报文中的SEQ值应即是它所刚收到的报文中的ACK SEQ值,而它所要发送报文中的ACK SEQ值应为它所收到报文中的SEQ值加上该报文中所发送的TCP数据的长度,即两者存在“本次发送的SEQ=前次收到的ACK SEQ;本次发送的ACK SEQ=前次收到的SEQ+本次发送的TCP数据长度”的接洽。晓得这个纪律后,打击者就不难提倡“中间人打击”了,他只需要设法监听到受害者TCP连接中的第一个条件(源IP、源TCP端口、目标IP、目标TCP端口),就可以得知此中一台主机对将要收到的下一个TCP报文段中SEQ和ACK SEQ值的要求,如许打击者就能在原来的正当主机收到另一台正当主机发送的TCP报文前凭据所截获的信息向该主机发出一个切合条件二(序号标识)的TCP报文,如果该主机先收到打击报文,就会受到诱骗而把正当的TCP会话创建在打击主机与被打击主机之间,而且打击报文会让被打击主机对下一主要收到的TCP报文中的确认序号值的要求发生变革,最终使另一台正当的主机向被打击主机发出的报文被回绝,这种模式被称为“自动挟制”。换句话说,就是此中一方正当主机被打击者打劫了连接的权限,而打击者却成为了正当的连接方之一。这种会话挟制让打击者避开了被打击主机对访问者的身份验证和安全认证,从而使打击者直接进入对被打击主机的的访问状态,因此危害严重。例如,你刚向某站点发送完账户暗码,就被打击者争先冒充你的TCP连接上了,那你的损失可就难意料了。不过,会话挟制对网络情况的一点要求可以让各人松口气,它必须在使用MAC寻址的网络情况中才气发挥作用,必要时还要配合ARP协议诱骗,能同时满足这两个条件的只要局域网。而广域网不是靠MAC地点来查找计算机的,因此打击者很难从现有的广域网结构里插入到某两台计算机之间。
  但是,上面的MITM打击就没那么好运了……
  披着羊皮的狼——不再可靠的代理办事器
  网络上存在许多种种各样的代理办事器,此中的一些,是披着羊皮的狼……客车在一个“老乡”的指引下徐徐前进,司机这工夫却感触有点不合错误劲,因为这条小路越来越泥泞!他还没来得及思考更多,就以为车子颠簸了一下,再也动弹不得:车轮陷进水坑里了!满车旅客沸腾起来,那几个“老乡”很有自大的说:“我们下车去找人来推!”遂跳下车向后方走去,只留了两个人在车外“守”着。司机趁那两个人看着后方抽烟的工夫偷偷拨打了110……过了一下子,旅客们喝彩起来,因为他们看到一群“老乡”拿着锄头棍棒等东西走过来。但是只过了很短的工夫,喝彩声酿成了恐惧的叫声:那群人八面威风的,而且有些人手上还拿着砍刀!这些人不是什么“老乡”,而是一伙歹徒!司机明确自己从一开端就中了骗局,忙开足马力前进,可是无奈车轮只能在坑里空转……
  代理办事器(Proxy Server)的存在曾经是很长久的究竟了,而且由最后的几个基于TCP/IP协议的代理软件如HTTP、SMTP、POP3和FTP等生长到现在SSL、SOCK4/5以及其他未知的代理类型,可谓给一些特别用途者提供了极大的方便。例如,通过代理跨过某些办事器的IP屏蔽,从而浏览到原来不能看到的信息;或者畏惧自己IP袒露被对方入侵而探求层层代理把自己包裹起来;另有些是因为体系不支持Internet共享而自愿采用代理软件来让内部网络的计算机能正常连接Internet……别的另有许多缘故原由,让种种代理办事器耐久不衰。
  然而,广大网民在享受着代理的方便时,却未曾想过,任何事情都是要支付代价的……
  这要从代理办事器的事情原理谈起。代理办事器相当于一个透明的数据通道,它凭据客户发来的“要求连接某计算机”的恳求数据,进而用自己本身作为原客户呆板去连接目标计算机,在目标计算机返回数据后,再发送给原客户,这时目标计算机获取到的是代理办事器的IP,而不是原客户IP,从而实现突破IP屏蔽或者让对方无法获取你的真实IP。
  简略举个HTTP代理办事器事情的原理:IE发送一个包罗目标URL的HTTP恳求,代理办事器吸收并析出HTTP报文里的目标URL和相关参数,然后把这个URL作为一次标准的HTTP连接过程与目标网站连接,获取目标网站返回的数据后缓冲到代理办事器的硬盘上,再把这些数据返回给客户端。
  恳求连接目标URL------> 连接目标办事器------->
  客户端-------------------------代理办事器------------------------目标办事器
  <-----返回数据----(缓冲) <-------------返回数据
  别的协议的代理事情模式也都差不多,代理办事器充当了一个数据转向的事情站,相当于一个专门负责数据转发的“勤劳工人”。
  然而,再忠实的狗也会偷吃的,代理办事器偶然间也并非完全透明的……
  不晓得各人在看我描述代理办事器原理的工夫,有没有产生一个“似曾相识”的感觉?没错!代理办事器的事情模式,正是典型的“中间人打击”模型!代理办事器在此中充当了一个“中间人”的脚色,通讯两边计算机的数据都要通过它!因此,“代理办事器举行的‘中间人打击’”渐渐成为实际,相对于其他“中间人打击”要领,这种使用代理办事器暗渡陈仓的做法的确天衣无缝,打击者可以自己写一个带无数据记录功效的代理办事程序,放就任意一台稳定的肉鸡甚至直接在自己呆板上,然后通过一些社会工程学本领让受害者使用这个做了手脚的“代理办事器”,便可守株待兔了。这种要领最让人不设防,因为它使用的是人们对代理的无条件信托和贪自制的想法,使得一个又一个“兔子”自动撞了下去,在享受这顿彷佛美味的“胡萝卜”的同时却不晓得安全正在渐渐阔别自己。
  如果制造这个代理办事器的打击者仅限于窥伺数据,那么受害者的损失可能还能估量,但是如果打击者在目标办事器返回的数据里参加一个带有木马程序的数据呢?例如在HTTP代理返回的HTML报文里参加一个MIME打击漏洞代码,而受害者的计算机恰好没有打相应补丁,那么由此带来的损失就难以估量了,而且计算机技能不高的受害者也难以查出木马真相是从那边来的,因为很少有人猜疑代理办事器自身会有题目!
  回绝“中间人”——我们该怎样做
  谈了这些MITM打击,许多用户会以为恐惧,其实,攻防为一家,有攻就有防,只要步伐精确,MITM打击是可以预防的。
  对于DNS诱骗,我们要记得检查本机的HOSTS文件,以免被打击者加了恶意站点出来;其主要确认自己使用的DNS办事器是ISP提供的,因为现在ISP办事器的安全事情照旧做得比力好的,一样平常水平的打击者无法乐成进入;如果是寄托网关设备自带的DNS剖析来连接Internet的,就要拜托办理员定期检查网关设备能否遭受入侵。
  至于局域网内种种各样的会话挟制(局域网内的代理除外),因为它们都要联合嗅探以及诱骗技能在内的打击本领,必须寄托ARP和MAC做底子,以是网管应该使用互换式网络(通过互换机传输)代替共享式网络(通过集线器传输),这可以低落被窃听的机率,固然如许并不能革除会话挟制,我们还必须使用静态ARP、捆绑MAC+IP等要领来限定诱骗,以及采用认证方式的连接等。
  但是对于“代理中间人打击”而言,以上要领就难以收效了,因为代理办事器原来就是一个“中间人”脚色,打击者不需要举行任何诱骗就能让受害者自己连接下去,而且代理也不触及MAC等因素,以是一样平常的防范步伐都不起作用。笔者认为,除非你是要干坏事,或者IP被屏蔽,或者天生对网络有着恐惧,否则照旧不要整天找一堆代理来隐藏自己了,没必要的。常在河边走,纵然遇上做了手脚的代理也难发觉。
 


    文章作者: 福州军威计算机技术有限公司
    军威网络是福州最专业的电脑维修公司,专业承接福州电脑维修、上门维修、IT外包、企业电脑包年维护、局域网网络布线、网吧承包等相关维修服务。
    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和声明。否则将追究法律责任。

TAG:
评论加载中...
内容:
评论者: 验证码: