无线局域网的嗅探攻击和防御——ettercap+driftnet

article/2025/9/15 20:00:53


无线局域网的嗅探攻击和防御

-----ettercap+driftnet

1 实验要求和目的

●了解局域网转发数据的规则与协议

●了解抓包软件的原理与操作流程

●对网络中数据传输的协议有更深层次的认识

2  实验原理和背景知识

2.1 抓包软件与分析软件

本次嗅探试验所使用到的工具有两个,ettercapdriftnet ettercap是一款现有流行的网络抓包软件,他利用计算机在局域网内进行通信的ARP协议的缺陷进行攻击,在目标与服务器之间充当中间人,嗅探两者之间的数据流量,从中窃取用户的数据资料。

ettercap的介绍

ettercap有两种运行方式,UNIFIEDBRIDGEDUNIFIED的方式是以中间人方式嗅探,基本原理是同时欺骗主机AB,将自己充当一个中间人的角色,数据在AB之间传输时会通过CC就可以对数据进行分析,从而完成嗅探。BRIDGED方式是在双网卡情况下,嗅探两块网卡之间的数据包。

ettercapsniffing工作方式划分为五种:

1IPBASED:在基于IP地址的sniffing方式下,ettercap将根据源IP-PORT和目的IP-PORT来捕获数据包;

2MACBASED:在基于MAC地址的方式下,ettercap将根据源MAC和目的MAC来捕获数据包(在捕获通过网关的数据包时,该方式很有用);

3ARPBASED:在基于Arp欺骗的方式下,ettercap利用Arp欺骗在交换局域网内监听两个主机之间的通信(全双工);

4SMARTARP:在SMARTARP方式下,ettercap利用Arp欺骗,监听交换网上某台主机与所有已知的其他主机(存在于主机表中的主机)之间的通信(全双工);

5PUBLICARP:在PUBLICARP 方式下,ettercap利用Arp欺骗,监听交换网上某台主机与所有其它主机之间的通信(半双工)。此方式以广播方式发送Arp响应,但是如果 ettercap已经拥有了完整的主机地址表(或在ettercap启动时已经对LAN上的主机进行了扫描),ettercap会自动选取 SMARTARP方式,而且Arp响应会发送给被监听主机之外的所有主机,以避免在Windows主机上出现IP地址冲突的消息。

在操作ettercap时,常使用-M参数,即选择中间人攻击模式,有如下几种攻击方式:

1)基于Arp毒化的中间人攻击:Arp毒化的原理可简单理解为伪造MAC地址与IP的对应关系,导致数据包由中间人截取再转手发出。Arp毒化有双向(remote)和单向(oneway)两种方式。双向方式将对两个目标的Arp缓存都进行毒化,对两者之间的通信进行监听。而单向方式只会监听从第一个目标到第二个目标的单向通信内容。一般会选择使用双向欺骗的方式来获取所有的数据包进行嗅探分析。

    如:#ettercap -M arp:remote /192.168.1.102//  

    对应的含义是:表示对192.168.1.102的所有端口的通信进行嗅探,包括其发出的数据包和收到的数据包。

2icmp欺骗:icmp欺骗即基于重定向(redirect)的路由欺骗技术。其基本原理是欺骗其他的主机,将自身伪装为最近的路由,因此其他主机会将数据包发送过来,然后作为中间人的攻击者再重新将其转发到真正的路由器上。于是我们便可以对这些数据包进行监听。当然,icmp欺骗不适用于交换机的环境,若本机在交换机的环境下则最好选择arp毒化的方式来进行攻击。icmp欺骗方式的参数是真实路由器的MACIP,参数形式为(MAC/IP)

如: #ettercap -M icmp:00:11:22:33:44:55/192.168.1.1

