今天突然想到这个问题:wireshark之所以能抓到其它主机的包,是因为共享式以太网;那么现在的交换式以太网怎么使用wireshark?

在网上看了一些资料,整理了下面这篇文章

Sniffer(嗅探器)是一种常用的收集有用数据方法,这些数据可以是用户的帐号和密码,可以是一些商用机密数据等等。Snifffer可以作为能够捕获网络报文的设备,ISS为Sniffer这样定义:Sniffer是利用计算机的网络接口截获目的地为其他计算机的数据报文的一种工具。

Sniffer的正当用处主要是分析网络的流量,以便找出所关心的网络中潜在的问题。例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们又不知道问题出在什么地方,此时就可以用嗅探器来作出精确的问题判断。在合理的网络中,Sniffer的存在对系统管理员是致关重要的,系统管理员通过Sniffer可以诊断出大量的不可见模糊问题,这些问题涉及两台乃至多台计算机之间的异常通讯有些甚至牵涉到各种的协议,借助于Sniffer%2C系统管理员可以方便的确定出多少的通讯量属于哪个网络协议、占主要通讯协议的主机是哪一台、大多数通讯目的地是哪台主机、报文发送占用多少时间、或者相互主机的报文传送间隔时间等等,这些信息为管理员判断网络问题、管理网络区域提供了非常宝贵的信息。

嗅探器与一般的键盘捕获程序不同。键盘捕获程序捕获在终端上输入的键值,而嗅探器则捕获真实的网络报文。

为了对Sniffer的工作原理有一个深入的了解,我们先简单介绍一下HUB与网卡的原理。

1、预备知识 HUB(集线器)与交换机工作原理

由于以太网等很多网络(常见HUB连接的内部网)是基于总线方式,物理上是广播的,就是当一个机器发给另一个机器的数据,HUB先收到然后把它接收到的数据再发给其他的(来的那个口不发了)每一个口,所以在HUB下面同一网段的所有机器的网卡都能接收到数据。

交换机的内部单片程序能记住每个口的MAC地址,以后就该哪个机器接收就发往哪个口,而不是像共享HUB那样发给所有的口,所以交换机下只有该接收数据的机器的网卡能接收到数据,当然广播包还是发往所有口。显然集线器的工作模式使得两个机器传输数据的时候其他机器的端口也占用了,所以集线器决定了同一网段同一时间只能有两个机器进行数据通信;而交换机上连接的两个机器传输数据的时候其它机器的端口没有占用,所以别的口之间也可以同时传输。这就是交换机与HUB不同的两个地方,HUB是同一时间只能一个机器发数据并且所有机器都可以接收,只要不是广播数据交换机同一时间可以有对机器进行数据传输并且数据是私有的。

2、网卡工作原理

再讲讲网卡的工作原理。网卡收到传输来的数据,网卡内的单片程序先接收数据头的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断该不该接收,认为该接收就在接收后产生中断信号通知CPU,认为不该接收就丢弃不管,所以不该接收的数据网卡就截断了,计算机根本就不知道。CPU得到中断信号产生中断,操作系统就根据网卡驱动程序中设置的网卡中断程序地址调用驱动程序接收数据,驱动程序接收数据后放入信号堆栈让操作系统处理。

3、局域网如何工作

数据在网络上是以很小的称为帧(Frame)的单位传输的帧由好几部分组成,不同的部分执行不同的功能。(例如,以太网的前12个字节存放的是源和目的的地址,这些会告诉网络:数据的来源和去处。以太网帧的其他部分存放实际的用户数据、TCP/IP的报文头或IPX报文头等)。

帧通过特定的网络驱动程序进行成型,然后通过网卡发送到网线上。通过网线到达它们的目的机器,在目的机器的一端执行相反的过程。接收端机器的以太网卡捕获到这些帧,并告诉操作系统帧的到达,然后对其进行存储。就是在这个传输和接收的过程中,嗅探器会造成安全方面的问题。

通常在局域网(LAN)中同一个网段的所有网络接口都有访问在物理媒体上传输的所有数据的能力,而每个网络接口都还应该有一个硬件地址,该硬件地址不同于网络中存在的其他网络接口的硬件地址,同时,每个网络至少还要一个广播地址。(代表所有的接口地址),在正常情况下,一个合法的网络接口应该只响应这样的两种数据帧:

1、帧的目标区域具有和本地网络接口相匹配的硬件地址。

2、帧的目标区域具有“广播地址”。

在接受到上面两种情况的数据包时,网卡通过CPU产生一个硬件中断,该中断能引起操作系统注意,然后将帧中所包含的数据传送给系统进一步处理。

当采用HUB,用户发送一个报文时,这些报文就会发送到LAN上所有可用的机器。在一般情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于自己的报文则不予响应(换句话说,机器A不会捕获属于机器B的数据,而是简单的忽略这些数据)。

如果局域网中某台机器的网络接口处于混杂(promiscuous)模式(即网卡可以接收其收到的所有数据包),那么它就可以捕获网络上所有的报文和帧,如果一台机器被配置成这样的方式,它(包括其软件)就是一个嗅探器。

