nmap端口扫描工具使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nmap端口扫描工具使用相关的知识,希望对你有一定的参考价值。

(一)Port scan简介

port Scan的方法介绍 port Scan就是一种通过检测对方服务器的开放端口,侦测对方服务器服务的方法。一般可分为主动式和被动式两种。 主动式就是通过向对方服务器的特定端口发送数据包,根据应答来判断,以nmap 为代表。

        被动式,不主动发出数据包,而是在网络上长时侦听,分析网上的transaction,来分析,严格的来被动式不应该被称作是端口扫描。以nwatch为代表

(二)优缺点比较 

(1)主动式的优点

主动式只要在对方没有把通信阻断的情况下,可以在较短的时间内获得结果

(2)主动式的缺点

   1 现在带有阻断功能的防火墙越来越多,有些防火墙当检测到端口扫描时,会将端口关闭一定的时间,还有的机器使用了很多filter功能,只对特定的IP地址提供服务,这种情况下,主动式的正确性大打折扣。

   2  主动式只是在一瞬间对端口进行扫描,只有当服务器那个时候使用的服务才有可能被侦测到。

   3  端口扫描是一种广义上的攻击行为,对于末经许可的机器,一般不能施行。

被动式的优点 :被动式只是侦听网络,不会成为网络攻击,它长期运行,可以侦测到一个长时间间内服务器的变化。

被动式的缺点: 由于它不会主动发出请求包,即使端口开着,如果没有发生实际的通信,被动式也无法侦测到服务

    本文主要简述nmap的原理及功能。

(三)nmap功能和使用

(1)nmap(network mapper) ,最早是Linux下的网络扫描和嗅探工具包。 nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。     ----百度百科

(2)功能,有三个基本功能:

  1. 探测一组主机是否在线。

  2. 扫描主机端口,嗅探所提供的网络服务。

  3. 推断主机的操作系统。

Nmap可用于扫描仅有两个节点的LAN,直至500个节点以上的网络。Nmap 还允许用户定制扫描技巧。通常,一个简单的使用ICMP协议的ping操作可以满足一般需求;也可以深入探测UDP或者TCP端口,直至主机所 使用的操作系统;还可以将所有探测结果记录到各种格式的日志中, 供进一步分析操作。

