Ettercap之ARP+DNS欺骗
1、网络攻击拓扑环境
网关:192.168.133.2
攻击者:192.168.133.128
受害者:192.168.133.137
2、原理讲解
ARP欺骗
简介:ARP(Address Resolution Protocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(也就是相当于OSI的第三层)地址解析为数据链路层(也就是相当于OSI的第二层)的物理地址(注:此处物理地址并不一定指MAC地址)。
原理:主机A要向主机B发送报文,会查询A本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输。如果未找到,则A广播一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。
ARP欺骗是黑客常用的攻击手段之一,ARP欺骗分为二种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。
手段:一是arpspoof泛洪,溢出arp换成表;而是欺骗受害者;
arp命令:
arp –a:查看arp缓存信息
arp –d:删除arp缓存信息
arp –s:添加一个arp响应
DNS欺骗
简介:DNS欺骗就是攻击者冒充域名服务器的一种欺骗行为。
原理:如果可以冒充域名服务器,然后把受害者查询域名的IP地址设为攻击者的IP地址,这样的话,用户上网就访问域名时就会访问攻击者的主页,而不是用户想要取得的网站的主页了,这就是DNS欺骗的基本原理。DNS欺骗其实并不是真的“黑掉”了对方的网站,而是冒名顶替、招摇撞骗罢了。
hosts文件:
windows:C:\Windows\System32\Drivers\etc(针对系统有所不同)
Linux:/etc/hosts
3、Ettercap工具讲解
简介:Ettercap最初设计为交换网上的sniffer(嗅探工具),但是随着发展,它获得了越来越多的功能,成为一款有效的、灵活的中介攻击工具。它支持主动及被动的协议解析并包含了许多网络和主机特性(如OS指纹等)分析。
安装:有许多版本,大家可以自行下载安装;
工作模式:
ipbased:基于ip地址的sniffing(源IP与目的IP);
macbased:基于mac地址的sniffing(在捕获网关的数据包,常用);
arpbased:在基于ARP欺骗的方式下,Ettercap利用ARP欺骗在交换局域网内监听两个主机之间的通信(全双工);
smartarp:在SMARTARP方式下,Ettercap利用ARP欺骗,监听交换网上某台主机与所有已知的其他主机(存在于主机表中的主机)之间的通信(全双工);
publicarp:在PUBLICARP 方式下,Ettercap利用ARP欺骗,监听交换网上某台主机与所有其它主机之间的通信(半双工)。此方式以广播方式发送ARP响应,但是如果 Ettercap已经拥有了完整的主机地址表(或在Ettercap启动时已经对LAN上的主机进行了扫描),Ettercap会自动选取 SMARTARP方式,而且ARP响应会发送给被监听主机之外的所有主机,以避免在Win2K上出现IP地址冲突的消息;
参数说明:
-a或- -arpsniff:基于arp的sniffing(如果你想采用中间人技术,必选);
-s或- -sniff:基于IP的sniffing(适用于HUB环境);
-m或- -macsniff:基于MAC,适用于监听远程的通信;
-T或- -readpacpfile:脱机sniffing,Ettercap将监听一个pcap兼容文件中存储的网络数据包;
4、ARP欺骗攻击
攻击前:
受害机开始情况:
攻击机开始情况:
启动网卡为混杂模式:echo 1 > /proc/sys/net/ipv4/ip_forward
开始攻击
启用ettercap进行欺骗
点击左上角start
攻击后
嗅探密码
大家还可以自行YY抓什么其他的包,譬如ssh,这个需要用到sslstrip,可以去看看我另外一篇博客,这里也给大家一个推荐:91ri sslstrip获取ssh密码
5、DNS欺骗
进行欺骗之前需要对ettercap的dns文件进行编辑
vim /etc/ettercap/etter.dns
这样的目的是为了,让客户端访问baidu.com时跳转访问攻击者的web服务
启动DNS欺骗
前面的步骤与ARP欺骗一致,只需要在开始欺骗之前,添加一个插件;
开始期盼
攻击后(注意IP)