当采用了交换机,那么正常情况下,其它主机的数据包就不会出现在本地的网络接口,那么也就无法嗅探其它主机的数据包。当然可以采用一些特殊的方法进行嗅探。

4、Sniffer原理

在介绍完前面的内容后就可以来说明Sniffer的原理了。首先,要知道SNIFFER要捕获的东西必须是要物理信号能收到的报文信息。显然只要通知网卡接收其收到的所有包(一般叫做混杂promiscuous模式:指网络上的所有设备都对总线上传送的数据进行侦听,并不仅仅是它们自己的数据。),在HUB下就能接收到这个网段的所有包,但是交换机下就只能是自己的包加上广播包

要想在交换机下接收别人的包,那就要让其发往你的机器所在口。交换机记住一个口的MAC是通过接收来自这个口的数据后并记住其源MAC,就像一个机器的IP与MAC对应的ARP列表,交换机维护一个物理口与MAC的表,所以可以欺骗交换机的。可以发一个包设置源MAC是你想接收的机器的MAC,那么交换机就把你机器的网线插的物理口与那个MAC对应起来了,以后发给那个MAC的包就发往你的网线插口了,也就是你的网卡可以Sniffer到了。注意这物理口与MAC的表与机器的ARP表一样是动态刷新的,那机器发包后交换HUB就又记住他的口了,所以实际上是两个在争,这只能应用在只要收听少量包就可以的场合。

内部网基于IP的通信可以用ARP欺骗别人机器让其发送给你的机器,如果要想不影响原来两方的通信,可以欺骗两方,让其都发给你的机器再由你的机器转发,相当于做中间人,这用ARP加上编程很容易实现。并且现在很多设备支持远程管理,有很多交换机可以设置一个口监听别的口,不过这就要管理权限了。

利用这一点,可以将一台计算机的网络连接设置为接受所有以太网总线上的数据,从而实现Sniffer。Sniffer就是一种能将本地网卡状态设成‘混杂’状态的软件,当网卡处于这种“混杂”方式时,该网卡具备“广播地址”,它对遇到的每一个帧都产生一个硬件中断以便提醒操作系统处理流经该物理媒体上的每一个报文包。(绝大多数的网卡具备置成混杂模式的能力)

可见,Sniffer工作在网络环境中的底层,它会拦截所有的正在网络上传送的数据,并且通过相应的软件处理,可以实时分析这些数据的内容,进而分析所处的网络状态和整体布局。值得注意的是:Sniffer是极其安静的,它是一种消极的安全攻击。

嗅探器在功能和设计方面有很多不同。有些只能分析一种协议,而另一些可能能够分析几百种协议。一般情况下,大多数的嗅探器至少能够分析下面的协议:标准以太网、TCP/IP、IPX。

嗅探器造成的危害

sniffing是作用在网络基础结构的底层。通常情况下, 用户并不直接和该层打交道,有些甚至不知道有这一层存在。所以,应该说Sniffer的危害是相当之大的,通常,使用Sniffer是在网络中进行欺骗的开始。它可能造成的危害:

嗅探器能够捕获口令。这大概是绝大多数非法使用Sniffer的理由,Sniffer可以记录到明文传送的用户名和口令。能够捕获专用的或者机密的信息。比如金融帐号,许多用户很放心在网上使用自己的信用卡或现金帐号,然而Sniffer可以很轻松截获在网上传送的用户姓名、口令、信用卡号码、截止日期、帐号和pin。比如偷窥机密或敏感的信息数据,通过拦截数据包,入侵者可以很方便记录别人之间敏感的信息传送,或者干脆拦截整个的email会话过程。可以用来危害网络邻居的安全,或者用来获取更高级别的访问权限窥探低级的协议信息。

这是很可怕的事,通过对底层的信息协议记录,比如记录两台主机之间的网络接口地址、远程网络接口IP地址、IP路由信息和TCP连接的字节顺序号码等。这些信息由非法入侵的人掌握后将对网络安全构成极大的危害,通常有人用Sniffer收集这些信息只有一个原因:他正要进行一次欺骗(通常的ip地址欺骗就要求你准确插入TCP连接的字节顺序号),如果某人很关心这个问题,那么Sniffer对他来说只是前奏,今后的问题要大得多。(对于高级的黑客而言,这是使用Sniffer的唯一理由吧)

事实上,如果在网络上存在非授权的嗅探器就意味着你的系统已经暴露在别人面前了。

一般Sniffer只嗅探每个报文的前200到300个字节。用户名和口令都包含在这一部分中,这是我们关心的真正部分。

简单的放置一个嗅探器并将其放到随便什么地方将不会起到什么作用。将嗅探器放置于被攻击机器或网络附近,这样将捕获到很多口令,还有一个比较好的方法就是放在网关上。Sniffer通常运行在路由器,或有路由器功能的主机上。这样就能对大量的数据进行监控。Sniffer属第二层次的攻击。通常是攻击者已经进入了目标系统,然后使用Sniffer这种攻击手段,以便得到更多的信息。如果这样的话就能捕获网络和其他网络进行身份鉴别的过程。

