深入学习sniffer

上传人:第*** 文档编号:32759155 上传时间:2018-02-12 格式:DOC 页数:12 大小:63KB
返回 下载 相关 举报
深入学习sniffer_第1页
第1页 / 共12页
深入学习sniffer_第2页
第2页 / 共12页
深入学习sniffer_第3页
第3页 / 共12页
深入学习sniffer_第4页
第4页 / 共12页
深入学习sniffer_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《深入学习sniffer》由会员分享,可在线阅读,更多相关《深入学习sniffer(12页珍藏版)》请在金锄头文库上搜索。

1、深入学习 sniffer随着 Internet 及电子商务的日益普及,Internet 的安全也越来越受到重视。而在 Internet 安全隐患中扮演重要角色的是 Sniffer 和 Scanner,本文将介绍 Sniffer 以及如何阻止 sniffer。 大多数的黑客仅仅为了探测内部网上的主机并取得控制权,只有那些雄心勃勃 的黑客,为了控制整个网络才会安装特洛伊木马和后门程序,并清除记录。他们经常使用的手法是安装 sniffer。 在内部网上,黑客要想迅速获得大量的账号(包括用户名和密码) ,最为有效的手段是使用 sniffer 程序。这种方法要求运行 Sniffer 程序的主机和被监听的

2、主机必须在同一个以太网段上,故而在外部主机上运行 sniffer 是没有效果的。再者,必须以 root 的身份使用 sniffer 程序,才能够监听到以太网段上的数据流。 黑客会使用各种方法,获得系统的控制权并留下再次侵入的后门,以保证 sniffer 能够执行。在 Solaris 2.x 平台上,sniffer 程序通常被安装在/usr/bin 或/dev 目录下。黑客还会巧妙的修改时间,使得 sniffer 程序看上去是和其它系统程序同时安装的。 大多数 ethernet sniffer程序在后台运行,将结果输出到某个记录文件中。黑客常常会修改ps 程序,使得系统管理员很难发现运行的 sn

3、iffer 程序。 ethernet sniffer程序将系统的网络接口设定为混合模式。这样,它就可以监听到所有流经同一以太网网段的数据包,不管它的接受者或发送者是不是运行 sniffer 的主机。 程序将用户名、密码和其它黑客感兴趣的数据存入 log 文件。黑客会等待一段时间 - 比如一周后,再回到这里下载记录文件。 一、什么是 sniffer 与电话电路不同,计算机网络是共享通讯通道的。共享意味着计算机能够接收到发送给其它计算机的信息。捕获在网络中传输的数据信息就称为 sniffing(窃听) 。 以太网是现在应用最广泛的计算机连网方式。以太网协议是在同一回路向所有主机发送数据包信息。数据

4、包头包含有目标主机的正确地址。一般情况下只有具有该地址的主机会接受这个数 据包。如果一台主机能够接收所有数据包,而不理会数据包头内容,这种方式通常称为混杂 模式。 由于在一个普通的网络环境中,帐号和口令信息以明文方式在以太网中传输,一旦入侵者获 得其中一台主机的 root 权限,并将其置于混杂模式以窃听网络数据,从而有可能入侵网络中的所有计算机。 二、sniffer 工作原理 通常在同一个网段的所有网络接口都有访问在物理媒体上传输的所有数据的能力,而每个网络接口都还应该有一个硬件地址,该硬件地址不同于网络中存在的其他网络接口的硬件地址,同时,每个网络至少还要一个广播地址。 (代表所有的接口地址

5、) ,在正常情况下,一个合法的网络接口应该只响应这样的两种数据帧: 1、帧的目标区域具有和本地网络接口相匹配的硬件地址。 2、帧的目标区域具有广播地址 。 在接受到上面两种情况的数据包时,nc 通过 cpu 产生一个硬件中断,该中断能引起操作系统注意,然后将帧中所包含的数据传送给系统进一步处理。 而 sniffer 就是一种能将本地 nc 状态设成(promiscuous)状态的软件,当 nc 处于这种混杂方式时,该 nc 具备广播地址 ,它对所有遭遇到的每一个帧都产生一个硬件中断以便提醒操作系统处理流经该物理媒体上的每一个报文包。 (绝大多数的 nc 具备置成 promiscuous方式的能

6、力) 可见,sniffer 工作在网络环境中的底层,它会拦截所有的正在网络上传送的数据,并且通过相应的软件处理,可以实时分析这些数据的内容,进而分析所处的网络状态和整体布局。值得注意的是:sniffer 是极其安静的,它是一种消极的安全攻击。 通常 sniffer 所要关心的内容可以分成这样几类: 1、口令: 我想这是绝大多数非法使用 sniffer 的理由,sniffer 可以记录到明文传送的 userid 和 passwd.就算你在网络传送过程中使用了加密的数据,sniffer 记录的数据一样有可能使入侵者在家里边吃肉串边想办法算出你的算法。 2、金融帐号: 许多用户很放心在网上使用自己的

