我曾经想设置远程程序号的过滤规则,但发现RPC REPLY报文中没有固定字段对应远程程序号,只好放弃。如果你只想抓RPC CALL报文,可以考虑这个思路。NetXray发包前可以在decode状态下编辑,sniffer pro 2.6却不象NetXray那样善解人意,只能进行二进制编辑。sniffer pro的Add Pattern里的TAB键极其混帐,并且这里也不提供decode支持。始终不能理解这些地方。不过破解版的
NetXray在decode时有些地方对不准,菜单window也不时失灵。
3.6据说比3.5加强了一些,包括退出后僵尸进程的问题,启动中乱报错问题,现在似乎支持拨号适配器上的抓包了(以前如何我还真没测试过),但在过滤规则上毫无改观。以前过滤规则全部在升级过程中丢掉了,只好重新设置。下面是IP过滤规则的设置:
1.从菜单上选择Capture-->;Filter,选择左上角的[ New Profile ]按钮,输入你觉得切合要求的名字,比如IP。这里有个小窍门,如果你已经有一个合理可用的Default规则,就先选中Default规则,然后点击左上角的[ New Profile ]按钮,那么新规则以Default规则为模板生成。
[2] 在NT下的sniffit
Sniffit 0.3.7推出了NT版本,也支持WINDOWS2000,这个sniffit需要WinPcap包,就是类似与libpcap的包,支持WIN32平台上可以信息包捕获和网络分析,是基于UNIX的libpcap和BPF(Berkeley 分帧过滤器)模型的包。它包括内核级的包过滤驱动程序,低级动态连接库(packet.dll),和高级系统无关性库(libpcap,基于0.4a6版本)。
这个WinPcap信息包捕获启动程序可把设备驱动增加在Windows 95, Windows 98, Windows NT 和 Windows 2000 上,可以有能力捕获和发送通过原始套接口的信息包(raw packets),Packet.dll是一个能用来直接访问BPF驱动程序的API。
WinPcap在 http://netgroup-serv.polito.it/windump 和 http://netgroup-serv.polito.it/analyzer 这两个工具中成功应用。最新的WinPcap是版本2.02,修补了2.01版本中的一些缺陷,并且支持WIN2000。具体信息和源代码可以在下面这个站点找到:
http://netgroup-serv.polito.it/winpcap/
下面是在WIN2K中安装的步骤:
1)先下载packet.exe这个程序后展开安装。
2)打开WINDOWS2000的控制面板
3)从控制面板中双击"网络和拨号连接"图标,在打开"本地连接"图标,并选择属性选项。
4)在显示的对话框中选择"安装",安装网络组件。
5)再在出现的对话框中选择"协议",点击"增加"。
6)在出现的对话框中选择"从磁盘安装",选择正确路径,就是刚才你解压的网络设备驱动程序(这个文件夹中必须包含packet.inf和packet.sys)的地方,在选择确定。
7)在选择"acket capture Driver v X.XX ",并按照指示来完成安装,往往要你WINDOWS2000的安装光盘。
8)查看网络组件中有没有 Packet capture Driver v X.XX 这一行,有的话说明这个驱动程序已经建立并绑定了网络接口。
再重新启动机器。然后解压sniffit_nt.0.3.7.beta,再使用命令行模式,我简单的使用了一个命令行,刚开始是使用sniffit -t 192.168.0.1 -p 21,想监视下21 FTP端口的密码捕获成不成功,但出现"Automatic network device lookup not yet supported in Win32 version... use '-F \Device\Packet_{31BB7ED2-125E-11D4-8F11-D79985727802}' to force the choice,Read the README.FIRST on how to force network devices.的提示,于是我按照其提示所示,使用了sniffit -F \Device\packet_{31BB7ED2-125E-11D4-8F11-D79985727 802} -t 192.168.0.1 -p 21命令,这时出现下面的提示:
Forcing device to \Device\packet_{31BB7ED2-125E-11D4-8F1 quested)...
Make sure you have read the docs carefully.
Sniffit.0.3.7 Beta is up and running.... (192.168.0.1)
这就表明sniffit在工作了,于是在FTP到NT的端口,输入密码,随即就可以在刚才SNIFFIT的目录下看到一个关于192.168.0.2.1281-192.168.0.1.21的文件,打开后查看里面的内容如下所示:
USER xundi
PASS xxxxxxx-------->;我隐藏了,XIXI
SYST
PORT 192,168,0,2,5,2
LIST
PORT 192,168,0,2,5,3
LIST
CWD g:
CWD c
PORT 192,168,0,2,5,26
LIST
CWD hack
PORT 192,168,0,2,5,88
LIST
看,是不是很整洁啊,至于文件名为何是这样192.168.0.2.1281-192.168.0.1.21,那是应该是一个客户/服务器模式,客户端的连接是随意开一个1281端口地址和192.168.0.1的21口连接。
五.如何监测主机正在窃听
如何才知道有没有sniffer在我的网上跑呢?这也是一个很难说明的问题,比较有说服力的理由证明你的网络有sniffer目前有这么几条:
1、你的网络通讯掉包率反常的高。
通过一些网络软件,你可以看到你的信息包传送情况(不是sniffer),向ping这样的命令会告诉你掉了百分几的包。如果网络中有人在听,那么你的信息包传送将无法每次都顺畅的流到你的目的地。(这是由于sniffer拦
截每个包导致的)
2、你的网络带宽将出现反常。
通过某些带宽控制器(通常是火墙所带),你可以实时看到目前网络带宽的分布情况,如果某台机器长时间的占用了较大的带宽,这台机器就有可能在听。在非高速信道上,如56Kddn等,如果网络中存在sniffer,你应该也可以察觉出网络通讯速度的变化。
3、通常一个sniffer的记录文件会很快增大并填满文件空间。在一个大型网络中,sniffer明显加重机器负荷。这些警告信息往往能够帮助管理员发现sniffer。
4、一个主机上的sniffer会将网络接口置为混杂模式以接收所有数据包。对于某些UNIX系统, 通过监测到混杂模式的网络接口。虽然可以在非混杂模式下运行sniffer,但这样将只能捕获本 机会话。只有混杂模式下的 sniffing才能捕获以太网中的所有会话,其它模式只能捕获本机会话。
对于SunOS、linux和其它BSD Unix系统,如下命令:
"ifconfig -a"
会显示所有网络接口信息和是否在混杂模式。DEC OSF/1和IRIX等系统需要指定设备。要找到系统中有什么网络接口,可以运行如下命令:
# netstat -r
Routing tables