荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: xiaofeiyu.bbs@bbs.cqupt.edu.cn (小飞鱼), 信区: Linux
标  题: Nmap网络安全扫描器说明(2)
发信站: 幽幽黄桷兰 (Tue Dec 23 17:04:53 2003)
转信站: SZU!news.ccie.net.cn!news.uestc.edu.cn!CQUPT

扫描类型
--------*
-sT TCP connect()扫描:这是对TCP的最基本形式的侦测。在该操作下,
该connect()对目标主机上你感兴趣的端口进行试探,如果该端口被监听,
则连接成功——否则代表这个端口无法到达。这个技术的很大好处就是你
无须任何特殊权限,在大多数的UNIX系统下这个命令可以被任何人自由地
使用。但是这种形式的探测很容易被目标主机察觉并记录下来。因为服务器
接受了一个连接但它却马上断开,于是其记录会显示出一连串的连接及错
误信息。
-sS TCP SYN 扫描:这类技术通常涉及一种“半开”式的扫描——因为你
不打开完整的TCP连接,你发送一个SYN信息包就象你要打开一个真正的连
接而且你在等待对方的回应。一个SYN|ACK(应答)会表明该端口是开放监听
的。一个RST(空闲?)则代表该端口未被监听。如果SYN|ACK的回应返回,
则会马上发送一个RST包来中断这个连接(事实上是我们的系统核心在干这
事)。这种扫描的最大好处是只有极少的站点会对它作出记录,但是——你
需要有root权限来定制这些SYN包。
-sF -sX -sN
Stealth FIN,Xmas Tree 或者Null扫描模式:有时甚至SYN扫描都不够隐
蔽——一些防火墙及信息包过滤装置会在重要端口守护,SYN包在此时会
截获,一些应用软件如Synlogger以及Courtney对侦测这类型的扫描都是行
家。所以呢,在另一方面要有更进一步的扫描能在不遇到麻烦的情况下通过
它们……这个主意是关闭的端口会对你发送的探测信息包返回一个RST,而打
开的端口则对其忽略不理(你可以参阅RFC 973 PP64)。所以FIN扫描使用空
的FIN信息包作为探针、Xmas tree使用FIN,URG,PUSH标记、Null扫描则不
用任何标记。但是不幸的是微软以他们一贯的风格不理睬这一标准……所以这
一扫描在WINDOWS9X以及NT下不能工作。从积极方面来讲,这其实也是一个很
好的区分两种平台的办法——如果这次扫描发现了打开的端口,那你就能明白
这台机器不是运行WINDOWS。如果-sF,-sX,-sN的扫描显示所有端口都是关闭
的但一个SYN(-sS)扫描却显示有打开端口,那你就能大致推断它是WINDOWS平
台。这只是一个简单应用,因为现在nmap已经有了更彻底的操作系统判别方法
——当然它的原理类似上面所提到的.这些平台包括Cisco, BSDI, HP/UX,
MVS, 和IRIX。
-sP Ping扫描:有时你仅希望了解网络上有哪些主机是开放的,nmap可以通
过对你指定的IP地址发送ICMP的echo request信息包来做到这一点,有回应
的主机就是开放的啦。但令人讨厌的是一些站点比如microsoft.com对
echo request包设置了障碍。这样的话nmap还能发送一个TCP ack包到80端
口(默认),如果获得了RST返回,机器是开放的。第三个方法是发送一个
SYN信息包并等待RST 或SYN/ACK响应了。作为非root的用户可以使用的,常
用connect()模式。对root来说,默认的nmap同时使用ICMP和ACK的方法扫描
,当然你也可以改变-P选项。注意你最好先ping一下用户,只有有回应的主机
才有必要扫描,只有你不想探测任何的实际端口扫描只想大面积地搜索一下活
动的主机,你可以使用此选项。
-sU UDP扫描:这一方法是用来确定哪个UDP(User Datagram Protocol,RFC 768)
端口在主机端开放。这一技术是以发送零字节的UDP信息包到目标机器的各个端口
,如果我们收到一个ICMP端口无法到达的回应,那么该端口是关闭的,否则我们可
以认为它是敞开大门的。有些人或许会认为UDP扫描是无意义的,我通常会以最近
的Solaris rcpbind漏洞来提醒他们。Rpcbind会隐藏在一个非正式的UDP端口于
32770口以上,因此对111进行防火墙过滤是无关紧要的.但你是否查找过在30000以
上的端口是否处在监听状态中……,用UDP扫描你就能轻松地做到这一点!或者大家
还可以想想cDc出品的Back Orifice木马(BO),它可以在Windows的机器中配置一
个UDP端口,更不用说如此众多可以利用UDP的、易受攻击的服务如snmp,tftp,NFS等
了。但有一点不得不提及的是UDP扫描在目标主机按照RFC 1812(4.3.2.8节)建议
的那样限制ICMP错误信息的传送速率时会令人痛苦的缓慢。举例来说吧,Linux 的核
心配置(在net/ipv4/icmp.h)限制了每4秒产生80次的无法到达信息——每次产生1/4秒
的延迟。Solaris有着更严格的限制(大约每秒两次就会延迟),所以这要耗费相当长
的时间。nmap会侦测到这种限制并自动减缓速度——这也胜过用无意义的会被目标
主机忽略的大量信息包来填充这个网络。如以往一样,微软还是不在乎RFC所建议的
事而且没有任何限制性措施实行于WINDOWS或NT上,这样我们可以把多达65K的端
口以极高的速度扫描完毕,欢呼吧!
-sR RPC扫描:这一方法是结合nmap多种扫描的一种模式,它取得所有的TCP/UDP开
放端口并且用SunRPC程序NULL命令来试图确定是否是RPC端口并且——如果是的话,
其上运行什么程序,何种版本。这样你可以在目标主机躲在防火墙后或者由
TCP wrappers防护着,它都能取得效果近似于'rpcinfo -p'的信息。但Decoys
现在还不能正常工作在RPC扫描下,在以后我会在UDP RPC扫描中加入Decoy支持的。
-b(ftp relay host)
FTP 跳跃攻击:FTP协议的一个有趣的特点是它支持代理FTP连接(RFC 959),用另
一句话说,我可以从evil.com连接到一个FTP服务器target.com并且要求目标主机
发送文件到因特网的*任何地方*!在1985年这一RFC被写下来后这一特性便渐渐施行,
但在现在的网络上我们不允许人们能够随意地“抢劫”一个FTP SERVER并请求数据
到任何地方。所以在Hobbit于1995年写下的有关这一协议缺陷时说到“它可以用来
从许多站台上发出事实上难以追查的信件、新闻以及攻击性行为——填充你的硬盘,
试图使防火墙失效或者更多是烦人而无意义的骚扰。我开发出它来是为了通过一个
代理FTP服务器察看TCP端口,这样你可以连上一个在防火墙后的FTP服务器然后扫描
它看来仿佛堵塞的端口(139是很好的例子)。如果FTP服务器允许你读甚至写进某些
目录(比如/incoming),你可以发送任意信息到你发现打开了的端口(当然nmap不
干这事)。对于你要通过'b'选项来使主机成为你的代理时,标准的URL格式形式
是:username:password@server:port。要确定一个服务器是否易受这样的攻击,
你可以看看我在Phrack 51期上的文章。它的更新版本在
http://www.insecure.org/nmap。
--
※ 来源:·幽幽黄桷兰 bbs.cqupt.edu.cn·[FROM: 172.19.76.30]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店