|
扫描器是一种自动检测远程或本地主机安全性弱点的程序。使用扫描器,可以获得远程服务器的大量信息,例如:开放端口、提供的服务以及它们的软件版本等。通过这些信息,我们可以了解到远程主机所存在的安全问题,从而能够及时修补系统存在的安全隐患。同时,扫描器也能够为攻击者提供很大的方便,可以大大简化他们的工作。
扫描器一般会先向远程TCP/IP端口发出请求,记录目标给予的回答,然后对应答信息进行分析。通过这种方法,可以搜集到目标主机的各种有用的信息,比如,端口是否开放;能否匿名登录等。另外,扫描器一般不是一个直接的网络漏洞攻击程序,它仅仅能帮助我们发现目标机器的某些内在的弱点。
下面我们将介绍几个Linux系统中常用的扫描器以及防范措施。本文将分上、下两篇,上篇主要介绍一些常用扫描器的功能和使用;下篇将介绍一些比较有效的防范措施。
1. 端口扫描工具nmap
提起端口扫描,我们自然会想到nmap。这是一个强大的端口扫描程序,支持种类繁多的扫描技术,例如:UDP扫描、TCP连接扫描、TCP SYN扫描(半开扫描)、FTP反弹攻击、反向识别、ICMP扫描、FIN扫描、ACK扫描、圣诞树扫描、null扫描等。从扫描技术看,nmap是众多端口扫描器中的极品。此外,它还提供了一些高级的特征,例如:系统指纹特征识别、诱饵扫描、碎片扫描等。
1.1 下载并安装nmap
nmap的官方站点http://www.insecure.org/nmap ,不知道什么原因,这个地址已经好长时间无法下载nmap软件包了。用户可以在packetstormsecurity.nl下载最新版的nmap。nmap的安装非常简单,下载之后,只要执行如下命令即可:
# tar zxvf nmap-2.54BETA34.tgz
#cd nmap-2.54BETA34
#./configure&&make&&make install
如果需要图形化nmapfe,还需要GTK+的支持。
1.2 nmap的常用功能
命令行选项
功能
示例
-sT
TCP connect()扫描,这是最基本的TCP扫描方式。
nmap -sT 192.168.0.1
-sS
TCP SYN扫描,这项技术通常称为半开扫描(half-open)。
nmap -sS 192.168.0.1
-sU
UDP扫描,扫描目标系统提供UDP服务的端口。对UNIX系统使用UDP扫描可能非常缓慢,而对Windows系统速度很快。
nmap -sU 192.168.0.1
-O
使用系统识别功能,需要root权限
nmap -sT -O 192.168.0.1
-P0
在扫描之前,不必ping主机。有些网络的防火墙不允许ICMP echo请求通过,使用这个选项可以对这些网络进行扫描。
nmap -sT -P0 -O 192.168.0.1
这些选项只是nmap所有功能的一小部分,详情请参考nmap的手册页。熟练运用nmap提供的功能,可以提高扫描效率、加强扫描的隐蔽性。 |
|