什么是“中间人攻击”?

中间人攻击(Man-in-the-Middle Attack,简称“MiTM攻击”)是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信计算机之间,这台计算机就称为“中间人”。入侵者把这台计算机模拟一台或两台原始计算机,使“中间人”能够与原始计算机建立活动连接并允许其读取或篡改传递的信息,然而两个原始计算机用户却认为他们是在互相通信,因而这种攻击方式并不很容易被发现。所以中间人攻击很早就成为了黑客常用的一种古老的攻击手段,并且一直到今天还具有极大的扩展空间。

工具简介

Ettercap是一款实现“中间人攻击”的多功能工具,具有嗅探实时连接、内容过滤以及其它非常有趣的功能。

它还支持许多协议的主动与被动分离,并且包含网络和主机分析的多项功能。

Ettercap的工作原理是将网络接口设置为混杂模式,并通过ARP欺骗感染目标设备。由此该设备成为所谓的“中间人”,并发动对受害者的各类攻击。Ettercap支持插件,可以通过添加新的插件来扩展功能。

功能

Ettercap支持对许多协议(包括加密协议)的主动和被动分离,并具有网络和主机分析方面的多项功能。Ettercap包含四种操作模式:

基于IP的模式:根据IP源和目的地过滤数据包

基于MAC的模式:根据MAC地址过滤数据包,该模式能够对嗅探通过网关的连接起到作用。

基于ARP的模式:利用ARP欺骗方式在两个主机之间的交换式局域网(全双工,即支持双方同时发送信息)上进行嗅探。

基于公共ARP的模式:利用ARP欺骗方式从一台受害者主机到其它所有主机的交换式局域网(全双工)上进行嗅探。

具体功能:

在已建立的连接中注入字符:将字符注入到服务器(模拟命令)或客户端(模拟回复),同时保持实时连接。

SSH1支持:嗅探用户名和密码,甚至是SSH1连接的数据。Ettercap是第一个能够以全双工方式嗅探SSH连接的软件。

HTTPS支持:嗅探HTTP SSL连接上的加密数据——通过Cisco路由器的GRE tunnel对远程流量进行嗅探,并对它进行”中间人攻击”。

插件支持:使用Ettercap的API创建自定义插件。

密码收集:可以收集以下协议的密码信息——TELNET、FTP、POP、IMAP、rlogin、SSH1、ICQ、SMB、MySQL、HTTP、NNTP、X11、Napster、IRC、RIP、BGP、SOCKS 5、IMAP 4、VNC、LDAP、NFS、SNMP、Half-Life、Quake 3MSN、YMSG

数据包过滤/丢弃:设置一个过滤器,用于在TCP或UDP有效内容中查找特定字符串(或十六进制序列),并用自定义字符串/序列替换它,或丢弃整个数据包。

操作系统指纹:可以提取受害主机及其网络适配器的操作系统信息。

终止连接:从connections-list(连接列表)中终止所选择的连接。

局域网的被动扫描:检索局域网上的主机信息、开放端口、可用服务的版本号、主机(网关、路由器或简单PC)的类型以及跃点数(跃点即路由,一个路由为一个跃点。传输过程中需要经过多个网络,每个被经过的网络设备点(有能力路由的)叫做一个跃点,地址就是它的ip。跃点数是经过了多少个跃点的累加器,为了防止无用的数据包在网上流散。 )的预估距离。

劫持DNS请求。

Ettercap还具有主动或被动地在局域网中找到其它受感染者的功能。

用法

Usage: ettercap [OPTIONS] [TARGET1] [TARGET2]

用法:ettercap【选项】【目标1】【目标2】

TARGET is in the format MAC/IPs/PORTs (see the man for further detail)

目标是MAC/IPs/PORTs格式(根据中间人获取更多信息)

嗅探与攻击选项:

-M, –mitm <方法:ARGS>      执行mitm攻击

-o, –only-mitm                       不嗅探,只执行mitm攻击

-B, –bridge <IFACE>             使用桥接嗅探(需要2个iface——嗅探时使用的网卡接口,嗅探两块网卡之间的数据包)

-p, –nopromisc                      不要将iface放入混杂模式

-S, –nosslmitm                      不要伪造SSL证书

