渗透测试|记一次实验室局域网的ARP欺骗

hacker4年前黑客资讯256

  起因

  某天中午午睡时,笔者被激烈的键盘和鼠标声音吵醒,发现实验室的同学在那边忘我地打LOL,顿觉不爽,于是决定整他一下。想了一下之后觉得就让他掉线一下作为惩罚好了。结合以往的理论知识,大家在同一个局域网中,用ARP欺骗显然是一个好办法,于是就有了本文接下来的故事。

  ARP欺骗理论

  首先先来整理一下关于ARP欺骗的理论知识。ARP欺骗[1](英语:ARP spoofing),又称ARP病毒(ARP poisoning)或ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让 *** 上特定电脑或所有电脑无法正常连接。

  在以太局域网内数据包传输依靠的是MAC地址,IP地址与MAC对应的关系依靠ARP表,每台安装有TCP/IP协议的主机(包括网关)都有一个ARP缓存表。该表中保存这 *** 中各个电脑的IP地址和MAC地址的对照关系。

  在正常情况下arp缓存表能够有效的保证数据传输的一对一性。但是ARP协议对应的ARP缓存表维护机制中存在不完善的地方,当主机收到一个ARP的应答包后,它并不验证自己是否发送过这个ARP请求,而是直接将应答包里的MAC地址与IP对应的关系替换掉原有的ARP缓存表里的相应信息。这就是导致arp欺骗的根本原因。

  简单总结一下,ARP欺骗大致可以分为以下三种:

  1、伪造主机

  欺骗源C把自己伪装成局域网内的另一台主机B,使得局域网内发往B的报文都流向了C。伪造主机的过程与伪造网关类似。

  

  图1:伪造主机

  图1中,我们假设局域网中有三台主机,分别是网关,欺骗源和被骗主机,他们的IP的MAC地址都标在图中了。欺骗源每隔一定的时间间隔就向网关发送一个ARP报文,内容为我的IP地址是192.168.1.3(被骗主机IP),我的MAC地址是BB-BB-BB-BB-BB-BB(自己的MAC地址)。这样当网关更新ARP缓存表的时候,就会把这个错误的IP和MAC映射关系登记在ARP缓存表中,下次当网关转发报文的时候就会把发送给被骗主机的报文发送给欺骗源。这反应到现实中就是被骗主机断网了。

  2、伪造网关

  欺骗源把自己(或者其他非网关主机)伪装成网关,向局域网内的被骗主机发送ARP应答报文。使得局域网内的主机误以为欺骗源的MAC是网关MAC地址。使得原本流向网关的数据都被错误地发送到欺骗源。其简单的示意图如图2所示:

  

  图2:伪造网关

  我们还是以上面三台主机的例子来解释,主机的IP与MAC都没有改变,但是这次欺骗源向被骗主机发送ARP报文,报文的内容为,我的IP是192.168.1.1(我是网关),我的MAC地址是BB-BB-BB-BB-BB-BB(欺骗源的MAC地址)。这样当被骗主机收到ARP报文后,会更新IP地址为192.168.1.1这一项的MAC为欺骗源的MAC。这样被骗主机向网关发送数据的时候其实都发给了欺骗源,这反应到现实中其实也是被骗主机掉线了。当然第二种情况经验证理论和实际情况有出入,下文会解释。

  3、双向欺骗

  第三种其实是上两种方式的结合,既欺骗网关又欺骗主机,达到双向欺骗的目的,这里就不再赘述。

  具体实施

  通过Windows API来构造ARP报文并发送也是可以的,但是感谢伟大的开源社区,我们可以使用winpcap或者其C#的封装Sharppcap来实现,这大大简化了我们的实现过程。事实上,本文并不打算介绍编程的细节,因为笔者认为明白原理之后,通过上述工具写出一个ARP欺骗工具并不是什么事儿。所以我们直接来看一下这个工具,如图3所示。

  

  图 3:ARP欺骗工具

  在开始ARP欺骗之前,我们先要扫描一下局域网内的所有主机,获取他们的IP地址和MAC的映射关系,这个可以通过ARP Request报文,一个一个扫描过去就可以了。

  然后选择其中一个IP(MAC)进行ARP欺骗就可以了。ARP风暴是笔者加的另一个功能,其原理是不断构造ARP Request报文来不停地询问局域网内的所有主机,让他们不断做出应答从而来耗尽局域网内的带宽资源,造成网卡的假象。但似乎是因为现在的交换机带宽足够大吧,并没有什么卵用。

  效果

  当使用ARP网关欺骗(即对应上文的伪造主机)时,效果非常理想,那个同学掉线了,且怎么都无法重连,非常着急……

  但是当使用ARP主机欺骗(即对应上文的伪造网关)时,效果超出的我的想象,实验室所有主机都掉线了,包括笔者的电脑。后来笔者分析了一下原因,理论上这个假的ARP Response报文(即笔者电脑伪装成网关给被骗主机发报文)是发送给那个被骗的主机的,其他主机应该是不会接收的。但是实际上,别的主机看到是从网关发送回来的ARP Response 报文,则不管是不是发送给自己的,都会接受下来,然后更新自己的ARP缓存表。确实,这么做是有其道理的,因为当网关的MAC地址发生给变时,局域网的主机应该之一时间更新ARP缓存表,而不是等到网关发送给你了你再更新,那就太晚了。

  结论

  笔者并不打算公开ARP欺骗工具和其代码,毕竟不是什么有用的工具,而且可以用来做坏事(当然有心的话自己写一个也很容易)。如果有兴趣交流的话笔者很乐意给个人发送一份^_^

  再提供一篇ARP欺骗的文摘供小伙伴们参考:http://www.secpulse.com/archives/6068.html

  仅做参考,请勿用于非法用途!

  也没想到有这么多人有兴趣研究这个,那就把源码放在下面的链接,大家自行下载吧,每个人都发一份太麻烦了。

  博客园下载链接:http://files.cnblogs.com/files/fantacity/SharpPcapTool.rar

  参考文献

  ARP欺骗http://zh. *** .net.ru/wiki/ARP%E6%AC%BA%E9%A8%99

  【原文 记一次实验室局域网的ARP欺骗安全脉搏Blackhold整理发布】