网络嗅探工具的原理 snifferwireshark相关推荐

  1. 网络嗅探,工具 10 个

    一.Nessus:这是一款UNIX平台的漏洞评估工具,可以说它是最好的.免费的网络漏洞扫描程序.其更新速度很快,有超过11000个插件.其关键特性包括安全和本地的安全检查,拥有GTK图形接口的客户端/ ...

  2. [软件甜点] 一款Win下超级简单的网络嗅探工具MiniSniffer

    最近使用了一款超级简单的网络嗅探工具Mini Sniffer,不敢独食,和大家一起分享. 软件信息 名称:Mini Sniffer 版本:v1.0 主页:无,作者邮箱:baojianjob@tom.c ...

  3. Kali学习 | 无线渗透:7.1 无线网络嗅探工具Kismet

    Kali学习 | 无线渗透:7.1 无线网络嗅探工具Kismet Kismet 介绍 操作步骤 分析PCAP信号帧 分析Kismet的Text文件 Kismet 介绍 如果要进行无线网络渗透测试,则必 ...

  4. 带你了解无线网络渗透测试——无线网络嗅探工具Kismet

    如果要进行无线网络渗透测试,则必须先扫描所有有效的无线接入点.刚好在Kali Linux中,提供了一款嗅探无线网络工具Kismet.使用该工具可以测量周围的无线信号,并查看所有可用的无线接入点.本节将 ...

  5. ​Kali-linux无线网络嗅探工具Kismet​

    如果要进行无线网络渗透测试,则必须先扫描所有有效的无线接入点.刚好在Kali Linux中,提供了一款嗅探无线网络工具Kismet.使用该工具可以测量周围的无线信号,并查看所有可用的无线接入点.本节将 ...

  6. 无线网络嗅探工具Kismet

    如果要进行无线网络渗透测试,则必须先扫描所有有效的无线接入点.刚好在 Kali Linux 中,提供了一款嗅探无线网络工具 Kismet.使用该工具可以测量周围的无线信号,并查看所有可用的无线接入点. ...

  7. Kali-linux无线网络嗅探工具Kismet

    如果要进行无线网络渗透测试,则必须先扫描所有有效的无线接入点.刚好在Kali Linux中,提供了一款嗅探无线网络工具Kismet.使用该工具可以测量周围的无线信号,并查看所有可用的无线接入点.本节将 ...

  8. 网络嗅探与欺骗----函数sniff()、ARP的原理、ARP欺骗、AARP欺骗的中间人攻击

    网络嗅探与欺骗 如果想要彻底了解一个网络,那么最好的办法就是对网络中的流量进行嗅探 嗅探工具可以用来窃取网络中明文传输的密码,监视网络中的数据流向,甚至可以收集远程登录所使用的NTLM数据包(这个数据 ...

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

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

最新文章

  1. 2018-2019-2 网络对抗技术 20165239Exp3 免杀原理与实践
  2. LNMP之 nginx 启动脚本和配置文件
  3. (素材源码) 猫猫学IOS(十二)UI之UITableView学习(上)LOL英雄联盟练习
  4. 查看php项目tp版本,tp5.1如何查看版本号
  5. 突然想 写个 接口定义 【来源于华为和海康 设备接口同步】
  6. 数据库学习----MySQL(一)
  7. 嵌入式linux局域网聊天软件
  8. matlab停止运行命令_matlab终止运行命令
  9. 终端模拟器编译c语言,开源一个Flutter编写的完整终端模拟器
  10. Emlog模板fee2.0主题商业版
  11. 免费录屏软件Captura下载安装及分享
  12. 华为计算机网络认证软件,华为认证入门计算机网络基础
  13. 【TeXstudio】【7】段落,编号与自定义编号——《LaTeX入门》
  14. java编程用什么笔记本_程序员都用什么牌子的笔记本,你知道吗?
  15. python多线程tomorrow的使用
  16. opencv之图像矩 image moments
  17. Mysql清除字段中的中文,只保留数字、字母等非中文符号
  18. 通信专业实务(一)——现代通信网概述
  19. 红色商务年终总结PPT模板
  20. 全国-百度地图中心点坐标

热门文章

  1. 计算机错误id11,错误711,教您宽带连接错误代码:711怎么解决
  2. C# Linq中的Join使用
  3. python将微信二维码转化为炫酷二维码
  4. 米勒实验 计算机模拟,米勒-尤列实验
  5. java 有序的Map LinkedHashMap简介
  6. 75道逻辑思维题---会作10道智商就是正常,会作30道就不是凡人,会作60道就是高智商稀有人才了!
  7. ESP8266 ESP-01 制作路由中继(信号放大装置)
  8. [2020-01-01] 树莓派 4B+ 安装笔记
  9. PDF翻译 QQ浏览器 之 AI翻译 离线本地PDF
  10. PCB钻孔工艺故障及解决办法