-u, –unoffensive                    不要转发数据包

-r, –read <file>                       从pcap文件读取数据 <file>

-f, –pcapfilter <string>           设置pcap过滤器<string>

-R, –reversed                        使用逆向目标反馈

-t, –proto <proto>                  只嗅探该proto(默认是全部)

用户界面类型:

-T, –text                                使用只显示字符的界面

-q, –quiet                              安静模式,不显示抓到的数据包内容

-s, –script <CMD>                向用户界面发出这些命令

-C, –curses                           使用curses图形化界面

-G, –gtk                                使用GTK+ GUI

-D, –daemon                        守护模式(无界面),相当于在后台运行

日志选项:

-w, –write <file>                    将嗅探到的数据写入pcap文件 <file>

-L, –log <logfile>                  此处记录所有流量<logfile>

-l, –log-info <logfile>            此处记录所有信息<logfile>

-m, –log-msg <logfile>         此处记录所有消息记录<logfile>

-c, –compress                      使用gzip压缩日志文件

可视化选项:

-d, –dns                               将ip地址解析为主机名

-V, –visual <format>            设置可视化格式

-e, –regex <regex>              只实现匹配该regex数据包的可视化

-E, –ext-headers                  打印每个pck的扩展头

-Q, –superquiet                   不显示用户名与密码

通用选项:

-i, –iface <iface>                 使用该网络接口

-I, –liface                             显示所有的网络接口

-n, –netmask <netmask>    在iface上强制实行(force)该<netmask>

-P, –plugin <plugin>           开始该插件<plugin>

-F, –filter <file>                   加载过滤器 <file> (内容过滤器)

-z, –silent                           不执行初始ARP扫描

-j, –load-hosts <file>          从 <file>加载主机列表

-k, –save-hosts <file>        将主机列表保存至<file>

-W, –wep-key <wkey>       使用该wep密钥解密wifi数据包

-a, –config <config>           使用其它配置文件<config>

标准选项:

-U,  –update                       从ettercap网站更新数据库

-v,  –version                       打印此版本并退出

-h,  –help                            帮助选项

所需资源

Ettercap源代码编译需要以下资源:

Libpcap & dev libraries

Libnet1 & dev libraries

Libpthread & dev libraries

Zlibc

Libtool

CMake 2.6

Flex

Bison

LibSSL & dev libraries

LibGTK & dev libraries

Libncurses & dev libraries

Libpcre & dev libraries

系统要求

支持的操作系统(32位或64位的以下操作系统发行版均已测试成功):

Debian/Ubuntu (包括Kali、BackTrack、Mint等衍生物)、Fedora、Gentoo、Pentoo、Mac OSX (Snow Leopard & Lion)、FreeBSD、OpenBSD、NetBSD。

不支持的操作系统(以下发行版能够安装但不支持,可能需要其它用于代码编译和使用的设置):OpenSuSe、Solaris、Windows Vista、Windows 7、Windows 8。

最新版Ettercap下载链接(含所需资源):https://codeload.github.com/Ettercap/ettercap/tar.gz/v0.8.2

Ettercap官网:https://ettercap.github.io/ettercap/index.html

*参考来源:darknet,FB小编Carrie编译,转载请注明来自FreeBuf(FreeBuf.COM)

