科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道免费的sniffer--sniffit

免费的sniffer--sniffit

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Sniffit是由Lawrence Berkeley Laboratory开发的可以在Linux、Solaris、SGI、NT等各种平台运行的网络监听软件,它主要针对TCP/IP协议的不安全性,对运行该协议的机器进行监听。

作者: 51cto 2008年4月14日

关键字: 嗅探 网络嗅探 Sniffer 端口扫描

  • 评论
  • 分享微博
  • 分享邮件

  Sniffit是由Lawrence Berkeley Laboratory开发的可以在Linux、Solaris、SGI、NT等各种平台运行的网络监听软件,它主要针对TCP/IP协议的不安全性,对运行该协议的机器进行监听。和所有的Sniffer一样,数据包必须经过运行Sniffit的机器才能被监听,因此,Sniffit只能够监听同一个网段上的机器。

  由于Sniffit安装简便、功能强大,目前已成为黑客在UNIX中的首选Sniffer。在对网上一些被人侵的主机进行安全检测时,经常发现相当多的被人侵主机已经被黑客安装了Sniffit。

  Sniffit的另一特点是能够自由地为其增加某些插件以实现额外功能,这在后面会专门介绍。

  1.安装

  (1)用 tar zvfx sniffit.*.*.*.tgz将下载的sniffit.*.*.*.tgz解压缩到你想要的目的文件夹,如果版本是0.3.7的话,你会看到该目录下出现一个Sniffit.0.3.7的目录。

  (2)打开Sniffit.0.3.7目录。

  (3)执行/configure &&make命令,只要在这个过程中终端上没有意外的错误信息出现,就算编译成功了一可以得到一个二进制的Sniffit文件,直接运行它即可。

  (4)最后用make clean命令清除掉临时文件。

  2.使用方法

  Sniffit有如下一些命令选项:

  -V: 显示版本信息

  -t<ip nr/name>:让程序去监听指定流向某IP的数据包

  -s<ip nr/name>:让程序去监听从某IP流出的IP数据包,可以使用@通配符,如-t 199.145.

  @

  -i:显示出窗口界面,能查看当前在所属网络上进行连接的机器

  -I:扩展的交互模式,忽略所有其他选项,比一i强大得多

  -C<file>:利用脚本来运行程序

  -F<device>:强制使程序使用网络硬盘

  -n:显示出假的数据包。如果使用ARP、RARP或者其他不是P的数据包也会显示出来

  -N:只运行plugin时的选项,使其他选项失效

  下面是在-I模式下无法工作的参数:

  -b:同时做-t和-s的工作

  -d:将监听所得内容显示在当前终端——以十六进制表示

  -a:将监听所得内容显示在当前终端——以ASCll字符表示

  -X:打印 TCP包的扩展信息

  (SEQ、ACK、Flags),可以与-a、-d、-s、-t、-b一起运作。注意:它是通过标准来输出到屏幕的,如果只用-t、-s、-b 而没有其他参数配合的话,不会被写人文件

  -R<file>:将所有通信记录在文件中

  -r<file>:这一选项将记录文件送往Sniffit,它需要-F的参数配合指明设备假设用"eth0"(第一块网卡)来记录文件,必须在命令行里加上"-F eth0"或"-F eth",遇到不认识的字符时用指定的字符代替

  -P<protocol>:定义监听的协议,默认为TCP也可以选 IP、ICMP、UDP

  -p<port>定义监听端口,默认为全部

  -l<length>:设定数据包大小,默认是300字节

  -M<Plugin>:激活插件

  还有一些在一I、一i模式下使用的参数:

  -D<device>:所有的记录会被送到这个磁盘上在一C模式下使用的参数:

  -L<logparam>:其中logparam可以是如下的内容:

  raw:轻度

  norm:常规

  telnet:记录口令(端口23)

  ftp:记录口令(端口21)

  mail:记录信件内容(端口25)

  这些参数可以组合使用,如 telnet ftP mail norm等。

  (1)图形仿真界面:

  用上面提到的一i选项,可以进人图形界面的Sniffit,即直接输人 sniffit -i,就会出现一个窗口环境,从中可以看到自己所在的网络中有哪些机器正在连接,使用什么端口号。其中可用的命令如下:

  G:产生数据包,正常情况下只有UDP协议才会产生,执行此命令要回答一些关于数据包的问题

  N:产生一个小窗口,包括TCP、IP、ICMP、UDP等协议的流量

  R:刷新屏幕,重新显示正在连接的机器

  Q:退出窗口环境,结束程序

  F1:改变来源网域的IP地址,默认为全部

  F2:改变目的网域的IP地址,默认为全部

  F3:改变来源机器的端口号,默认为全部

  F4:改变目的机器的端口号,默认为全部

  (2)使用示例:

  假设在一个子网中有两台主机,一台运行了Sniffit,为 sniffit.com,另一台的IP地址是 66.66.66.7我们称之为target.com,按下列步骤操作:

  1、检查Sniffer是否能运行:

  sniffit:~/#sniffit-d-p 7 -t 66.66.66.7

  并且打开另一个窗口:

  sniffit:~/$telnet target.com 7

  应该可以看到Sniffit将远程登录到对方7号端口 echo服务的包捕获了。

  2、截获target.com上的用户密码:

  sniffit:~/# sniffit-p 23 -t 66.66.66.7

  意思是只监听TELNET(23)端口的包。

  3、如果target.com主机的根用户声称有陌生的FTP连接并且希望记录其动作:

  Siffit:~/# sniffit -p 21 -1 0 -t 66.66.66.7

  4、阅读所有进出 target.com 的信件:

  sniffit:~/# sniffit -p 25 -1 0 -b -t 66.66.66.7 &

  或者

  sniffit:~/# sniffit -p 25 -1 0 -b -s 66.66.66.7 &

  5、有错误发生时截获控制信息:

  sniffit:~/# sniffit -P icmp -b -s 66.66.66.7

  6、监听所有从66.66.66.7进出的包,对其进行完全监视:

  sniffit:~/# sniffit -P ipicmptcp -p 0 -b -a -d -x -s 66.66.66.7

  7 、用more 66* 命令读取用下列方式记录的密码:

  sniffit:~/# sniffit -p 23 -A . -t 66.66.66.7

  或者

  sniffit:~/# sniffit -p 23 -A^-t dummy.net

  (3)高级应用

  1、用脚本执行

  这是配合选项-c的,其执行方法也很简单,比如以下列方式编辑一个叫Sh的文件:

  select from host 180.180.180.1

  select to host 180.180.180.10

  seleCt both Port 21

  然后执行:sniffit -c sh

  说明:监听从180.18O.180.1送往180.180.180.10的数据包,端口为 FTP口。

  2、插件

  要获取一个插件是很简单的,只需将它放入sniffit的目录下,并且用如下方式编辑sn_plugin.h 文件:

  #define PLUGIN1_NAME "My plugin"

  #define PLUGIN1(X) main_plugin_function(x)

  #include "my_plugin.plug"

  其中:

  l)可以让Plugin 从0~9,所以从PLUGINO_NAME……不必是连续的。

  2)#include。"my_plugin.plug",这是自己的插件源代码放置的地方。

  3.插件TOD

  TOD是Sniffit最有名的一个插件,TOD是Touch Of Death的缩写,因为它可以轻易地切断一个TCP连接。其原理是向一个TCP连接中的一台主机发送一个断开连接的IP包,将这个IP包的RST位置设为1,便可以了。

  安装TOD需要将下载的tod.tar.gz 拷贝到sniffit所在目录下,解压安装后,用 In -s tod sniffit_key5命令将这个程序与F5键连接起来,想切断哪台机器的话,只要在窗口中将光标指到需要断线的机器上并按下F5键。当然,你也可以自由地定义成其他的F功能键,但是 F1~F4不行,因为它们已经被定义过了。

  4 Sniffit的 NT版本

  Sniffit 0.3.7推出了NT版本,同时也支持Windows 2000。安装 NT版的 Sniffit需要WinPcap包,这是一个与lib圳ap类似的包,支持Win 32平台,可以进行信息包捕获和网络分析,是基于Unix的libpcap 和BPF(Berkeley分帧过滤器)模型的包。它包括内核级的包过滤驱动程序、低级动态连接库Packet.dll)和高级系统无关性库(libpcap,基于0.4a6版本)。

  这个WinPcap信息包捕获启动程序,可把设备sg动增力在Windows 95、Windows 98、Windows NT和Windows 2000上,可以捕获和发送通过原始套接口的信息包(raw packets),Packet.dll是一个能用来直接访问BPF驱动程序的API,可以从网上找到。

  下面是sniffit在NT中的安装步骤:

  (1)下载 Packet.exe程序后开始安装。

  (2)打开控制面板,双击“网络和拨号连接”图标,再打开“本地连接”图标,并选择“属性”选项。

  (3)在显示的对话框中选择“安装”,安装网络组件。

  (4)在出现的对话框中选择“协议”,单击“增加”。

  (5)在出现的对话框中选择“从磁盘安装”,选择正确路径,就是刚才解压的网络设备驱动程序(这个文件夹中必须包含Packet.inf和packet.sys)的地方,再选择“确定”。

  (6)选择“Packet capture Driver v X.XX”,并按照指示完成安装,这一步骤需要将NT系统盘放人光驱。

  (7)查看网络组件中有没有 Packet capture Driver v X.XX这一行,有的话说明这个驱动程序已经建立并绑定了网络接回。

  (8)重新启动计算机。

  (9)解压sniffit_nt0.3.7beta,就可以直接使用了,具体使用方法和前面讲过的Unix版的Sniffit一样。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章