Nmap使用


一、Nmap基本介绍

1.1 Nmap介绍

Nmap是一种安全扫描器,主要用于探测计算机网络上得主机和服务,支持平台有Windows,Linux,MacOs等。
官网:http://nmap.org
参数说明:http://www.nmap.com.cn/doc/manual.shtml

1.2 Nmap的核心功能

1、主机探测 主要用来探测主机的存活和版本 2、端口扫描 扫描主机开放的端口和开放的服务信息。 3、版本探测 主要是探测端口和服务的版本信息。 4、漏洞检测 可以扫描主机上存在漏洞信息。

 1.3 Nmap扫描端口的状态介绍

open:端口开启,数据有到达主机,有程序在端口上监控。   closed:端口关闭,数据有到达主机,没有程序在端口上监控。   filtered:数据没有到达主机,返回的结果为空,数据被防火墙或者是IDS过滤了。   UnFiltered:数据有到达主机,但是不能识别端口的当前是否有开启的状态。   Open|Filtered:端口没有返回值,主要发生在UDP、IP、FIN,NULL和Xmas扫描中。

 二、Nmap的参数介绍

2.1 指定主机参数

-iL filename 从文件中读取扫描的目标,支持IP和网段。   --exclude host1,honst2 从扫描任务中排除不需要扫描的主机。   --exculdefinle exclude_file 查住文件中的IP,和-iL的指定扫描文件的格式相同

2.2 主机存活探测参数

-sn ping扫描,做主机存活探测,不做端口扫描。

2.3 脚本扫描参数

-sC 根据端口识别服务,调用默认的脚本   --script="Lua scripts" 调用的脚本名

2.4 绕过防火墙参数

-f; --mtu valule 指定使用分片,指定数据报的MTU。   -D decoy1,decoy2 使用诱饵扫描,就是使用多个IP地址去探测。   -S IP-ADDRESS 源地址欺骗

三、Nmap使用实战

3.1 基本使用

nmap 192.168.1.1 最简单的扫描
nmap 192.168.1.1 192.168.1.100 快速扫描多个目标
nmap -p 22,100-200,3389 192.168.1.1 指定端口和扫描的范围

3.2 绕过防火墙端口扫描

碎片化扫描,发送8个字节的数据包,绕过我们的防火墙IDS,IPS等。

namp -f 192.168.1.1
mtu最大传输单元,需要执行8的倍数的数据包
nmap -mtu 16 192.168.1.1
伪造多个IP地址进行扫描,使防火墙误认为来自多个IP,从而绕过。
nmap -D RND:10 192.168.1.1  //随机产生源地址
nmap -D 192.168.0.1,192.168.0.2 192.168.1.1  //指定源地址

3.3 脆弱性扫描

kali里的nmap脚本路径: /user/share/nmap/scripts Nmap常用的脚本:
auth 负责处理鉴权的脚本
brute 提供暴力破解脚本
default 使用-sC或-A选项扫描时的默认脚本,提供基本的脚本扫描能力。
exploit 利用漏洞入侵系统
fuzzer 模糊测试脚本,探测潜在的漏洞
vuln 负责检查目标是否有常见的漏洞,如MS17-010

SSH口令破解

nmap -p22 --script ssh-brute 192.168.1.1

Msql数据库破解

namp -p3306 --script mysql-enum 192.168.1.1

自动暴力破解

nmap --script=brute 192.168.1.1

扫描指定漏洞

namp --script=smb-vuln-ms17-010 192.168.1.1

 漏洞扫描

namp --script=vuln 192.168.1.1