ARP扫描局域网存活主机伪造源MAC和源IP的成功机制
在一次arp扫描渗透实验中,我突然很好奇为什么伪造了源mac和源ip仍然能达到扫描的目的,按道理来说数据包应该无法返回啊,原本的猜想是以为除了arp协议还有其他通信数据,经过实验并没有其他协议,成功的原因原来是广播机制。
实验准备:
Kali攻击机:
mac为00:0c:29:3a:3c:3b,ip为192.168.0.106
win10为被扫描机器:
mac为00-0C-29-4D-5B-DB,ip为192.168.0.104
第一次扫描:伪造源mac为未知mac
Kali端截图:
扫描成功
win10端截图:
总结:交换机在发回ARP报文时,原本我以为交换机会临时记录kali的mac地址为cd: cd: cd: cd: cd: cd,于是能够准确发回至Kali,但真实的情况是,Kali的真实mac并未改变,交换机记录状态也没有改变,而是面对未知的目的mac地址交换机采取了广播的发送逻辑(因为我在其他主机上也抓取到了同样的ARP报文),同时win10的动态arp地址表发生变化
第二次扫描:伪造源mac为已知某主机(192.168.0.103)的mac
Kali端截图:
扫描失败,无法探测存活与否
win10端截图:
失败总结原因:交换机在发回ARP报文时,由于已经知道192.168.0.103mac地址为bc-17-b8-1f-b1-89,所以便不再广播发包,Kali也就无法接收回来的包(这种状态和死亡主机相同而无法区分,导致扫描失败),同时win10的动态arp地址表会出现66.66.66.66和192.168.0.103的mac地址重复的情况
第三次扫描:伪造源mac为广播地址ff:ff:ff:ff:ff:ff
Kali端截图:
扫描成功
win10端截图:
总结:因此当伪造源mac地址为广播地址时,肯定能够扫描成功,但是扫描特征也太明显了吧哈哈哈
上述实验改变原IP不影响实验结论
总结针对上述实验的渗透和防御思路:
渗透方:
应采取随机源mac,MSF应该可以导入文本文件或者随机生成源mac,但是结果在理论上并不能完全相信,因为存在和某存活主机撞mac的几率,但是实际上可以相信,这个概率太小了吧
防御方:
当局域网内出现大佬arp协议时应引起警觉,尤其是广播地址作为源mac地址时基本可以实锤有攻击者在扫描了;
另外,就算源mac看起来像正常mac时,应当及时核查交换机mac地址表,假如大量的未知mac不在交换机地址表中时,也要警惕了