7、信用卡或现金帐号,然而 sniffer 可以很轻松截获在网上传送的用户姓名、口令、信用卡号码、截止日期、帐号和 pin。 3、偷窥机密或敏感的信息数据: 通过拦截数据包,入侵者可以很方便记录别人之间敏感的信息传送,或者干脆拦截整个的email 会话过程。 4、窥探低级的协议信息: 这是很可怕的事,我认为,通过对底层的信息协议记录,比如记录两台主机之间的网络接口地址、远程网络接口 ip 地址、 ip 路由信息和 tcp 连接的字节顺序号码等。这些信息由非法入侵的人掌握后将对网络安全构成极大的危害,通常有人用 sniffer 收集这些信息只有一个原因:他正在进行一次欺诈, (通常的 ip 地址欺诈

8、就要求你准确插入 tcp 连接的字节顺序号,这将在以后整理的文章中指出)如果某人很关心这个问题,那么 sniffer 对他来说只是前奏,今后的问题要大条得多。 (对于高级的 hacker 而言,我想这是使用 sniffer 的唯一理由吧) 。 三、哪里可以得到 sniffer Sniffer 是黑客们最常用的入侵手段之一。你可以在经过允许的网络中运行 sniffer,了解它是如何有效地危及本地机器安全。 Sniffer 可以是硬件,也可以是软件。现在品种最多,应用最广的是软件 Sniffer, 绝大多数黑客们用的也是软件 Sniffer。 以下是一些也被广泛用于调试网络故障的 sniffer

9、工具: 商用 sniffer: 1 Network General. Network General 开发了多种产品。最重要的是 Expert Sniffer,它不仅仅可以 sniff,还能够通过高性能的专门系统发送/接收数据包,帮助诊断故障。还有一个增强产品Distrbuted SnifferSystem可以将 UNIX 工作站作为 sniffer 控制台,而将 snifferagents(代理)分布到远程主机上。 2 Microsofts Net Monitor 对于某些商业站点,可能同时需要运行多种协议-NetBEUI、IPX/SPX、TCP/IP、802.3 和SNA 等。这时很难找到

10、一种 sniffer 帮助解决网络问题,因为许多 sniffer 往往将某些正确的协议数据包当成了错误数据包。Microsoft 的 Net Monitor(以前叫 Bloodhound)可以解决这个难题。它能够正确区分诸如 Netware 控制数据包、NTNetBios 名字服务广播等独特的数据包。 (etherfind 只会将这些数据包标识为类型 0000 的广播数据包。 )这个工具运行在MS Windows 平台上。它甚至能够按 MAC 地址(或主机名)进行网络统计和会话信息监视。只需简单地单击某个会话即可获得 tcpdump 标准的输出。过滤器设置也是最为简单的,只要在一个对话框中单击