(3)nmap安装,使用yum安装方便快捷。也可以登录官网(https://nmap.org/download.html)下载压缩包进行下载安装

[[email protected] conf]# yum install nmap -y
已加载插件:fastestmirror
设置安装进程
Determining fastest mirrors
epel/metalink                                                                                                                  | 6.5 kB     00:00     
 * epel: mirrors.ustc.edu.cn
base                                                                                                                           | 3.7 kB     00:00     
dockerrepo                                                                                                                     | 2.9 kB     00:00     
epel                                                                                                                           | 4.3 kB     00:00     
epel/primary_db                                                                                                                | 5.9 MB     00:49     
extras                                                                                                                         | 3.4 kB     00:00     
extras/primary_db                                                                                                              |  29 kB     00:00     
updates                                                                                                                        | 3.4 kB     00:00     
updates/primary_db                                                                                                             | 2.5 MB     00:01     
解决依赖关系
--> 执行事务检查
---> Package nmap.x86_64 2:5.51-6.el6 will be 安装
--> 完成依赖关系计算
依赖关系解决
======================================================================================================================================================
 软件包                           架构                               版本                                      仓库                              大小
======================================================================================================================================================
正在安装:
 nmap                             x86_64                             2:5.51-6.el6                              base                             2.8 M
事务概要
======================================================================================================================================================
Install       1 Package(s)
总下载量:2.8 M
Installed size: 9.7 M
下载软件包:
nmap-5.51-6.el6.x86_64.rpm                                                                                                     | 2.8 MB     00:00     
运行 rpm_check_debug 
执行事务测试
事务测试成功
执行事务
Warning: RPMDB altered outside of yum.
  正在安装   : 2:nmap-5.51-6.el6.x86_64                                                                                                           1/1 
  Verifying  : 2:nmap-5.51-6.el6.x86_64                                                                                                           1/1 
已安装:
  nmap.x86_64 2:5.51-6.el6                                                                                                                            
完毕!

(4)nmap常见的扫描方式

  •  TCP同步(SYN)端口扫描(-sS参数)。TCP SYN扫描创建的是半打开的连接,它与TCP connect()扫描的不同之处在于,TCP SYN扫描发送的是复位(RST)标记而不是结束ACK标记(即,SYN,SYN-ACK,或RST):如果远程主机正在监听且端口是打开的,远程主机用 SYN-ACK应答,Nmap发送一个RST;如果远程主机的端口是关闭的,它的应答将是RST,此时Nmap转入下一个端口。

  • Ping扫描(-sP参数)。Ping扫描通过发送ICMP (Internet Control Message Protocol Internet控制消息协议)回应请求数据包和TCP应答(Acknowledge,简写ACK)数据包,确定主机的状态,非常适合于检测指定网段内正在运行的主机数量。

  • TCP connect()端口扫描(-sT参数)。在TCP connect()扫描中,扫描器利用操作系统本身的系统调用打开一个完整的TCP连接——也就是说,扫描器打开了两个主机之间的完整握手过程(SYN,SYN-ACK,和ACK)。一次完整执行的握手过程表明远程主机端口是打开的。

  • UDP端口扫描(-sU参数)。

                                                                                                --------------百度百科

    具体例子如下:

  • -sS 使用SYN+ACK的方法,使用TCP SYN,

  • -sT 使用TCP的方法, 3次握手全做

  • -sU 使用UDP的方法

  • -sP ICMP ECHO Request 送信,有反应的端口进行调查

  • -sF FIN SCAN

  • -sX

  • -sN 全部FLAG OFF的无效的TCP包送信,根据错误代码判断端口情况

  • -P0 无视ICMP ECHO request的结果,SCAN

  • -p scan port range 指定SCAN的目端口的范围

  •    1-100, 或者使用25,100的方式

  • -O 侦测OS的种类

  • -oN 文件名 通常格式文件输出

  • -oX 文件名 通过DTD,使用XML格式输出结果

  • -oG 文件名,grep容易的格式输出

  • -sV 服务的程序名和版本SCAN

常用的实例:

进行ping扫描,打印出对扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):
nmap -sP 192.168.1.0/24
仅列出指定网络上的每台主机,不发送任何报文到目标主机:
nmap -sL 192.168.1.0/24
探测目标主机开放的端口,可以指定一个以逗号分隔的端口列表(如-PS22,23,25,80):
nmap -PS 192.168.1.234
使用UDP ping探测主机:
nmap -PU 192.168.1.0/24
使用频率最高的扫描选项:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快:
nmap -sS 192.168.1.0/24
当SYN扫描不能用时,TCP Connect()扫描就是默认的TCP扫描:
nmap -sT 192.168.1.0/24
UDP扫描用-sU选项,UDP扫描发送空的(没有数据)UDP报头到每个目标端口:
nmap -sU 192.168.1.0/24
确定目标机支持哪些IP协议 (TCP,ICMP,IGMP等):
nmap -sO 192.168.1.19
探测目标主机的操作系统:
nmap -O 192.168.1.19
nmap -A 192.168.1.19
另外,nmap官方文档中的例子:
nmap -v scanme.
这个选项扫描主机scanme中 所有的保留TCP端口。选项-v启用细节模式。
nmap -sS -O scanme./24
进行秘密SYN扫描,对象为主机Saznme所在的“C类”网段 的255台主机。同时尝试确定每台工作主机的操作系统类型。因为进行SYN扫描 和操作系统检测,这个扫描需要有根权限。
nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127
进行主机列举和TCP扫描,对象为B类188.116网段中255个8位子网。这 个测试用于确定系统是否运行了sshd、DNS、imapd或4564端口。如果这些端口 打开,将使用版本检测来确定哪种应用在运行。
nmap -v -iR 100000 -P0 -p 80
随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段 发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因 此使用-P0禁止对主机列表。
nmap -P0 -p80 -oX logs/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20
扫描4096个IP地址,查找Web服务器(不ping),将结果以Grep和XML格式保存。
host -l | cut -d -f 4 | nmap -v -iL -
进行DNS区域传输,以发现中的主机,然后将IP地址提供给 Nmap。上述命令用于GNU/Linux -- 其它系统进行区域传输时有不同的命令。
其他选项:
-p (只扫描指定的端口)
单个端口和用连字符表示的端口范 围(如 1-1023)都可以。当既扫描TCP端口又扫描UDP端口时,可以通过在端口号前加上T: 或者U:指定协议。 协议限定符一直有效直到指定另一个。 例如,参数 -p U:53,111,137,T:21-25,80,139,8080 将扫描UDP 端口53,111,和137,同时扫描列出的TCP端口。
-F (快速 (有限的端口) 扫描)


