linux下的ARP攻击(kali)
这是我的学习总结,刚入坑网络安全,写的不好或者有什么错误的希望大佬们指正
首先了解ARP的作用以及原理:
ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP栈中的网络层,负责将某个ip地址解析成对应的MAC地址,ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的进行,当然还有最重要的一点 它一般只能在内网进行,无法对外网(互联、非本区域内的局域网)进行攻击。
ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。攻击者向电脑A发送一个伪造的ARP响应,告诉电脑A:电脑B的IP地址192.168.100.2对应的MAC地址是00-aa-00-62-c6-03,电脑A信以为真,将这个对应关系写入自己的ARP缓存表中,以后发送数据时,将本应该发往电脑B的数据发送给了攻击者。同样的,攻击者向电脑B也发送一个伪造的ARP响应,告诉电脑B:电脑A的IP地址192.168.100.1对应的MAC地址是00-aa-00-62-c6-03,电脑B也会将数据发送给攻击者。至此攻击者就控制了电脑A和电脑B之间的流量,他可以选择被动地监测流量,获取密码和其他涉密信息,也可以伪造数据,改变电脑A和电脑B之间的通信内容。
什么是ARP欺骗?
在局域网中,攻击者经过收到的ARP Request广播号,能够偷听到其它节点的 (IP, MAC) 地址, 黑客就伪装为A,告诉B (受害者) 一个假地址,使得B在发送给A 的数据包都被黑客截取,而A, B 浑然不知。这种情况是没有办法防止的,它的危害也不是很大。因为一般服务器通常不会和终端主机在同一个局域网。
废话不多说,直接上手
此次试验环境为靶机和ftp服务器之间的arp中间人
靶机 ip:10.90.100.53 mac:04:69:f8:db:75:6b
中间人kali ip:10.90.100.242 mac:00:0c:29:a7:16:35
FTP服务器 ip:10.90.100.68 mac:00:0c:29:bb:44:56
实验网络拓扑图
第一步:kali开启转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward
第二步:arp攻击前靶机ARP表中FTP服务器的mac地址
( 查看arp是否正常)
第三步:用arpspoof实现双向欺骗
对10.90.100.68进行欺骗,并且告诉它是10.90.100.53
第四步:在靶机上查看FTP服务器mac地址以验证是否欺骗成功
第五步:使用工具tcpdump监听ftp端口21端口并将所截获数据包导入到1.txt中(如没有1.txt,则自动新建)
tcpdump -nn -X -i eth0 tcp prot 21 > 1.txt
第六步:查看数据包并查找有用信息
防御方法: 将IP和mac地址双向绑定,设置为静态绑定