Nmap的学习与使用
赵彦喆 3110102884 信通1106
一:Nmap扫描原理:
1网络扫描软件Nmap
(1)简介
Nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪
服务运行在那些连接端,并且推断哪个操作系统计算机运行(这是亦称 fingerprinting)。它
是网络管理员必用的软件之一,以及用以评估网络系统保安。
正如大多数工具被用于网络安全的工具,nmap也是不少黑客及骇客(又称脚本小孩)
爱用的工具。系统管理员可以利用nmap来探测工作环境中未经批准使用的服务器,但
是黑客会利用nmap来搜集目标电脑的网络设定,从而计划攻击的方法。 Nmap常被跟
评估系统漏洞软件Nessus 混为一谈。Nmap以隐秘的手法,避开闯入检测系统的监视,
并尽可能不影响目标系统的日常操作。
(2)描述
nmap运行通常会得到被扫描主机端口的列表。nmap总会给出well known端口的服务
名(如果可能)、端口号、状态和协议等信息。每个端口的状态有:open、filtered、unfiltered。ept()系统调用接受连接。filtered状态表示:防火墙、包过滤和其它的网络安全软件掩盖了这个端口,禁止nmap探测其是否打开。unfiltered表示:这个端口关闭,并且没有防火墙/包过滤软件来隔离nmap的探测企图。通常情况下,端口的状态基本都是unfiltered状态,只有在大多数被扫描的端口处于filtered状态下,才会显示处于unfiltered状态的端口。 根据使用的功能选项,nmap也可以报告远程主机的下列特征:使用的操作系统、TCP序列、运行绑定到每个端口上的应用程序的用户名、DNS名、主机地址是否是欺骗地址、以及其它一些东西。
(3)Nmap所识别的6个端口状态。
(开放的)
应用程序正在该端口接收TCP 连接或者UDP报文。发现这一点常常是端口扫描的主要
目标。安全意识强的人们知道每个开放的端口都是攻击的入口。攻击者或者入侵测试者想要发现开放的端口。而管理员则试图关闭它们或者用防火墙保护它们以免妨碍了合法用户。非安全扫描可能对开放的端口也感兴趣,因为它们显示了网络上那些服务可供使用。
(关闭的)
关闭的端口对于Nmap也是可访问的(它接受Nmap的探测报文并作出响应),但没有应
用程序在其上监听。它们可以显示该IP地址上(主机发现,或者ping扫描)的主机正在运行up 也对部分操作系统探测有所帮助。
(被过滤的)
由于包过滤阻止探测报文到达端口,Nmap无法确定该端口是否开放。过滤可能来自专
业的防火墙设备,路由器规则或者主机上的软件防火墙。
(未被过滤的)
未被过滤状态意味着端口可访问,但Nmap不能确定它是开放还是关闭。只有用于映射
防火墙规则集的ACK扫描才会把端口分类到这种状态。用其它类型的扫描如窗口扫描,SYN扫描,或者FIN扫描来扫描未被过滤的端口可以帮助确定端口是否开放。
|filtered(开放或者被过滤的)
当无法确定端口是开放还是被过滤的,Namp就把该端口划分成这种状态。开放的端口
不响应就是一个例子。没有响应也可能意味着报文过滤器丢弃了探测报文或者它引发的
任何响应。因此Nmap无法确定该端口是开放的还是被过滤的。UDP,IP协议,FIN,
Null和Xmas扫描可能把端口归入此类。
|filtered(关闭或者被过滤的)
该状态用于Nmap不能确定端口是关闭的还是被过滤的。它只可能出现在IPID Idle扫描
中。
2语法
-s标志组成了不同的扫描类型,比如:一个
Ping-scan命令就是"-sP".在确定了目标主机和网络之后,,Nmap的功能会大大的增强,因为超级用户可以创建便于Nmap利用的定制数据包。 一般语法格式:nmap [Scan Type(s)] [Options]
3基本扫描类型
可以使用nmap -h快速列出功能选项的列表。
-sT
TCP connect()扫描:这是最基本的TCP扫描方式。connect()是一种系统调用,由操作系统提供,用来打开一个连接。如果目标端口有程序监听, connect()就会成功返回,否则这个端口是不可达的。这项技术最大的优点是,你勿需root权限。任何UNIX用户都可以自由使用这个系统调用。这种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息。
-sS
密码学大作业NMAP 来自淘豆网m.daumloan.com转载请标明出处.