如何用Ettercap实现“中间人攻击”(附下载链接)的更多相关文章

  1. Ettercap 实施中间人攻击

    中间人攻击(MITM)该攻击很早就成为了黑客常用的一种古老的攻击手段,并且一直到如今还具有极大的扩展空间,MITM攻击的使用是很广泛的,曾经猖獗一时的SMB会话劫持.DNS欺骗等技术都是典型的MITM ...

  2. 学习Java必看的Java书籍(高清中文最新版附下载链接)

    今年下半年,我正式系统地学习Java(之前学习C++).最近把学习Java所用到的书籍整理了一下,分享出来,希望对正在学习或准备学习Java的人有一定的帮助. 关于Java的学习路线,和IDE工具In ...

  3. MatlabR2014a 安装破解详细图文教程(附下载链接(内附CVX工具箱))

    MATLAB和Mathematica.Maple并称为三大数学软件.它在数学类科技应用软件中在数值计算方面首屈一指.MATLAB可以进行矩阵运算.绘制函数和数据.实现算法.创建用户界面.连接其他编程语 ...

  4. AngularJS入门基础PPT(附下载链接)

    学习了Angularjs有段时间,自己写了一个PPT,个人认为总结的非常全面,对于入门基础够了. 大致模块有:Angularjs简单介绍,Angularjs特性,hello world,Control ...

  5. Windows下搭建go语言开发环境 以及 开发IDE (附下载链接)

    1.下载 并且 安装 Go安装包   =========================================================== 在CSDN上传了我的版本,供大家下载: = ...

  6. HFS局域网分享文件的神器(附下载链接)

    温馨提示,下载链接在页末 前言 假如说你需要传递个学习资料给好基友,我们有许多种方式可选:硬盘媒介.网络分享等. 要是论速度,还是得拿3.0或以上的U盘来拷贝,确实神速哈哈.但是其也有局限性,比如需要 ...

  7. 自己整理的css3动画库,附下载链接

    动画调用语法 animation: bounceIn 0.3s ease 0.2s 1 both; 按顺序解释参数: 动画名称 如:bounceIn 一周期所用时间 如:0.3s 速度曲线 如:eas ...

  8. VMware workstation安装Windows Server 2012 R2步骤详解(附下载链接)

    话不多说,直接上链接.所需工具: 1.VMware workstation 14.0(版本无所谓)                   附链接:https://pan.baidu.com/s/1CrH ...

  9. 从零开始学习音视频编程技术(三) 开发环境搭建(Qt4.86手动设置环境,主要就是设置g++和qmake,比较透彻,附下载链接)

    1.先下载安装Qt 我们使用的版本是4.8. 可以自行百度下载也可以从下面的网盘地址下载: Qt库和编译器下载: 链接:http://pan.baidu.com/s/1hrUxLIG 密码:0181 ...

随机推荐

  1. 使用arcpy.mapping模块批量出图

      出图是项目里常见的任务,有的项目甚至会要上百张图片,所以批量出土工具很有必要.arcpy.mapping就是ArcGIS里的出图模块,能快速完成一个出图工具. arcpy.mapping模块里常用 ...

  2. Jquery EasyUI远程校验,Jquery EasyUI多个自定义校验,EasyUI自定义校验

    >>>>>>>>>>>>>>>>>>>>>>>>> ...

  3. 传输层TCP协议

    目录 首部格式数据单位特定注意自动重传请求ARQ具体实现发送缓存接收缓存滑动窗口确认丢失和确认迟到超时重传时间选择报文段的发送时机运输连接发送TCP请求客户端拥塞处理相关概念避免拥塞具体实现TCP 的 ...

  4. AtCoder Beginner Contest 055题解

    A.当a=1就把a改成14,b=1就把b改成14,然后比较a,b大小即可. #include <iostream> #include <algorithm> #include ...

  5. 微服务架构的简单实现-Stardust

    微服务架构,一个当下比较火的概念了.以前也只是了解过这方面的概念,没有尝试过.想找找.NET生态下面是否有现成的实现,可是没找到,就花了大半个月的闲暇时间,遵循着易用和简单,实现了一个微服务框架,我叫 ...

  6. Linux怎样创建FTP服务器

    在创建FTP服务器之有先命令: ps -ef |grep vsftpd 查一下系统有没有安装vsftpd这个服务器,如果出现如下图所示的界面说明没有安装.   然后再执行:yum install vs ...

  7. 性能测试分享: Jmeter的源码分析main函数参数

    性能测试分享: Jmeter的源码分析main函数参数   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大 ...

  8. webdriver介绍&与Selenium RC的比较

    什么是webdriver? webdriver是一个web自动化测试框架,不同于selenium IDE只能运行在firefox上,webdriver能够在不同的浏览器上执行你的web测试用例.其支持 ...

  9. Java环境----JDK开发环境搭建及环境变量配置

    1.啥是jdk? jdk的是java development kit的缩写,意思是java程序开发的工具包. jdk的版本,一共有三种,标准版(j2se),企业版(j2ee),移动设备版(j2me). ...

  10. JAVA加密算法系列-MD5

    package **; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; publi ...