局域网攻击ettercap 详解(dns 欺诈)

局域网攻击ettercap 详解(dns 欺诈)ettercap是一个基于ARP地址欺骗方式的网络嗅探工具,主要适用于交换局域网络。借助于EtterCap嗅探软件,渗透测试人员可以检测网络内明文数据通讯的安全性,及时采取措施,避免敏感的用户名/密码等数据以明文的方式进行传输。ettercap几乎是每个渗透测试人员必备的工具之一。 ettercap是一款现有流行的网络抓包软件,它利用计算机在局域网内进行通信的ARP协议的缺陷进行攻击,在目标与服务…

大家好,又见面了,我是你们的朋友全栈君。

ettercap是一个基于ARP地址欺骗方式的网络嗅探工具,主要适用于交换局域网络。借助于EtterCap嗅探软件,渗透测试人员可以检测网络内明文数据通讯的安全性,及时采取措施,避免敏感的用户名/密码等数据以明文的方式进行传输。ettercap几乎是每个渗透测试人员必备的工具之一。 ettercap是一款现有流行的网络抓包软件,它利用计算机在局域网内进行通信的ARP协议的缺陷进行攻击,在目标与服务器之间充当中间人,嗅探两者之间的数据流量,从中窃取用户的数据资料。ettercap 在kali Linux 是自带的一个工具,它也有图形化的界面,不过熟练之后你会发现在终端以命令行的形式操作会更加方便。下面讲的就是ettercap的DNS欺诈和arp攻击,通过ettercap让目标主机只能浏览你所指定的网络,比如你指定了Baidu.com他就上不了QQ.com,这就是在局域网环境下对其他主机的欺骗。

在这里先简单的说一下ARP协议,ARP(Address Resolution Protocol)就是地址解析协议,是一种将IP地址转化成物理地址的协议。在局域网的环境中主机之间的通信地址是通过Mac地址的,如果主机A(ip为192.168.1.1)想和主机B(ip为192.168.1.2)进行通信,首先主机A会在本地的ARP缓存列表里面找主机B的Mac地址,如果能找到,则两个主机会直接进行通信。如果没有找到arp缓存,主机A会广播一个报文,这个报文里面有两个内容:一个是主机A的ip,一个是主机A的Mac地址。这个报文会在整个网络中传送,但主机A只想和B连通,所以这个报文的请求地址就是B的ip地址,B会发现有主机请求自己,就会回应这个请求,此时,A主机得到B的回应就会发现B所在的Mac地址,然后更新自己的arp缓存,接着使用这个新的Mac地址和B进行通信。其实arp中间人欺诈玩的就是局域网的mac地址。

下面开始Kali Linux 的操作了

(1)开启Apache2 服务,这个服务是干啥的?Apache是世界使用排名第一的Web服务器软件它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。想要深入了解自己去查查,你知道这是一个服务器就行了。命令 service apache2 start 然后查看是否打开成功  service apache2 status  如图

局域网攻击ettercap 详解(dns 欺诈)

(2)修改ettercap的配置文件 leafpad /etc/ettercap/etter.conf 将uid和gid改成  0 然后保存   如下:

局域网攻击ettercap 详解(dns 欺诈)

(3)leafpad /etc/ettercap/etter.dns   修改rederect (重定向网站(ip))  (自己搭的站或者病毒网站的ip)如下图指定百度

局域网攻击ettercap 详解(dns 欺诈)

我在这里让目标主机只能上baidu.com,它的服务器ip也很好得到,ping一下就能看到。至于指定的ip你可以自己改,还有哪种域名的格式只能上哪个网这你都可以自己改。

(4)启用ettercap 发动攻击    ettercap -i eth0 -T -q -P dns_spoof /// ///     i是指定网卡,如果你的连接是wlan0的话就改成wlan0,T(text)是仅使用文本GUI,q(quite)不显示数据内容 P使用插件 在这里就是dns_spoof 这个插件。/// /// 是局域网的所有主机,这个劲儿比较大,你也可以指定主机。 如下

局域网攻击ettercap 详解(dns 欺诈)

在这里说明一下,有的时候可能由于网络模式或者其他一些未知错误,上面的攻击命令起不到作用无法进行DNS流量转发攻击,因此还有一种对应的命令 即  ettercap -i eth0 -Tq -P dns_spoof -M arp:remote /// ///  即加上arp中间人攻击就可以了,要是想知道为什么就多多思考吧!

被攻击后的页面如下,主机想进qq.com首先被拦截,然后跳转到我们之前指定的服务器地址baidu.com上。

局域网攻击ettercap 详解(dns 欺诈)

我用的谷歌浏览器自身也发现了问题,即这个局域网内的热点出现了安全问题。如下图:

局域网攻击ettercap 详解(dns 欺诈)

相应的我们这边的攻击界面上也会显示这个过程,把对方要进入的网站欺骗转接到ip为 183.232.231.173 百度的服务器地址

局域网攻击ettercap 详解(dns 欺诈)