标签: 渗透测试

相关文章

赛博朋克防止黑客(赛博朋克2077防止被黑)

赛博朋克防止黑客(赛博朋克2077防止被黑)

赛博朋克2077黑客流入门攻略入侵协议与快速破解用法详解 在按下L1进行扫描的时候,可以对能够进战的敌人/潜在威胁/场景物件执行入侵协议,但有一些夜之城居民网络离线的话会无法上传入侵协议,只能直接进行...

通用电气ge公司招聘及市值(通用电气寻求出售GE Digital等数字资产)

据《华尔街日报》报导,美国通用电气公司(General Electric)已经为其数据业务流程的重要财产找寻顾客。这个工业生产综合型公司已经舍弃前CEO伊梅尔特(Jeff Immelt)的一项代表性方...

找黑客拿回wangle输的钱犯法吗-骇客还是黑客马字旁的

黑客中ATP中P是什么意思黑客找赌博人合作(网络赌博黑客)互联网的什么性是黑客攻击的弱点黑客软件qq(黑客软件qq盗号器下载)黑客要会什么技能模拟黑客网站网址(模拟黑客入侵的网址)电脑被黑客入侵有什么...

怎样进行电力企业的安全大检查评估

怎样进行电力企业的安全大检查评估

一、简述 电力工程重要信息内容基础设施建设网络信息安全立即危害金融业、电力能源、通讯、交通出行等其他国家重要基础设施建设安全性,关联国防安全、城市发展和需求侧改革,历年来全是网络战争和黑客攻击的优选...

紫色夹克搭配什么裤子好看吗(紫色夹克搭配分

紫色夹克搭配什么裤子好看吗(紫色夹克搭配分

今秋流行穿紫色,秋天还是流行轻薄外套,那么今期小编和各位整理出这5款轻薄外套,搭配这几条裤子超显气质,喜欢这种穿搭的女生们,跟着了解了解吧,喜欢紫色的妹子,千万不要错过了。 NO.1:紫色轻薄风衣外...

想要开蛋糕店?来看看这篇关于蛋糕店的创业项目策划书

如今伴随着经济发展的持续发展趋势,愈来愈多的人都逐渐喜爱自己创业。但是,自主创业并并不是大脑一热的事儿,還是必须历经仔细筹备才能够。针对创业人而言,挑选一个好的创业好项目是一个很重要的事,实际上,开一...