来源:本站转载 作者:佚名 时间:2013-09-09TAG: 我要投稿

嗅探(sniff),就是窃听网络上流经的数据包,而数据包里面一般会包含很多重要的私隐信息,如:你正在访问什么网站,你的邮箱密码是多少,你在和哪个MM聊QQ等等......而很多攻击方式(如著名的会话劫持)都是建立在嗅探的基础上的。下面让我们看一下交换机网络嗅探方法中的欺骗交换机缓存的方式:

cncert的一个很出名的会话劫持工具SSCLONE就是采用这种方法进行嗅探的,它的网站上也有专门的文章说明“欺骗交换机缓存”的嗅探方法(见参考资料)。我在这里大概说一下原理吧。

交换机里面有一张CAM表,记录了Mac-Port信息(这个端口对应的机器的MAC地址是什么),MAC信息的获取是:交换机从转发的数据包中提取。所谓欺骗交换机缓存,就是修改这张CAM表以达到欺骗交换机的目的!比如现在有一个4端口的交换机,它的CAM表如下:

  1. port1 -- 11-11-11-11-11-11
  2. port2 -- 22-22-22-22-22-22
  3. port3 -- 33-33-33-33-33-33
  4. port4 -- 44-44-44-44-44-44

现在port1的机器A(IP是192.168.1.11,MAC地址为11-11-11-11-11-11)想要嗅探port2的机器B(IP是192.168.1.22,MAC地址为22-22-22-22-22-22),怎么办呢?呵呵~流程如下:

机器A对外发送一个数据包,如下:

SrcIP:192.168.1.11 ScrMac:22-22-22-22-22-22

DstIP:xxx.xxx.xxx.xxx(随便写),DstMac:xx-xx-xx-xx-xx-xx(随便写)

此时,交换机收到这个包,发现在原来CAM里面,port1对应的机器MAC地址是11-11-11-11-11-11,怎么现在变为:22-22-22-22-22-22了呢??哦,应该是这台机器的MAC地址变了吧~好!那我更新CAM表!

更新后的交换机CAM表如下:

  1. port1 -- 22-22-22-22-22-22
  2. port2 -- 22-22-22-22-22-22
  3. port3 -- 33-33-33-33-33-33
  4. port4 -- 44-44-44-44-44-44

现在有port1和port2对应的MAC地址是一样的。如果现在网关(假设现在port4连接的是网关)来了一个数据包是给机器B(IP是192.168.1.22,MAC地址为22-22-22-22-22-22),交换机会顺序查询此刻的CAM表来确定该数据包转发去哪个端口!

在查询port1时,发现此端口对应MAC地址和数据包里的MAC地址相同,交换机直接就把包转发到port1的机器A了,由于该包已转发完毕,交换机继续处理下一个数据包......就这样,数据包又再次落入充满窥探欲望的人手中!

这里也需要注意几个问题:

1).A收到包后,还是需要转发给B的,不然B和外面的对话就中断了。

2).当A把包转发给B时,需要修复交换机的CAM表。

当你看完以上这两点注意时,可能会发现利用这种的一些缺陷:

1).A在转发包给B时需要恢复CAM表,转发后又要再次欺骗。如果在转发包时,网关来了一个数据给B,此时的CAM表是正确的,交换机会把这个数据会直接发给B,A无法监听到这个包,由于每次转发都需要完成以上操作,导致CAM表刷新相当频繁,最后的结果是,A监听到的数据很不完整。

2).你接的交换机的端口号决定着你的命运!

如果B接的port1端口,A接的是port2端口,那么,用这种方式,A将永远也嗅探不到B的信息,更悲观的想一下,如果你连接的是这个交换机最后一个端口呢??!:<

3).跨交换机进行嗅探丢包非常多!

看下图:

现在交换机A连接交换机B的port1,机器C连接port2,如果没有机器B的话,机器A还是能比较顺利监听机器到C的信息的,但是有了机器B就不同了,交换机的CAM表里port1这条记录,会因为机器A和机器B的发包而经常改变。导致的问题大家也可以想到了。

防止欺骗交换机缓存的方法只有在交换机处绑定port-mac这对信息,但由于这和交换机原先设计的理念有矛盾,故这个是无法实现的,也就是说,没有办法防止,值得一说的是,现在无线网已经兴起了,和集线器时代一样,在无线网络监听别人的信息是不费吹灰之力的事情,无线网的安全也值深思!