手机连接的网络也会出现问题,有关手机用ettercap攻击不了的问题,在这里我大概说一下(1)手机自身带有防止DNS攻击的某种手段或者手机安装了某些安全软件,所以一时半会是不行的(2)ettercap的版本问题,没有及时更新以至于手机厂商修复了这些漏洞,而你还停留在玩历史bug的乐趣中(3)已经攻击成功了,但是没有达到你想要的效果,所以你认为没有这个方法用。其实不然,这个攻击是在整个局域网下进行的,所以局域网内的所有主机都会或多或少的有网络卡顿或者延迟,手机的系统和电脑不一样,ettercap团队做的主要是针对电脑的,所以对手机而言就显得力不从心了,我在测试时就发现了这个问题,但是攻击前后的网速有明显的不同,虽然说手机的效果没有达到和电脑一样的效果,但是有八成的流量流失了,卡的一批。而且手机上网时进的服务器也会在攻击界面显示手机登录的服务器地址,并且会有过程记录,还会得到手机的些许信息如下:我的vivox6d 和手机的操作系统都会被嗅探到。

局域网攻击ettercap 详解(dns 欺诈)

dns劫持还有另外一种玩法,我就简单说一说吧

(1)cd /var/www/html  

(2)leafpad index.html  修改里面的文件为下图所示内容

局域网攻击ettercap 详解(dns 欺诈)

你要是会点HTML的话更好。你不放心的话现将原有的内容备份,以免出现问题。

(3)  leafpad /etc/ettercap/etter.dns   修改rederect 为本机的IP地址(kali的ip)

局域网攻击ettercap 详解(dns 欺诈)

(4)执行攻击命令  ettercap -i eth0 -TqP dns_spoof  /// /// 然后登陆某一个网站,就会按照你之前改的redirect文件来执行。

如下两个例子就足以显示这个效果,但是手机上是没有的,ettercap的这个软件主要是针对电脑的,所以手机的大多数东西是不行的。

局域网攻击ettercap 详解(dns 欺诈)

局域网攻击ettercap 详解(dns 欺诈)

这个就是将自己的KaliLinux当做一台服务器,让局域网被攻击者回到你所编写的HTML页面。

好了,到这里就差不多结束了,自己多试试,多思考,就会有新的惊喜和发现!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/154164.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 拉姆达表达式分组_lomd表达式

    拉姆达表达式分组_lomd表达式List<Map<String,Object>>lpsgjdList=syDkKfslyxxManager.getAlpsgjdQryData(syDkKfslyxxVo); Map<Object,List<Map<String,Object>>>dongh=lpsgjdList.stream().collect( Collectors.groupingBy(e->e.get(“dongh”))); f

  • break和continue的作用和区别是什么?

    break和continue的作用和区别是什么?break和continue的作用和区别是什么?一、break和continue的作用二、break和continue的区别三、案例分析一、break和continue的作用break和continue都是用来控制循环结构的,主要是停止循环。二、break和continue的区别1、break用于跳出一个循环体或者完全结束一个循环,不仅可以结束其所在的循环,还可结束其外层循环。注意:(1)只能在循环体内和switch语句体内使用break;(2)不管是哪种循环,一旦在循环体中遇到break,系

  • 操作系统中进程调度算法详解及例题解释「建议收藏」

    操作系统中进程调度算法详解及例题解释「建议收藏」文章目录1.先来先服务(FCFS,firstcomefirstserve)1.1算法思想1.2算法规则1.3用于作业/进程调度1.4是否可抢占1.5优缺点1.6是否会导致饥饿2.短作业优先(SJF,shortestjobfirst)2.1算法思想2.2算法规则2.3用于作业/进程调度2.4是否可抢占2.5优缺点2.6是否会导致饥饿3.高响应比优先(HRRN)…

  • settime和setinterval_setinterval是异步还是同步

    settime和setinterval_setinterval是异步还是同步setTimeout和setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。这两个函数的区别是:setInterval在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代码,而setTimeout只执行一次那段代码。有一次我没有分清,使用了setInterval,导致电脑崩溃了。setTimeout表面上是只执行一次,只是起到延迟作用。但是也可以通过创建一个函数循环重复调用…

  • UML时序图简析[通俗易懂]

    UML时序图简析[通俗易懂]前言在嵌入式软件开发中,必然会遇到与其他控制板卡或者服务器通信的情况。比如,制作一个无线远程控制系统。系统分为,输入设备,云端服务器,执行设备。其中输入设备,用户可以通过设备上的触摸屏进行交互,控制或者监测远程设备云端服务器,收发终端,接收输入设备的命令,并将其转换为执行设备可识别的信号发送到可执行设备。执行设备,执行服务器发送过来的命令,并且反馈当前的设备的一些状态.简单如下图所示。一般,这样的系统需要多人共同协作完成,输入设备的开发人员负责输入设备开发,云端负责云端,执行端负责执行端

  • python基础01

    python基础01python简介诞生:创建人:GuidoVanRossum(荷兰人)时间:1989年python的应用领域系统运维网络编程(搜索引擎,爬虫,服务器编程)科学计算人工智能,机器人云计

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号