Nmap是一个开源的网络连接端口扫描软件(内置于kali中)
打开Nmap:
> nmap
打开桌面化Nmap——zenmap:
> zenmap
Nmap支持多种扫描方式,用法简单,参数丰富:
案例一:扫描指定的IP所开方的的端口
> nmap -sS -p 1-65535 -v 192.168.2.129
上述命令:表示使用半开扫描,指定端口1-65535,显示扫描过程
[email protected]:~# nmap -sS -p 1-65535 -v 192.168.2.129 Starting Nmap 7.70 ( https://nmap.org ) at 2019-05-22 12:34 CST Initiating ARP Ping Scan at 12:34 Scanning 192.168.2.129 [1 port] Completed ARP Ping Scan at 12:34, 0.03s elapsed (1 total hosts) Initiating Parallel DNS resolution of 1 host. at 12:34 Completed Parallel DNS resolution of 1 host. at 12:34, 0.00s elapsed Initiating SYN Stealth Scan at 12:34 Scanning 0XMirror.lan (192.168.2.129) [65535 ports] Discovered open port 3389/tcp on 192.168.2.129 Discovered open port 445/tcp on 192.168.2.129 Discovered open port 443/tcp on 192.168.2.129 Discovered open port 135/tcp on 192.168.2.129 Discovered open port 139/tcp on 192.168.2.129 Discovered open port 49668/tcp on 192.168.2.129 Discovered open port 49676/tcp on 192.168.2.129 Discovered open port 49690/tcp on 192.168.2.129 Discovered open port 49665/tcp on 192.168.2.129 Discovered open port 49683/tcp on 192.168.2.129 Discovered open port 903/tcp on 192.168.2.129 Discovered open port 913/tcp on 192.168.2.129 Discovered open port 49666/tcp on 192.168.2.129 Discovered open port 5040/tcp on 192.168.2.129 Discovered open port 5646/tcp on 192.168.2.129 Discovered open port 28653/tcp on 192.168.2.129 Discovered open port 49664/tcp on 192.168.2.129 Discovered open port 49667/tcp on 192.168.2.129 Discovered open port 49677/tcp on 192.168.2.129 Completed SYN Stealth Scan at 12:34, 25.95s elapsed (65535 total ports) Nmap scan report for 0XMirror.lan (192.168.2.129) Host is up (0.00020s latency). Not shown: 65516 closed ports PORT STATE SERVICE 135/tcp open msrpc 139/tcp open netbios-ssn 443/tcp open https 445/tcp open microsoft-ds 903/tcp open iss-console-mgr 913/tcp open apex-edge 3389/tcp open ms-wbt-server 5040/tcp open unknown 5646/tcp open vfmobile 28653/tcp open unknown 49664/tcp open unknown 49665/tcp open unknown 49666/tcp open unknown 49667/tcp open unknown 49668/tcp open unknown 49676/tcp open unknown 49677/tcp open unknown 49683/tcp open unknown 49690/tcp open unknown MAC Address: 4C:ED:FB:47:0A:D2 (Unknown) Read data files from: /usr/bin/../share/nmap Nmap done: 1 IP address (1 host up) scanned in 26.15 seconds Raw packets sent: 68562 (3.017MB) | Rcvd: 65536 (2.622MB)
扫描结果
Nmap常用的扫描参数以及说明:
参数 |
说明 |
-sT |
TCP扫描,这种方式会在目标主机的日志中记录大批连接请求和错误信息 |
-sS |
半开扫描,很少有系统能够把它记入系统日志。但需要root权限 |
-sF -sN |
秘密FIN数据包扫描、XmasTree、Null扫描模式 |
-sP |
Ping扫描,Nmap在扫描端口时,默认都会使用ping扫描,只有主机存活,Nmap才会继续扫描 |
-sU |
UDP扫描, |
-sA |
高级扫描方法,通常用来穿过防火墙的规则集 |
-sV |
探测端口服务版本 |
-P0 |
扫描之前不用ping命令,防火墙禁止ping的时候,可以使用此选项进行扫描 |
-v |
显示扫描结果 |
-h |
帮助文档 |
-p |
指定扫描的端口范围 |
-O |
启动远程操作系统检测 |
-A |
全面系统检测、启动脚本检测、扫描等 |
-oN/-oX/-oG |
将报告写入文件,分别是正常、XML \grepable三种模式 |
-T4 |
针对TCP端口禁止动态扫描延迟超过10ms |
-iL |
读取主机列表 |
案例二:扫描www.xxser.com C段存活主机
> nmap -sP www.xxser.com/24
案例三:指定端口扫描(nmap默认扫描的只有高危端口,若想全盘扫端口,需要 -p 1-65535 或者 -p- 设置端口范围)
> nmap -p 80,23,233,34 www.xxser.com
案例四:探测主机操作系统
> nmap -O www.xxser.com
案例五:全面的系统探测
nmap -v -p- A 192.168.2.129
案例六:穿透防火墙进行全面扫描(若对方系统是禁止使用ping命令的,则需要穿过防火墙规则)
nmap -Pn -A www.2cto.com
Nmap的脚本引擎:
Nmap Script是Nmap最好的功能之一,利用Nmap Script可以快速探测服务器。在Nmap的安装目录下存在Script文件夹,“.nse”后缀结尾的文本文件即是Nmap自带的脚本引擎;当然也可以自己编写脚本,Nmap Script实现许多不同的功能,包含漏洞扫描、漏洞利用、目录扫描等实用功能。
使用Nmap脚本引擎是,只需要添加命令 “--script=脚本名称.nse";
案例一:扫描Web敏感目录
nmap -p 80 --script=http-enum.nse www.xxser.com
案例二:扫描Sqllnjection
扫描SQL注射漏洞是简单的,主要用到了sql-injection.nse脚本文件(脚本nse文件可以从nmap官网下载)
> nmap --script=sql-injection.nse www.xxser.com
案例三:使用所有脚本进行扫描(非常耗时)
> nmap --script all 127.0.0.1
案例四:使用通配符扫描
> nmap --script "http-*" 127.0.0.1
(表示使用所有以 http 开头的脚本扫描)
总结:
Nmap可以用来检测主机是否存在漏洞和密码暴力破解等;用好Nmap脚本引擎是一大助力,可以使用参数自由的使用命令对目标主机进行探测,使用起来非常灵活。
-------------------------------------------
DirBuster:
在渗透测试过程中,探测Web目录结构和隐藏铭感文件是必不可少的的一部分;可以通过目录扫描和文件敏感,发现后台管理后台、文件上传界面、有可能还会扫出网站的源代码;DirBuster则是一个功能优秀的探测工具;
DirBuster 采用Java编写,所以安装DirBuster时需要Java的运行环境JRE
1、在Target URL 输入框中输入 目标主机URL(需要协议名)
2、在Work Method中可以选择工作方式:GET请求方式或者自动选择方式
3、在Number Of Thread中选择线程
4、在Select Scanning typeh中选择扫描类型(可以使用字典进行扫描【List based brute force】)
5、Browse按钮选择字典(可以选择自带或者自己配置的字典)
6、在Select Starting Options中选择选项:Standard start point 和 Url Fuzz ;偏向于选择后者,但需要输入 “{dir}”:代表字典中的每一行。
点击 Start 开始对目标URL开始扫描
##### 类似的扫描工具多不胜数:御剑后台扫描就是一个典例 #################
针对目标的扫描,需要递归进行测试,需要对已经扫出的目录进行递归扫描;因为很有可能该目录就是另外一个Web应用程序。
——————————————————
指纹识别:
指纹由于具有终身不变性、唯一性;所以是所有特征识别的代名词。
在Nmap针对操作系统进行指纹识别
> nmap -O 192.168.2.129
通过Nmap -O命令可识别服务器操作系统的指纹,但是很多时候也是识别不了的;
原文地址:https://www.cnblogs.com/wangyuyang1016/p/10905326.html