什么是“中间人攻击”?

中间人攻击(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. 2.4G无线收发模块/射频RFM75调试总结/RF知识整理

    射频RFM75通信是收发双方都需要编程的器件,收发双方的通道频率,空中传输速率设置一致,调试时必须先调通一块再调另一块,否则出现问题了就不知道是发送端有问题还是接收端有问题.调试必须理清思路.正确的方 ...

  2. oracle server config

    安装oracle数据库软件 database/runInstaller; ##执行该程序开始安装 创建数据库 在oracle用户的图形界面oracle用户中 新开启一个终端,直接输入命令dbca会弹出 ...

  3. java 接口默认修饰符问题

    package test; public interface InterfaceTest { void todo();} /** * 以下是反编译的内容,接口里的方法默认都是public的.abstr ...

  4. phpcms2008常用函数小结

    {$head[title]} 页面标题,用法: <title>{$head[title]}-{$PHPCMS[sitename]}</title> {$PHPCMS[siten ...

  5. python 之tornado 入门

    #!/usr/bin/env python # -*- coding:utf-8 -*- # --------------------------------------- # email : gen ...

  6. String 类的实现(2)深度拷贝详解

    我们已经知道了浅拷贝存在的问题,即多次析构同一空间.这个问题是类的成员函数引起的,就是前面浅拷贝里相当于编译器自动合成的函数,确切的说,浅拷贝里的问题是由隐士拷贝构造函数和隐士赋值运算符引起的. 拷贝 ...

  7. 模式识别(1)——PCA算法

    作者:桂. 时间:2017-02-26  19:54:26 链接:http://www.cnblogs.com/xingshansi/articles/6445625.html 声明:转载请注明出处, ...

  8. web中关于垃圾回收的一些观点

    感觉dom大神的解惑 关于引用计数法,注意引用的方向性就行.  A.addEventListner(B.func), 那么是增加了A对B的引用.如果A是不可回收的对象,比如全局的Stage,或者单例. ...

  9. C++ 虚函数相关,从头到尾捋一遍

    众所周知,C++虚函数是一大难点,也是面试过程中必考部分.此次,从虚函数的相关概念.虚函数表.纯虚函数.再到虚继承等等跟虚函数相关部分,做一个比较细致的整理和复习. 虚函数 OOP的核心思想是多态性( ...

  10. Java并发编程:线程的基本状态

    一.线程的基本状态 线程基本上有5种状态,分别是:NEW.Runnable.Running.Blocked.Dead. 1)新建状态(New) 当线程对象对创建后,即进入了新建状态,如:Thread ...