相关阅读
nmap简介
![图片[1]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072031421.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
Nmap(诸神之眼)是一款用于网络发现和安全审计的网络安全工具,它是自由软件。软件名字Nmap是Network Mapper 的简称。通常情况下,Nmap 用于︰列举网络主机清单管理服务升级调度监控主机服务运行状况Nmap可以检测目标主机是否在线、端口开放情况、侦测运行的服务类型及版本信息、侦测操作系统与设备类型等信息。。
nmap支持很多扫描技术,例如:UDP、TCP connect().TCP SYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、ACK扫描、圣诞树(Xmas Tree)、SYN扫描和null扫描。还可以探测操作系统类型。。
namp基本功能
1、主机发现:检测目标主机是否在线
2、端口扫描:检测端口状态和提供的服务
3、版本侦测:检测端口提供服务的包或软件的版本信息
4、操作系统侦测:检测主机使用的操作系统
nmap安装
下载地址:https://nmap.org
根据自己的操作系统来选择下载的对应版本!
命令行模式下启动nmap
![图片[2]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072047405-1024x533.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
zenmap.exe是图形化:
![图片[3]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072056112.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
kali系统自带nmap
![图片[4]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072103833-1024x728.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
namp基本信息
![图片[5]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072113973.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
PORT:端口
STATE:端口状态
SERVICE:端口服务
open:端口是开放的
closed:端口是关闭的
filtered:端口被防火墙IDS/IPS屏蔽,无法确定状态
unfiltered:端口未被防火墙IDS/IPS屏蔽,但是否开放需要进一步确认
open|filtered:端口是开放的或被过滤
closed|filteres:端口关闭或者被过滤
nmap基本参数
Nmap支持主机名,ip,网段的表示方式
例如: 192.168.0.1;10.0.0-25.1-254
-iL filename 从文件中读取待检测的目标,文件中的表示方法支持机名,ip,网段
-iR hostnum 随机选取,进行扫描.如果-iR指定为0,则是无休止的扫描
–exclude host1[, host2] 从扫描任务中需要排除的主机
–exculdefile exclude_file 排除文件中的IP,格式和-iL指定扫描文件的格式相同
主机发现
-sL 仅仅是显示,扫描的IP数目,不会进行任何扫描
-sn ping扫描,即主机发现
-Pn 不检测主机存活
-PS/PA/PU/PY[portlist] TCP SYN Ping/TCP ACK Ping/UDP Ping发现
-PE/PP/PM 使用ICMP echo, timestamp and netmask 请求包发现主机
-PO[prococol list] 使用IP协议包探测对方主机是否开启
-n/-R 不对IP进行域名反向解析/为所有的IP都进行域名的反响解析
扫描技巧
-sS/sT/sA/sW/sM TCP SYN/TCP connect()/ACK/TCP窗口扫描/TCP Maimon扫描
-sU UDP扫描
-sN/sF/sX TCP Null,FIN,and Xmas扫描
–scanflags 自定义TCP包中的flags
-sI zombie host[:probeport] Idlescan
-sY/sZ SCTP INIT/COOKIE-ECHO 扫描
-sO 使用IP protocol 扫描确定目标机支持的协议类型
-b “FTP relay host” 使用FTP bounce scan
指定端口和扫描顺序
-p 特定的端口 -p80,443 或者 -p1-65535
-p U:PORT 扫描udp的某个端口, -p U:53
-F 快速扫描模式,比默认的扫描端口还少
-r 不随机扫描端口,默认是随机扫描的
–top-ports “number” 扫描开放概率最高的number个端口,出现的概率需要参考nmap-services文件,ubuntu中该文件位于/usr/share/nmap.nmap默认扫前1000个
–port-ratio “ratio” 扫描指定频率以上的端口
服务版本识别
-sV 开放版本探测,可以直接使用-A同时打开操作系统探测和版本探测
–version-intensity “level” 设置版本扫描强度,强度水平说明了应该使用哪些探测报文。数值越高,服务越有可能被正确识别。默认是7
–version-light 打开轻量级模式,为–version-intensity 2的别名
–version-all 尝试所有探测,为–version-intensity 9的别名
–version-trace 显示出详细的版本侦测过程信息
脚本扫描
-sC 根据端口识别的服务,调用默认脚本
–script=”Lua scripts” 调用的脚本名
–script-args=n1=v1,[n2=v2] 调用的脚本传递的参数
–script-args-file=filename 使用文本传递参数
–script-trace 显示所有发送和接收到的数据
–script-updatedb 更新脚本的数据库
–script-help=”Lua script” 显示指定脚本的帮助
OS识别
-O 启用操作系统检测,-A来同时启用操作系统检测和版本检测
–osscan-limit 针对指定的目标进行操作系统检测(至少需确知该主机分别有一个open和closed的端口)
–osscan-guess 推测操作系统检测结果,当Nmap无法确定所检测的操作系统时,会尽可能地提供最相近的匹配,Nmap默认进行这种匹配
防火墙/IDS躲避和哄骗
-f; –mtu value 指定使用分片、指定数据包的MTU.
-D decoy1,decoy2,ME 使用诱饵隐蔽扫描
-S IP-ADDRESS 源地址欺骗
-e interface 使用指定的接口
-g/ –source-port PROTNUM 使用指定源端口
–proxies url1,[url2],… 使用HTTP或者SOCKS4的代理
–data-length NUM 填充随机数据让数据包长度达到NUM
–ip-options OPTIONS 使用指定的IP选项来发送数据包
–ttl VALUE 设置IP time-to-live域
–spoof-mac ADDR/PREFIX/VEBDOR MAC地址伪装
–badsum 使用错误的checksum来发送数据包
Nmap 输出
-oN 将标准输出直接写入指定的文件
-oX 输出xml文件
-oS 将所有的输出都改为大写
-oG 输出便于通过bash或者perl处理的格式,非xml
-oA BASENAME 可将扫描结果以标准格式、XML格式和Grep格式一次性输出
-v 提高输出信息的详细度
-d level 设置debug级别,最高是9
–reason 显示端口处于带确认状态的原因
–open 只输出端口状态为open的端口
–packet-trace 显示所有发送或者接收到的数据包
–iflist 显示路由信息和接口,便于调试
–log-errors 把日志等级为errors/warings的日志输出
–append-output 追加到指定的文件
–resume FILENAME 恢复已停止的扫描
–stylesheet PATH/URL 设置XSL样式表,转换XML输出
–webxml 从namp.org得到XML的样式
–no-sytlesheet 忽略XML声明的XSL样式表
时间性能优化
-T 时间优化(0-5)(paranoid|sneaky|polite|normal|aggressive|insane)
-F 快速扫描。
–max-retries 调整重传次数。
–min-hostgroup/–max-hostgroup size 设置组的大小
–min-parallelism/–max-parellelism time 指定时间内的探针数
–min-rtt-timrout/–max-rtt-timrout/initial-rtt-timrouttime 指定探针超时
–scan-delay/-max-scan-delay time 指定探针之间的时延
–max-retries tries 指定探针重传转发数
–host-timeout time 设置扫描主机的最大时间
–defeat-rst-ratelimit 设置rst的限制
其他nmap选项
-6 开启IPv6
-A OS识别,版本探测,脚本扫描和traceroute
–datedir DIRNAME 说明用户Nmap数据文件位置
–send-eth / –send-ip 使用原以太网帧发送/在原IP层发送
–privileged 假定用户具有全部权限
–unprovoleged 假定用户不具有全部权限,创建原始套接字需要root权限
-V 打印版本信息
-h 输出帮助
namp补充知识
查找一个网段内所有机器的操作系统类型。
namp -O 192.168.1.0/24
随机扫描,延时扫描,达到隐藏自己的效果
nmap –randomize-hosts –scan-delay 5 192.168.1.0/24
zenmap介绍
Zenmap 是经典端口漏洞扫描工具NMap的官方GUI(图形界面)版本,集通过tcp/ip来甄别操作系统类型、秘密扫描、动态延迟和重发、平行扫描、通过并行的PING侦测下属的主机、欺骗扫描、端口过滤探测、直接的RPC扫描、分布扫描、灵活的目标选择以及端口的描述等多种功能为一体,是目前为止使用最广的端口扫描工具之一。可以检测活在网络上的主机、检测主机上开放的端口、检测到相应的端口的软件和版本以及扫描端口的安全漏洞。
与命令行操作方式的 NMap相比,虽然Zenmap 的操作方式更为直观简单,但是高手们还是习惯用命令行的NMap,当然,如果你不是大神,那么Zenmap更适合你。
![图片[6]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072130382-1024x685.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
zenmap常用参数:
Intense scan | (nmap -T4 -A -v) | 一般来说,Intense scan可以满足一般扫描 |
---|---|---|
-T4 | 加快执行速度 | |
-A | 操作系统及版本探测 | |
-v | 显示详细的输出 | |
Intense scan plus UDP | (nmap -sS -sU -T4 -A -v) | 即UDP扫描 |
-sS | TCP SYN 扫描 | |
-sU | UDP 扫描 | |
Intense scan,all TCP ports | (nmap -p 1-65536 -T4 -A -v) | 扫描所有TCP端口,范围在1-65535,试图扫描所有端口的开放情况,速度比较慢。 |
-p | 指定端口扫描范围 | |
Intense scan,no ping | (nmap -T4 -A -v -Pn) | 非ping扫描 |
-Pn | 非ping扫描 | |
Ping scan | (nmap -sn) | Ping 扫描优点:速度快。缺点:容易被防火墙屏蔽,导致无扫描结果 |
-sn | ping扫描 | |
Quick scan | (nmap -T4 -F) | 快速的扫描 |
-F | 快速模式。 | |
Quick scan plus | (nmap -sV -T4 -O -F –version-light) | 快速扫描加强模式 |
-sV | 探测端口及版本服务信息。 | |
-O | 开启OS检测 | |
–version-light | 设定侦测等级为2。 | |
Quick traceroute | (nmap -sn –traceroute) | 路由跟踪 |
-sn Ping | 扫描,关闭端口扫描 | |
-traceroute | 显示本机到目标的路由跃点。 | |
Regular scan | 规则扫描 | |
Slow comprehensive scan | (nmap -sS -sU -T4 -A -v -PE -PP -PS80,443,-PA3389,PU40125 -PY -g 53 –script all) | 慢速全面扫描。 |
namp防火墙
端口的状态:
open,端口开放;
filtered,端口被防火墙或安全软件阻止了,也可能是网络堵塞;
closed,端口关闭。
namp绕过防火墙命令
(不一定所有的都能绕过)
-PS选项来实施TCP SYN ping可绕过防火墙(简单的可以绕过,但是大部分未必能绕过)
-PA这种类型的扫描将只会扫描ACK包,可绕过防火墙
-PU扫描只会对目标进行udp ping 扫描。这种类型的扫描会发送UDP包来获取一个响应,可绕过防火墙
-P选项进行一个ICMP时间戳ping扫描,可绕过防火墙
-PE 参数进行一个IEMP(Internet控制报文协议)在指定的系统上输出ping,可绕防火墙–Pn不采用ping方式进行扫描,可绕过防火墙。-
-sA用于发现防火墙规则,比如扫到的端口是过滤的,那么可以使用这个参数进行绕过。
nmap脚本渗透测试
在Nmap安装目录下的scripts目录里存放了许多以“.nse”后缀结尾的文本文件,这些就是Nmap自带的脚本引擎。使用Nmap Script时,需要添加参数“–script=脚本名称””。
kali namp脚本存放位置
cd /usr/share/nmap/scripts
![图片[7]-Nmap新手教程 包含安装、使用、命令汇总-FancyPig's blog](https://static.iculture.cc/wp-content/uploads/2022/10/20221021072146508.png?x-oss-process=image/auto-orient,1/format,webp/watermark,image_cHVibGljL2xvZ28ucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMTA,x_10,y_10)
脚本可以在官网查看更多
常用脚本
DNS信息收集:
nmap –script dns-brute ke.qq.com.
检索系统信息∶.
nmap –script membase-http-info.nseke.qq.com.
系统常见漏洞扫描:
nmap –script smb- vuln-* ke.qq.com.
web常见漏洞扫描:
http-sql-injection.nse 脚本扫描注入漏洞.
http-vuln-cve2017-8917.nse 脚本cms注入漏洞-
nmap –script http-vuln-* ke.qq.com.
mysql数据库渗透测试∶
mysql-brute.nse 脚本暴力破解mysql
mysql-info.nse 脚本mysql详细信息.
nmap-p 3306 –script mysql-info.nse 192.168.1.106.
- 最新
- 最热
只看作者