对应的含义是:将自己伪装成真实路由器的MACIP

  1. DHCPspoofingDHCP欺骗的原理是将攻击者的本机伪装成DHCP服务器,代替真实的DHCP服务器给新接入网络的受害主机动态分配IP。这样的缺点是可能会与真实的DHCP服务器重复分配IP造成冲突,而且只能针对新接入网段的主机,难以影响到之前的主机。DHCP spoofing方式的参数是可以分配出去的IP地址池、子网掩码和DNS,参数形式为(ip_pool/netmask/dns)

        如:#ettercap -M dhcp:192.168.1.102,35,50-60/255.255.255.0/192.168.1.1
       
    对应的含义是:将分配192.168.1.1023550-60内的地址,子网掩码为255.255.255.0DNS服务器为192.168.1.1

  2. PortStealing:此攻击方式适用的环境为交换机下,且路由器中IPMAC绑定,无法进行Arp欺骗。其基本思想是,既然无法欺骗路由器的IPMAC对应关系,那么就欺骗交换机,使原本应该通过交换机端口到达目标主机的数据包被传入了攻击者的端口。需要指出的是,由于这个方法只用于交换机环境,且会产生大量的数据包,可能会严重影响网络状况。

         ettercap参数及常用操作

    -I  显示可用网卡接口设备
        -i
      选择接口
        -t
      协议选择,tcp/udp/all,默认为all
        -p
      不进行毒化攻击,用于嗅探本地数据包
        -F
      载入过滤器文件
        -V
      text 将数据包以文本形式显示在屏幕上
        -L
      filename 把所有的数据包保存下来(保存后的文件只能用etterlog显示)

    driftnet的介绍

    driftnet是一款用于抓取指定接口数据流上面图片的软件,并且把嗅探到的图片显示在Linux下的一个窗口当中。

    driftnet命令的使用语法:driftnet   [options]  [filter code]

    主要参数:

    -b             捕获到新的图片时发出嘟嘟声

    -i  interface     选择监听接口

    -f  file         读取一个指定pcap数据包中的图片

    -p             不让所监听的接口使用混杂模式

    -a             后台模式:将捕获的图片保存到目录中(不会显示在屏幕上)

    -m number     指定保存图片数的数目

    -d directory     指定保存图片的路径

    -x prefix        定保存图片的前缀名

     

2.2 ARP欺骗原理

由于此嗅探方法使用的是ARP欺骗,所以就得先了解一下ARP的原理。

主机A主机B发送报文,会查询本地的ARP缓存表,找到BIP地址对应的MAC地址后,就会进行数据传输。若未找到,则A广播一个ARP请求报文(携带主机AIP地址和物理地址),请求IP地址为主机B,并将主机BMAC发给主机A。网上所有主机包括B都收到ARP请求,但只有主机B符合该IP,于是向A主机发回一个ARP响应报文。其中就包含有BMAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用该MAC地址发送数据。因此,本地高速缓存ARP表是本地网络流通的基础,且是动态的。

ARP欺骗共有两种:一种是对路由器ARP表的欺骗;另一种是对内网PC网关欺骗

路由器ARP表的欺骗是给路由器发送一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。

对内网PC网关欺骗是将攻击者伪装成网关,让被欺骗的PC向自己发送数据,以截获所想要的内容。

3  实验环境简介与操作步骤

实验原理图:

30.1 ARP欺骗原理图

    主机A使用ettercap软件,利用ARP欺骗原理,欺骗主机B将自己变成网关,主机B在对外传输数据时,便将数据传送给假网关—主句A,主机A就可以窃听分析主机B的数据包。再利用driftnet软件分析窃听到的数据,就可以看到主机B所浏览的内容。

 3.1 利用ettercap+driftnet截获目标主机的图片数据流 

实验前提准备:两台电脑,笔记本为Linux操作系统,均处在同一局域网下,且都能连接外网。

第一步:使用Ctrl+alt+T快捷键开启Linux终端,并下载安装ettercap抓包软件

30.2 ettercap软件下载安装

第二步:driftnet嗅探软件的安装命令

30.3 driftnet软件的下载安装

第三步:开启ettercap抓包软件,使其监听目标主机

30.4 开启ettercap抓包软件

第四步:开启driftnet软件,开始分析目标主机的浏览的图片

30.5 开启driftnet软件分析数据

第五步:目标主机开始浏览图片,driftnet软件小窗口显示主机B所浏览的图片

30.6 driftnet所窃听的图片

3.2 利用ettercap进行arp欺骗截获字节流

第一步:下载安装ettercap软件

30.7 ettercap软件安装

第二步:进入ettercapGTK+ UI工作界面

30.8 进入GTK+ UI工作界面


30.9 GTK+ UI工作界面

第三步:打开ettercap后,选择Sniff----Unified-sniffing,再选择网卡

30.10 监听网卡

