-
Sniffer
常见问题集
(FAQ)
发布日期
: 2000-1-15
内容
:
-
--------------------------------------------------
-----------------------------
By
backend
/
本文是
ISS
公司在几年前发布的一份
Sni
ffer
FAQ
。虽然里面涉及的技术可能相对陈旧
了一些,但仍然可作为入门级文档。希望这份
Sniffer
FAQ
能够帮助管理员们对网络监听及
解决方法
有一个较为清楚的认识。
Sniffer
已成为当今互联网上最
常见的主机入侵手段之一。
在绿盟网络安全月刊中,我还将陆
续介绍
Sniffer
、
Sniffe
r
的克星——
Anti-
Sniffer
和
Anti-
Sniffer
的克星——
Anti Anti-Sniffe
r
。
希望对这方面有兴趣的朋友如果有些什么好资料或
建议,请与我联系。
FAQ
目录:
*
什么是
sniffer
及其工作原理
*
哪里可以得到
sniffer
*
<
/p>
如何监测主机正在窃听(
sniffed
)
*
阻止
sniffer
o
主动集线器
o
加密
o
Kerberos
o
一次性口令技术
o
非混杂模式网络接口设备
-------------------------------------------
------------------------------------
<
/p>
什么是
sniffer
及其工作原理
p>
与电话电路不同,
计算机网络是共享
通讯通道的。
支持每对通讯计算机独占通道的交换
机
/
集线器仍然过于昂贵。共享意味着计算机能够接收到发送给其它计算机的
信息。捕获在
网络中传输的数据信息就称为
sniffing<
/p>
(窃听)
。
p>
以太网是现在应用最广泛的计算机连网方式。
以太网协议是在同一回
路向所有主机发送
数据包信息。
数据包头包含有目标主机的正确
地址。
一般情况下只有具有该地址的主机会接
受这个数据包。<
/p>
如果一台主机能够接收所有数据包,
而不理会数据包头内容,
p>
这种方式通常
称为“混杂”模式。
由于在一个普通的网络环境中,
帐号
和口令信息以明文方式在以太网中传输,
一旦入侵
者获得其中一
台主机的
root
权限,并将其置于混杂模式以窃听网络数据,
从而有可能入侵
网络中的所有计算机。
-------------------------------------------------
------------------
哪里可以得到
sniffer
Sni
ffer
是黑客们最常用的入侵手段之一。例如
Esniff.
c
,是一个小巧的工具,运行在
SunOS
平台,可捕获所有
telnet
、
ftp
、
rloing
会话的前
300
个字节内容。这个由
Phrack
p>
开发
的程序已成为在黑客中传播最广泛的工具之一。
你可以在经过允许的网络中运行
Es
niff.c
,了解它是如何有效地危及本地机器安全。
以下是一些也被广泛用于调试网络故障的
sniffer
工具:
*
Etherfind on SunOs
*
Snoop on Solaris 2.x and SunOs
*
Tcpdump
*
Packetman,
Interman, Etherman, Loadman
商用<
/p>
sniffer
:
*
Network General.
Network
General
开发了多种产品。最重要的是
Expert
Sniffer
,
它不仅仅可以
sniff
,还能够通过高性能的专门系统发送
/
接收数
p>
据包,
帮助诊断故障。还有一个增强产品
System
可以将
UNIX
工作站作为
sniffer
< br>控制台,而将
sniffer
agents
(代理)分布到远程主机上。
*
Microsoft's Net Monitor
对于某些商业站点,可能同时需要运行多种协议——
NetBEUI
、
IPX/SPX
、
< br>TCP/IP
、
802.3
和<
/p>
SNA
等。这时很难找到一种
sniff
er
帮助
p>
解决网络问题,因为许多
sniffer
往
往将某些正确的协议数据包当
p>
成了错误数据包。
Microsoft
的<
/p>
Net Monitor
(以前叫
Blo
odhound
)
可以解决这个难题。它能够正确区分诸如
Netware
控制数据包、
NT
NetBios
名字服务广播等独特
的数据包。
(
etherfind
只会
将这些数
据包标识为类型
0000<
/p>
的广播数据包。
)这个工具运行在
MS
Windows
平台上。它甚至能够按
MAC
地址(或主机名)进行网络统计和会话
信息监视。只
需简单地单击某个会话即可获得
tcpdump
标准的输出。<
/p>
过滤器
设置也是最为简单的,只要在一个对话框中单击需要监视的
主机即可。
-------------------------------------------------
-------------------
如何监测主机正在窃听(
< br>sniffed
)
要监测
只采集数据而不对任何信息进行响应的窃听设备,
需要逐个仔细检查以太网上所
有物理连接。
不可能通过远程发送数据包或
p>
ping
就可以检查计算机是否正在窃听。
p>
一个主机上的
sniffer
会将网络接口
置为混杂模式以接收所有数据包。对于某些
UNIX
系统,通过
监测到混杂模式的网络接口。虽然可以在非混杂模式下运行
sniffer
,但这样将只
能捕获本机会话。
入侵者也可能通过在
诸如
sh
、
telnet
、
rlogin
、
d
等程序中捕获会话,
并将用户操作记录到其它文件中。这些都可能通过
监视
tty
和
kmem
等设备轻易发现。只有
混杂模式下的
sniffing
才能捕获以太网中的所有会话,其它模式只能捕获本机会话。
对于
SunOS
、
NetBSD
和其它
BSD
Unix
系统,如下命令:
会显示所有网络接口信息和是否在混杂模式。
DEC OSF/
1
和
IRIX
等系统需要指定设备。<
/p>
要找到系统中有什么网络接口,可以运行如下命令:
# netstat -r
Routing tables
Internet:
Destination
Gateway
Flags
Refs
Use
Interface
default
UG
1
24949
le0
localhost
localhost
UH
2
83
lo0
然后通过如下命令检查每个网络接口:
#ifconfig le0
le0: flags=8863
inet 127.0.0.1 netmask 0xffffff00
broadcast 255.0.0.1
入侵者
经常会替换
ifconfig
等命令来避开检查,因此一定要检
查命令程序的校验值。
在
p>
:/pub/tools/
的
cpm
程序
(
SunOS
平
台)
可以检查接口是否有混杂模式标记。
对于
Ultrix
< br>系统,使用
pfstat
和
pf
config
命令也可能监测是否有
sniffer
运行。
pfc
onfig
指定谁有权限运行
sniffer
< br>。
pfstat
显示网络接口是否处于混杂模式。
p>
这些命令只在
sniffer
与内核存在链
接时有效。
而在缺省情况,
sniffer
是没有与内核链接
的。大多数的
Unix
< br>系统,例如
Irix
、
Sola
ris
、
SCO
等,都没有任何标记来
指示是否处于混
杂模式,因此入侵者能够窃听整个网络而却无法监测到它。
通常一个
sniffer
的记录文件会很快增大并填满文件空间。在一个大型网络中,
sniffer
明显加重机器负荷。
这些警告信息
往往能够帮助管理员发现
sniffer
。
建议使用
lsof
程序搜索
访问数
据包设备(如
SunOS
的
/dev/
nit
)的程序和记录文件。
p>
-----------------------------------------
-------------------------
阻止
sniffer
p>
主动式集线器只向目标地址主机发送数据包,从而使混杂模式
sni
ffer
失效。它仅适用
于
10Bas
e-T
以太网。
(注:这种现在已在计算机市场消失。
)
只有两家厂商曾生产过主动式集线器:
*
3Com
*
HP
-
-
-
-
-
-
-
-
-
上一篇:材料科学基础基础知识点总结
下一篇:产业集聚区发展中遇到的问题