11、需要监视的主机即可。 免费软件 sniffer 1 Sniffit 由 Lawrence Berkeley 实验室开发,运行于 Solaris、SGI 和 Linux 等平台。可以选择源、目标地址或地址集合,还可以选择监听的端口、协议和网络接口等。这个 SNIFFER默认状态下只接受最先的 400 个字节的信息包,这对于一次登陆会话进程刚刚好。 2 SNORT:这个 SNIFFER 有很多选项供你使用并可移植性强,可以记录一些连接信息,用来跟踪一些网络活动。 3 TCPDUMP:这个 SNIFFER 很有名,linux,FREEBSD 还搭带在系统上,是一个被很多UNIX 高手认为是一个专业的

12、网 络管理工具,记得以前 TsutomuShimomura(应该叫下村侵吧)就是使用他自己修改过的 TCPDUMP 版本来记录了 KEVINMITNICK 攻击他系统的记录,后来就配合 FBI 抓住了 KEVINMITNICK,后来他写了一文:使用这些 LOG 记录描述了那次的攻击,How Mitnick hacked Tsutomu Shimomura with an IP sequence attack (http:/www.attrition.org/security/newbie/security/sniffer/shimomur.txt) 4 ADMsniff:这是非常有名的 ADM

13、 黑客集团写的一个 SNIFFER 程序。 5 linsniffer:这是一个专门设计杂一 LINUX 平台上的 SNIFFER。 6 Esniffer:这个也是一个比较有名的 SNIFFER 程序。 7 Solsniffer:这是个 Solarissniffer,主要是修改了 SunSniff 专门用来可以方便的在 Solair 平台上编译。 8 Ethereal 是一基于 GTK的一个图形化 Sniffer。 9 Gobbler(for MSDOS Win95) 、Netman 、NitWit、Ethload.等等。 四、sniffer 的安装使用 我主要以 sniffit 为例分别介绍在

14、 nt 和 linux 下的应用。 1 在 linux 下的 sniffit 安装: 软件的安装 1、用 tarzvfxsniffit.*.*.*.tgz 将下载下来的 sniffit.*.*.*.tgz 解压缩 到你想要的目的文件夹,如果版本是 0.3.7 的话,你会看到该目录下出现一个 sniffit.0.3.7 的目录。 2、cd sniffit.0.3.7 3、./configure & make,只要在这个过程中终端上没有意外的 error 信息出现,你就算编译成功了-可以得到一个二进制的 sniffit 文件。 4、makeclean 把不用的垃圾扫掉 使用方法 1、参数,有如下的

15、命令选项: -v 显示版本信息 -t 让程序去监听指定流向某 IP 的数据包 -s 让程序去监听从某 IP 流出的 IP 数据包,可以使用 通配符 -t199.145. -i 显示出窗口界面,能察看当前在你所属网络上进行连接的机器 -I 扩展的交互模式,忽略所有其它选项,比-i 强大得多 -c 利用脚本来运行程序 -F 强制使程序使用网络硬盘 -n 显示出假的数据包。象使用 ARP、RARP 或者其他不是 IP 的数据包也会显示出来 -N 只运行 plugin 时的选项,使其它选项失效 在-i 模式下无法工作的参数: -b 同时做-t 和-s 的工作 -d 将监听所得内容显示在当前终端- 以十

16、六进制表示 -a 将监听所得内容显示在当前终端-以 ASCII 字符表示 -x 打印 TCP 包的扩展信息(SEQ,ACK,Flags),可以与-a,-d,-s,-t,-b 一起运作,注意- 它是输出在标准输出的,如果只用-t,-s,-b 而没有其它参数配合的话不会被写入文件 -R 将所有通信记录在文件中 -r 这一选项将记录文件送往 sniffit,它需要-F 的参数配合指明设备,假设你用 eth0(第一块网卡)来记录文件,你必须在命令行里面加上-Feth0 或者或者或者或者或者-Feth-A 遇到不认识的字符时用指定的字符代替 -P 定义监听的协议,DEFAULT 为 TCP-也可以选 IP、ICMP、UDP -p 定义监听端口,默认为全部 -l 设定数据包大小,default 是 300 字节 -M 激活插件 -I,-i 模式下的参数 -D 所有的记录会被送到这个磁盘上 -c 模式下的参数 -L 其中 logparam 可以是如下的内容

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号