第四步:点击Hosts---Scan forhosts---Hosts list,可以看到目标主机的IP192.168.1.102

30.11 查询目标主机IP

 

第五步:选定目标主机B,点击add to target 1,将主机B添加到目标1;选定路由,点击add to target 2,将路由添加到目标2

30.12将目标主机及路由器添加到窃听目标

第六步:点击mitm --- arpposoning ,勾选sniff remoteconnections

30.13 开启远程嗅探连接

第七步:点击start --- startsniffing开始监听,再点击view --connections开始查看连接,双击链接查看详细信息

30.14 查看获取文字流详细信

30.15 截取到的路由器登录账户与密码

5 结果分析与讨论

     本次无线局域网嗅探实验利用ARP欺骗原理,使用ettercapdriftnet两款抓包分析软件,分别截取目标主机的文字流和图片流,深入了解了ettercapdriftnet两款软件的工作模式,以及网络协议ARP的原理。

6 实验扩展与分析

    本次试验只是使用了ettercap软件四种界面:TextCursesGTK2 Daemonize中的两种,有兴趣的同学可以自行尝试其他几种。此外,抓包软件数不胜数,比如还有wireshark抓包软件,可以利用wireshark深入学习网络的7层模型以及各种协议。

7 注意事项与资源

    本次试验是在Linux环境下实现的,所以需要一部分的Linux知识。目标主机和攻击者是在同一个局域网内,不同网段是不能完成相应的实验的。在截取图片时,目标主机需得在攻击者窃听后开启浏览器浏览带图片的网页,而后攻击者才会获取到图片流。


http://chatgpt.dhexx.cn/article/tliMaHSg.shtml

相关文章

python实现图片嗅探工具——自编driftnet

python实现图片嗅探工具——自编driftnet 前言一、数据包嗅探二、图片捕获三、图片显示及主函数写在最后 前言 想必尝试过中间人攻击(MITM)的小伙伴,大概率是知道driftnet的。这是一款简单使用的图片捕获工具,可以很方便的从网络数据包中抓取…

kali中 arpspoof、driftnet、流量转发的图片抓取

1、开启内核转发模式(echo 1为转发 echo 0为拦截) echo 1 /proc/sys/net/ipv4/ip_forward 配置完成使用命令查看cat /proc/sys/net/ipv4/ip_forward 2、使用 Arpspoof 开始攻击 命令:Arpspoof -i (自己网卡) -t 目标IP 网关 3、打开另一个终端 查看dri…

ARP欺骗攻击(流量图片)——dsniff与driftnet使用