交换机网络嗅探方法之欺骗交换机缓存相关推荐

  1. 交换机分布缓存_交换机网络嗅探方法 如何欺骗交换机缓存

    嗅探(sniff),就是窃听网络上流经的数据包,而数据包里面一般会包含很多重要的私隐信息,如:你正在访问什么网站,你的邮箱密码是多少,你在和哪个MM聊QQ等等......而很多攻击方式(如著名的会话劫 ...

  2. 交换机网络嗅探方法之用ARP欺骗辅助嗅探

    来源:本站转载 作者:佚名 时间:2013-09-09TAG: 我要投稿 嗅探在集线器盛行的年代可简单实现 你什么事情都不用干,集线器自动会把别人的数据包往你机器上发.但是那个年代已经过去了,现在交换 ...

  3. 计算机 交换机连接设置方法,怎么设置交换机交换机怎么配置

    简单解析网络交换机怎么设置 如何进行那是比较多的,要视具体情况而定,不作具体介绍了.怎么配置交换机 那么如果为了名称,则也可以直接在"Telnet"命令后面空一个空格后输入交换机的 ...

  4. 网络嗅探与ARP欺骗

    目录 一.网络嗅探概述 1.1 网络嗅探的概念 1.1.2 一把双刃剑 1.1.3 特点 1.2 网络嗅探的原理 1.2.1 网络嗅探的条件 1.2.2 网卡的工作模式 1.2.3 局域网的传输技术 ...

  5. zabbix监控交换机流量详细方法

    zabbix监控交换机流量详细方法 首先需要了解交换机端口速率的计算方法: 端口入方向的实际流量速率(bps)=8×[ifHCInOctets(T2时刻的值)-ifHCInOctets(T1时刻的值) ...

  6. 交换机指定外部DHCP服务器,H3C交换机DHCP服务器设置步骤

    H3C交换机DHCP服务器设置步骤 一 DHCP服务器设置步骤如下: 1)安装好Linux操作系统,我用的发行版本是CentOS 5.2. 2)设置服务器的网络参数如下 IP地址:192.168.6. ...

  7. 《Python渗透测试编程技术:方法与实践》:网络嗅探与欺骗

    第八章 网络嗅探与欺骗 漏洞渗透程序在网络中都以数据包形式传输,如果能对网络中的数据包进行分析,就可以深入掌握渗透原理,另外,很多网络攻击方法都是利用精心构造的数据包来完成,例如常见的ARP欺骗,利用 ...

  8. 网管日记:故障网络交换机快速替换方法

    网络管理员每天要处理的事情很多,不仅仅要保持网络的稳定,还要保证计算机工作正常.这些日常的网络管理维护也是有技巧的,当计算机硬件发生问题后最常用的方法是替换法,拿另外一台计算机的同样部件来替代怀疑损坏 ...

  9. 计算机与交换机基本网络设置方法,交换机配置方法 网络交换机的详细配置方法(图文教程)...

    在"傻瓜"型交换机肆意的今天,如何配置交换机对很多人来说都是一门高深的学问,甚至在被问及交换机如何配置时,有人会反问道:交换机还需要配置的么? 确实,交换机的配置过程复杂,而且根据 ...

最新文章

  1. 用VS2005打开一个.NET2.0方案,里面有几个工程和一个网站,提示网站的项目.csproj文件无法打开:“此安装不支持该项目类型”,的解决办法。...
  2. mysql学习三:mysql的组成部分
  3. 量子纠缠背后的故事(廿五):深藏幕后的神秘力量
  4. java中extends ,implements的顺序问题
  5. Python入门:操作文件
  6. 如何在SAP CRM Fiori My Task应用里创建task
  7. android媒体播放框架,Android 使用超简单的多媒体播放器JiaoZiVideoPlayer
  8. 在html中写js提示错误,页面HTML标签优化
  9. 源码分析参考:Dupefilter
  10. oracle sqlLoader 批量导入工具使用说明
  11. WinMerge 操作界面汉语版(截图),以及简单功能介绍
  12. 解决debian (Friendly ARM 嵌入式板)的sudo等一部分命令无法TAB补全
  13. 【洛谷 P3384】树链剖分【详解树链剖分】
  14. 计算机主板故障检测维修,主板故障!教你如何用主板诊断卡检测维修电脑主板故障...
  15. 卡诺图化简及逻辑函数的规范范式:SOP与POS形式
  16. 二维码签到,签退和登陆
  17. windows 安装微信内存清理
  18. [C]qsort的使用和实现
  19. 全网最细的Spring教程(一)
  20. 高新的技术对不对_同样是申请高新技术企业认定,为什么你会失败?

热门文章

  1. 文件上传之Springmvc方式上传原理分析
  2. Tomcat集群快速入门
  3. jsonp java后台_jsonp与Java后端
  4. 最全的IDEA快捷键
  5. bt5重启网卡命令_BackTrack 5 简单网络配置命令
  6. qt combox选中消息_Qt+imx6编写的楼宇对讲管理平台
  7. 【note】fill函数和memset函数的区别和使用
  8. 第一章:前端视角——js运行环境之node.js基础入门
  9. linux中shell变量$#,$@,$0,$1,$2的含义解释:
  10. 稍稍乱入的CNN,本文依然是学习周莫烦视频的笔记。