准备:kali、xp

kali ip:192.168.14.157

目标ip:192.168.14.158

目标网关:192.168.14.2

使用工具:ettercap、arpspoof

一.工具介绍与使用

二.具体实战演示

一.工具介绍与使用

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

kali linux 2018.2 版本,已经内置了ettercap。不需要再安装,若在其他系统,请自行安装ettercap。

2.ettercap的sniffing工作方式划分为五种

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

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

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

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

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

3.使用-M参数,即选择中间人攻击模式,有如下几种攻击方式

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

如:

ettercap -M arp:remote /192.168.1.102

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

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

如:

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

对应的含义是:将自己伪装成真实路由器的MAC和IP。

(3) DHCPspoofing:DHCP欺骗的原理是将攻击者的本机伪装成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.102,35,50-60内的地址,子网掩码为255.255.255.0,DNS服务器为192.168.1.1。

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

4.ettercap参数及常用操作

-I  显示可用网卡接口设备

-i  选择接口

-t  协议选择,tcp/udp/all,默认为all

-p  不进行毒化攻击,用于嗅探本地数据包

-F  载入过滤器文件

-V  text 将数据包以文本形式显示在屏幕上

-L  filename 把所有的数据包保存下来(保存后的文件只能用etterlog显示)

  

二.具体实战演示

第一种方法:

1.ARP欺骗
arpspoof -t 目标ip -r 目标网关

命令:

arpspoof  -i  eth0 -t 192.168.14.158 -r 192.168.14.2

  

2.开启流量转发

命令:

echo 1 > /proc/sys/net/ipv4/ip_forward

  

3.使用ettercap

命令:

ettercap -Tp -i eth0

注意:这种方法,当数据包流量过大,查看信息不方便。

第二种方法:

1.ettercap -G ,使用图形化界面

2.选择sniffer 模式,这里选择: Unified sniffering 模式

3.网卡选择默认就可以,这里就默认eth0 网卡即可

4.开始嗅探

5.点击Hosts ,再点击Scan forhosts,然后查看host list ,就可以查看到嗅探到的主机ip地址、mac地址

6.选定目标主机B,点击add to target 1,将主机B添加到目标1;选定路由,点击add to target 2,将路由添加到目标2

7.点击mitm --- arpposoning ,勾选sniff remoteconnections

8.点击start --- startsniffing,然后在xp上开始监听测试目标登录

测试:

用户名:aaaa

密码:test

9.点击view --connections开始查看连接,可以双击链接查看详细信息

但是我们现在只关注有没有抓取到密码

在最下面可以看到用户登录名和密码,嗅探密码成功

总结:

第一种方法需要结合arpspoof工具来嗅探HTTP信息,而且查看获取信息麻烦,不推荐

第二种方法只需要使用ettercap工具,查看信息方便,推荐使用

ettercap+arpspoof进行HTTP信息嗅探的更多相关文章

  1. 分享四个 Linux 上的网络信息嗅探工具

    在计算机网络中,数据是暴露的,因为数据包传输是无法隐藏的,所以让我们来使用 whois.dig.nmcli和 nmap 这四个工具来嗅探网络吧. 请注意,不要在不属于自己的网络上运行 nmap ,因为 ...

  2. ettercap中间人攻击--参数介绍

    攻击和嗅探  -M,  --mitm ARP欺骗,参数 -M arp remote    # 双向模式,同时欺骗通信双方,-M arp:remote. oneway   #单向模式,只arp欺骗第一个 ...

  3. Kali Linux ettercap的使用

    ettercap是执行ARP欺骗嗅探的工具,通常用它来施行中间人攻击. 我还介绍过另一个arp欺骗工具-arpspoof 我使用的是Kali Linux 2.0:在开始使用ettercap之前,先配置 ...

  4. Ettercap详细参数

    关于界面:ettercap提供 4 种运行界面: Text            #文本模式,参数 -T ,一般配合 -q(安静模式)使用 Curses/GTK         #图形模式,参数 -C ...

  5. kali 渗透的一些笔记

    kali实战笔记 17:55 2016/7/19 by: _Silvers kali系统安装后的配置及美化安装vmwareToolstar zxvf VMwareTools-sfsfsfasfasfs ...

  6. Kali实现局域网ARP欺骗和ARP攻击

    原文地址: http://netsecurity.51cto.com/art/201303/386031.htm http://xiao106347.blog.163.com/blog/static/ ...

  7. SSL/TLS中间人攻击

    准备:kali.xp kali ip:192.168.14.157 目标ip:192.168.14.158 目标网关:192.168.14.2 使用工具:ettercap.sslstrip.arpsp ...

  8. 【渗透技术】渗透测试技术分析_TomCat

    [渗透技术]渗透测试技术分析_TomCat 本文转自:i春秋论坛 渗透测试-中间人攻击(原理)说起“中间人攻击”我想大多数对渗透测试又了解的朋友都多少有所了解,因为我们用到的次数真是非常的多.它可以将 ...

  9. 2017-2018-2 20155303『网络对抗技术』Exp5:MSF基础应用

    2017-2018-2 20155303『网络对抗技术』Exp5:MSF基础应用 --------CONTENTS-------- 一.原理与实践说明 1.实践内容 2.预备知识 3.基础问题 二.实 ...

随机推荐

  1. js实现获取两个日期之间所有日期最简单的方法

    Date.prototype.format = function() { var s = ''; var mouth = (this.getMonth() + 1)>=10?(this.getM ...

  2. select 1

    select 1 from mytable;与select anycol(目的表集合中的任意一行) from mytable;与select * from mytable 作用上来说是没有差别的,都是 ...

  3. ubuntu14.04 放开串口权限

    可以用如下命令查看串口信息: ls -l /dev/ttyUSB*来查看相关的信息. 但是普通用户没有usb操作权限(函数open()打不开串口:refused),如果我们想在ROS程序里面打开串口, ...

  4. jquery插件模式开发和react组件开发之间的异同

    jquery插件模式开发和react组件开发之间的异同

  5. 【逆向工具】IDA使用4-控制台逆向分析 Reverse004.exe 获取密码

    工具 吾爱破解版本OD.IDA6.8 OD使用-动态分析 OD快捷方式 F2 下断点,也就是指定断点的地址F3加载一个可执行程序,进行调试分析F4程序执行到光标处 F5 缩小.还原当前窗口 F7 单步 ...

  6. linux内核中链表代码分析---list.h头文件分析(一)【转】

    转自:http://blog.chinaunix.net/uid-30254565-id-5637596.html linux内核中链表代码分析---list.h头文件分析(一) 16年2月27日17 ...

  7. java linux ftp问题

    java写的ftp上传类,本地测试环境可以用,阿里云服务器不可用,两者系统均为centos.经过测试,发现appche的ftpclient类不可用,换成sun的ftpclient可以使用.

  8. Android 的网络编程

    android的网络编程分为2种:基于socket的,和基于http协议的. 基于socket的用法 服务器端: 先启动一个服务器端的socket     ServerSocket svr = new ...

  9. LeetCode(5):最长回文子串

    Medium! 题目描述: 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 长度最长为1000. 示例: 输入: "babad" 输出: "bab&quo ...

  10. java 格式化

    一. 可以之际像c语言一样用System.out.printf()格式化输出 二. System.out.format 1. format()方法模仿自printf(), 可用于PrintStream ...