ARP欺骗攻击(流量&图片) 原理: 首先我们![请添加图片描述](https://img-blog.csdnimg.cn/7de7923387224bcda1ea4be958032ae9.png 要明白何为ARP(地址解析协议):是根据 IP地址 获取 物理地址 的一个 TC…

NO.26——利用ettercap和driftnet截获数据流里的图片

原理 Ettercap最初设计为交换网上的sniffer,但是随着发展,它获得了越来越多的功能,成为一款有效的、灵活的中介攻击工具。它支持主动及被动的协议解析并包含了许多网络和主机特性(如OS指纹等)分析。 Ettercap…

linux嗅探器抓包,Kali Linux 嗅探/欺骗工具 driftnet 教程

日期:2018年01月11日 观看: 13,491 C 次 Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序。有趣的是看到很多网络流量的主机上运行。在实验性增强中,driftnet现在从网络流量中挑选出MPEG音频流,并尝试播放它们。 Driftnet是一款从网络流量捕获图像并将其显…

ARP中使用driftnet工具捕获图片

在进行任何网络攻防实验时,请务必遵守当地法律法规以及道德准则,必须遵守法律规定,只能在合法授权的情况下进行实验和演练。 预备知识 基本网络概念:了解TCP/IP协议、IP地址、MAC地址等基本网络概念。 ARP协议:了解A…

使用Arp欺骗与driftnet工具监听局域网信息

【重点声明】此系列仅用于工作和学习,禁止用于非法攻击,非法传播。一切遵守《网络安全法》 环境: Ubuntu 16.0.4攻击主机:192.168.1.130,Windows10 目标机:192.168.1.219 扫描该网段存活的主机&#xff1…

(arpspoof + driftnet)实现arp欺骗

(arpspoof driftnet)实现arp欺骗 虚拟机环境:kali linux window 7 文章目录 (arpspoof driftnet)实现arp欺骗前言一、安装arpspoof和driftnet二、Attack1.信息收集2.MAC欺骗与流量截图 总结 前言 ARP欺骗:欺骗局域网内主机的网关MAC地址&#xff0c…

自举电路介绍

自举电路也叫升压电路,利用自举升压二极管,自举升压电容等电子元件,使电容放电电压和电源电压叠加,从而使电压升高.有的电路升高的电压能达到数倍电源电压。 升压电路原理 举个简单的例子:有一个12V的电路&#xff0c…

秒懂电容自举电路

自举电容的核心原理是:电容两端电压不能突变。 从这句话中,我们可以获取到两个关键字:两端电压、不能突变。 两端电压指的是电容一边相对另一边的电压,我们知道电压本身就是个参考值(一般认定参考GND,认定…

STM32自举程序

空间分布 将flash空间分为自举程序区和应用程序区。 应用程序区存放用户应用程序。 自举程序负责获取用户应用程序数据,并写入应用程序区,实现程序升级。 程序跳转 自举程序需要可以跳转到应用程序区,当然应用程序也可以根据需要设计成可…

自举电路(升压电路)

the boost converter,或者叫step-up converter,是一种开关直流升压电路,它可以是输出电压比输入电压高。基本电路图见图1.假定那个开关(三极管或者mos管)已经断开了很长时间,所有的元件都处于理想状态,电容电压等于输入电压。下面…

Web精美个人网页静态展示

今天和大家分享一个纯用web(htmlcssjs)实现的一个优美的个人信息菜单资料展示。 项目结构很简单只有一个html文件一个css样式文件以及一个js脚本文件。 项目实现的功能: 1:进入首页是一个天气样式页面(显示当前时间…

【测控电路】自举式高输入阻抗放大电路

ref 测控电路第五版 有些传感器输出阻抗很高, 要求其测量放大电路有高输入阻抗. 开环集成运放的输入阻抗通常很高, 反相运放输入阻抗远低于同相运放, 为提高输入阻抗, 可在输入端加接电压跟随器, 但会引入共模误差. 在要求较高的场合下, 可采用高输入阻抗集成运放/采用通用运放…

自举电路工作原理分析

OTL功率放大器中要设自举电路,图18-9所示是自举电路。电路中的C1, R1和R2构成自举电路。C1为自举电容,R1O 隔离电阻,R2将自举电压加到 VT2基极。 向左转 | 向右转 VT1集电极信号为正半周期间VT2导通、放大,当输入VT2基极的信号比较大 时&…

STM32自举程序,你了解多少?

置顶/星标公众号,不错过每一条消息 本文主要讲述STM32启动模式中System memory的内容,以及围绕的相关内容。 1写在前面 STM32中内嵌了一段自举程序,可能很多人不知道。 那段自举程序存放在System memory(系统存储器)中…

静态网站以及动态网站

学习时间:7月7日-8日 学习素材:B站博主 学习的内容:静态网站以及动态网站 静态网站就是没有采用任何程序开发的网站,纯粹采用HTML语言编写,不要求懂太多网站制作知识,使用一般的软件就可以制作网页了。网页…

编译器之自举

**要阅读本文,不需要太高深的编译原理知识,甚至不需要编译相关的知识。但是本文也不是面向对电脑一无所知的读者的,你至少要知道: 不管是exe可执行文件还是Linux下的程序,都是一些二进制代码,我们称之为机器…

DC-DC电路中自举电容和自举电阻是什么?

文章目录 1. 什么是自举电容2. 自举电容的原理3. 自举电容的额定电压如何选择4. 什么是自举电阻1. 什么是自举电容 DCDC BUCK芯片有一个管脚叫BOOT,有的叫BST,如下是一个DCDC芯片对BOOT管脚的解释,在外部电路设计时,BOOT和SW管脚之间,需要加一个电容,一般是0.1uF,连接到…

自举电路原理分析

原文来自公众号:工程师看海 自举电路字面意思是自己把自己抬起来的电路,是利用自举升压电容的升压电路,是电子电路中常见的电路之一。 我们经常在IC外围器件中看到自举电容,比如下图同步降压转换器(BUCK)电…