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)

Ettercap之ARP+DNS欺骗的更多相关文章
- ettercap局域网内DNS欺骗(隔壁的哥们轻一点 ...)
转自:http://www.cnblogs.com/hkleak/p/5043063.html 笔记一:ettercap是什么? 我们在对WEB安全检测的时候都会用到Cain和netfuke这两款工具 ...
- Kali下Ettercap 使用教程+DNS欺骗攻击
一.Ettercap 使用教程 EtterCap是一个基于ARP地址欺骗方式的网络嗅探工具.它具有动态连接嗅探.动态内容过滤和许多其他有趣的技巧.它支持对许多协议的主动和被动分析,并包含许多用于网络和 ...
- ettercap ARP dns 欺骗
1.arp 这个简单,太熟了.略过1 2.dns 根据arp欺骗的步骤. 多了个etter.dns文件 找到它:locate etter.dns 进入后添加dns正向解析 启动,选 ...
- 从零开始学安全(四十五)●browser_autopwn2漏洞利用配合Ettercap工具实施DNS欺骗攻击
系统:kali 2019 工具Ettercap,Metasploit 环境内网地址 首先 cd /etc/ettercap/ 移动在ettercap 文件下 在用vim 打开编辑 etter.dns ...
- 初试钓鱼工具Weeman+DNS欺骗的使用
下午无聊再网上闲逛随意看了下,自己做了一次测试,目前最新的版本是1.6.Weeman是一款运行在Python环境下的钓鱼渗透测试工具 但这款工具简单易用,安装简单,可伪造HTML页面等等...网上看了 ...
- kali Linux 渗透测试 | ettercap图形界面(ARP 欺骗 + DNS欺骗)
上次我们使用 arpspoof 工具在命令行中完成了 arp 欺骗实验,今天我们用另一种工具 ettercap 工具来实现.ettercap支持图形化操作,对新手非常友好,并且操作非常简单, ette ...
- Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗、嗅探、dns欺骗、session劫持
Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗.嗅探.dns欺骗.session劫持 文/玄魂 目录 Kali Linux Web 渗透测试—第十四课-arp欺骗.嗅探.dns欺 ...
- 针对SSL/TLS的拒绝服务攻击以及使用ettercap进行DNS欺骗
一. thc-ssl-dos 1.简介 (1).SSL 协商加密对性能开销增加,大量握手请求会导致 DOS (2).利用 SSL secure Renegotiation 特性,在单一 TCP 连接中 ...
- dns欺骗之ettercap
ettercap是一个基于ARP地址欺骗方式的网络嗅探工具,主要适用于局域网. ettercap是一款现有流行的网络抓包软件,它利用计算机在局域网内进行通信的ARP协议的缺陷进行攻击,在目标与服务器之 ...
随机推荐
- 《Linux内核设计与实现》第一二章读书笔记
第一章 Linux内核简介 1.Unix简介 (一)概念:支持抢占式多任务.多进程.虚拟内存.换页.动态链接和TCP/IP网络的现代化操作系统. (二)Unix特点(层次化结构): Unix很简洁,仅 ...
- XML中<beans>属性
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w ...
- BAE静态文件问题
这几天想在bae上架一个自己的博客,但是老是访问不到静态文件文件,都要没有办法了,最后看了这篇博客,受到了启发,知道了问题所在: 我自己的原始的app.conf的配置如下: handlers: - u ...
- 一日游 + 进度psp
假设我们全班同学及教师去吉林省吉林市1日游,请为这次活动给出规格说明书. 目录 1 引言 1.1 编写目的 1.2 项目背景 1.3 参考资料 2 需求分析 2.1 交通方式 ...
- PAT 甲级 1057 Stack
https://pintia.cn/problem-sets/994805342720868352/problems/994805417945710592 Stack is one of the mo ...
- git learn
$ git config --global user.name "Your Name" $ git config --global user.email "email@e ...
- ES6学习笔记(四):异步操作
Promise Promise三种状态 pending.resolved.rejected 使用语法 var promis = new Promise(function(resolve,reject) ...
- springsecurity实战
springsecurity是一种安全性框架,主要用于进行权限验证,下面是其基本使用方法: pom.xml <dependency> <groupId>org.springfr ...
- OpenCV学习(23) 使用kmeans算法实现图像分割
本章我们用kmeans算法实现一个简单图像的分割.如下面的图像,我们知道图像分3个簇,背景.白色的任务,红色的丝带以及帽子. Mat img = cv::imread(&quo ...
- java的属性只能在类里面 方法外面定义
java的属性只能在类里面 方法外面定义 区别于python:python 既能在类里面(类属性) 又能在方法里面定义属性(实例属性)