备注:最常用的实例如下:

1,查看当前主机开放的端口:nmap  www.baidu.com

[[email protected] ~]# nmap www.baidu.com
Starting Nmap 6.40 ( http://nmap.org ) at 2017-08-15 15:18 CST
Nmap scan report for www.baidu.com (115.239.210.27)
Host is up (0.0065s latency).
Other addresses for www.baidu.com (not scanned): 115.239.211.112
Not shown: 998 filtered ports
PORT    STATE SERVICE
80/tcp  open  http
443/tcp open  https
Nmap done: 1 IP address (1 host up) scanned in 4.60 seconds

2,查看主机端口中(1024-65535)开放的端口: nmap -p 1024-65535 192.168.180.2

[[email protected] ~]# nmap -p 1024-65535 192.168.180.2
Starting Nmap 6.40 ( http://nmap.org ) at 2017-08-15 15:26 CST
Nmap scan report for localhost (192.168.180.2)
Host is up (0.00014s latency).
Not shown: 64498 closed ports
PORT      STATE SERVICE
2443/tcp  open  unknown
2444/tcp  open  unknown
3306/tcp  open  mysql
4443/tcp  open  pharos
8009/tcp  open  ajp13
8010/tcp  open  xmpp
8015/tcp  open  unknown
8080/tcp  open  http-proxy
8081/tcp  open  blackice-icecap
8083/tcp  open  us-srv
8086/tcp  open  d-s-n
8090/tcp  open  unknown
8092/tcp  open  unknown
10050/tcp open  unknown
MAC Address: 18:A9:05:77:38:14 (Hewlett-Packard Company)
Nmap done: 1 IP address (1 host up) scanned in 0.94 seconds

3,探测目标主机开放的端口:nmap -PS 192.168.180.3

[[email protected] ~]# nmap -PS 192.168.180.3
Starting Nmap 6.40 ( http://nmap.org ) at 2017-08-15 15:32 CST
Nmap scan report for localhost (192.168.180.3)
Host is up (0.00030s latency).
Not shown: 994 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
873/tcp  open  rsync
8009/tcp open  ajp13
8010/tcp open  xmpp
8080/tcp open  http-proxy
8081/tcp open  blackice-icecap
MAC Address: 00:15:5D:6E:28:02 (Microsoft)
Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds

4,探测目标主机的操作系统类型:

nmap -O 192.168.180.30

nmap -A 192.168.180.30

[[email protected] ~]# nmap -O 192.168.180.30   
Starting Nmap 6.40 ( http://nmap.org ) at 2017-08-15 15:37 CST
Nmap scan report for 192.168.180.30
Host is up (0.00023s latency).
Not shown: 995 filtered ports
PORT      STATE SERVICE
80/tcp    open  http
135/tcp   open  msrpc
139/tcp   open  netbios-ssn
3389/tcp  open  ms-wbt-server
49154/tcp open  unknown
MAC Address: 00:15:5D:6E:28:01 (Microsoft)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Microsoft Windows Vista|2008|7
OS CPE: cpe:/o:microsoft:windows_vista::- cpe:/o:microsoft:windows_vista::sp1 cpe:/o:microsoft:windows_server_2008::sp1 cpe:/o:microsoft:windows_7
OS details: Microsoft Windows Vista SP0 or SP1, Windows Server 2008 SP1, or Windows 7, Microsoft Windows Vista SP2, Windows 7 SP1, or Windows Server 2008
Network Distance: 1 hop
OS detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 16.51 seconds
[[email protected] ~]# nmap -A 192.168.180.30
Starting Nmap 6.40 ( http://nmap.org ) at 2017-08-15 15:44 CST
Stats: 0:00:02 elapsed; 0 hosts completed (1 up), 1 undergoing SYN Stealth Scan
SYN Stealth Scan Timing: About 25.05% done; ETC: 15:44 (0:00:09 remaining)
Stats: 0:00:03 elapsed; 0 hosts completed (1 up), 1 undergoing SYN Stealth Scan
SYN Stealth Scan Timing: About 41.20% done; ETC: 15:44 (0:00:04 remaining)
Stats: 0:00:03 elapsed; 0 hosts completed (1 up), 1 undergoing SYN Stealth Scan
SYN Stealth Scan Timing: About 44.95% done; ETC: 15:44 (0:00:04 remaining)
Stats: 0:00:03 elapsed; 0 hosts completed (1 up), 1 undergoing SYN Stealth Scan
SYN Stealth Scan Timing: About 48.70% done; ETC: 15:44 (0:00:04 remaining)
Nmap scan report for 192.168.180.30
Host is up (0.00025s latency).
Not shown: 995 filtered ports
PORT      STATE SERVICE       VERSION
80/tcp    open  http          Microsoft IIS httpd 7.5
| http-methods: Potentially risky methods: TRACE
|_See http://nmap.org/nsedoc/scripts/http-methods.html
|_http-title: Site doesn‘t have a title.
135/tcp   open  msrpc         Microsoft Windows RPC
139/tcp   open  netbios-ssn
3389/tcp  open  ms-wbt-server Microsoft Terminal Service
49154/tcp open  msrpc         Microsoft Windows RPC
MAC Address: 00:15:5D:6E:28:01 (Microsoft)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose|phone
Running: Microsoft Windows 7|Phone|Vista|2008
OS CPE: cpe:/o:microsoft:windows_7::-:professional cpe:/o:microsoft:windows cpe:/o:microsoft:windows_vista::- cpe:/o:microsoft:windows_vista::sp1 cpe:/o:microsoft:windows_server_2008::sp1
OS details: Microsoft Windows 7 Professional, Microsoft Windows Phone 7.5, Microsoft Windows Vista SP0 or SP1, Windows Server 2008 SP1, or Windows 7, Microsoft Windows Vista SP2, Windows 7 SP1, or Windows Server 2008
Network Distance: 1 hop
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
|_nbstat: NetBIOS name: GJB-WIN08, NetBIOS user: <unknown>, NetBIOS MAC: 00:15:5d:6e:28:01 (Microsoft)
| smb-os-discovery: 
|   OS: Windows Server 2008 R2 Enterprise 7601 Service Pack 1 (Windows Server 2008 R2 Enterprise 6.1)
|   OS CPE: cpe:/o:microsoft:windows_server_2008::sp1
|   Computer name: GJB-WIN08
|   NetBIOS computer name: GJB-WIN08
|   Workgroup: WORKGROUP
|_  System time: 2017-08-15T15:46:28+08:00
| smb-security-mode: 
|   Account that was used for smb scripts: guest
|   User-level authentication
|   SMB Security: Challenge/response passwords supported
|_  Message signing disabled (dangerous, but default)
|_smbv2-enabled: Server supports SMBv2 protocol
TRACEROUTE
HOP RTT     ADDRESS
1   0.25 ms 192.168.180.30
OS and Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 95.34 seconds


本文出自 “清风明月” 博客,请务必保留此出处http://liqingbiao.blog.51cto.com/3044896/1956473

以上是关于nmap端口扫描工具使用的主要内容,如果未能解决你的问题,请参考以下文章

安全测试工具--NMAP端口扫描工具使用

使用nmap扫描端口

#yyds干货盘点#nmap:网络探测工具和安全/端口扫描器

如何通过nmap端口扫描漏洞入侵别人电脑

如何使用Nmap进行端口扫描什么是端口扫描?

Python-通过调用Nmap来进行端口扫描