NMAP速查手册.docx

上传人:b****7 文档编号:10864812 上传时间:2023-02-23 格式:DOCX 页数:22 大小:1.30MB
下载 相关 举报
NMAP速查手册.docx_第1页
第1页 / 共22页
NMAP速查手册.docx_第2页
第2页 / 共22页
NMAP速查手册.docx_第3页
第3页 / 共22页
NMAP速查手册.docx_第4页
第4页 / 共22页
NMAP速查手册.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

NMAP速查手册.docx

《NMAP速查手册.docx》由会员分享,可在线阅读,更多相关《NMAP速查手册.docx(22页珍藏版)》请在冰豆网上搜索。

NMAP速查手册.docx

NMAP速查手册

1常用命令

1.1简单示例

使用ping检测10.0.0.0/24这个网段

1

nmap-sP10.0.0.0/24

使用SYN的方法对全端口进行扫描,在aggressive(4)的时间模板下,同时对开放的端口进行端口识别

1

nmap-p1-65535-sV-sS-T4target

PS:

-T代表的是扫描的时候,一些控制选项(TCP的延迟时间,探测报文之间的间隔等)的集合,具体的mannmap一下就知道了

使用SYN扫描,在aggressive(4)的时间模板下,探测操作系统的类型和版本,还有显示traceroute的结果,结果输出较为详细

1

nmap-v-sS-A-T4target

使用SYN扫描,在insane(5)的时间模板下,探测操作系统的类型和版本,还有显示traceroute的结果,结果输出较为详细

1

nmap-v-sS-A-T5target

使用SYN扫描,在insane(5)的时间模板下,探测操作系统的类型,还有显示traceroute的结果,操作系统的类型,结果输出较为详细

1

nmap-v-sV-O-sS-T5target

使用SYN的方法对全端口进行扫描,同时对开放的端口进行端口识别,在aggressive(4)的时间模板下,探测操作系统的类型还有显示traceroute的结果,结果输出较为详细

1

nmap-v-p1-65535-sV-O-sS-T4target

用SYN的方法对全端口进行扫描,同时对开放的端口进行端口识别,在insane(5)的时间模板下,探测操作系统的类型,还有显示traceroute的结果,结果输出较为详细

1

nmap-v-p1-65535-sV-O-sS-T5target

从文件中读取需要扫描的IP列表

1

nmap-iLip-address.txt

1.2Nmap输出格式

扫描的结果输出到屏幕,同时会存储一份到grep-output.txt

1

nmap-sV-p139,445-oGgrep-output.txt10.0.1.0/24

扫描结果输出为html

1

nmap-sS-sV-T510.0.1.99--webxml-oX-|xsltproc--output

1.3Nmap扫描Netbios

在子网中发现开放netbios的IP

1

nmap-sV-v-p139,44510.0.0.1/24

扫描指定netbios的名称

1

nmap-sU--scriptnbstat.nse-p137target

扫描指定的目标,同时检测相关漏洞

1

nmap--script-args=unsafe=1--scriptsmb-check-vulns.nse-p445target

将nmap的80端口的扫描结果,通过管道交给nikto进行扫描

1

NmapNiktoScannmap-p8010.0.1.0/24-oG-|nikto.pl-h-

将nmap的80,443端口的扫描结果,通过管道交给nikto进行扫描

1

nmap-p80,44310.0.1.0/24-oG-|nikto.pl-h-

1.4Nmap参数详解

Nmap支持主机名,ip,网段的表示方式

例如:

blah.highon.coffee,namp.org/24,192.168.0.1;10.0.0-25.1-254

1

2

3

4

-iL   从文件中读取待检测的目标,文件中的表示方法支持机名,ip,网段

-iRhostnum        随机选取,进行扫描.如果-iR指定为0,则是无休止的扫描

--excludehost1[,host2]     从扫描任务中需要排除的主机          

--exculde排除文件中的IP,格式和-iL指定扫描文件的格式相同

主机发现

1

2

3

4

5

6

7

-sL            仅仅是显示,扫描的IP数目,不会进行任何扫描

-sn             ping扫描,即主机发现

-Pn               检测主机存活

-PS/PA/PU/PY[portlist] TCPSYNPing/TCPACKPing/UDPPing发现

-PE/PP/PM              使用ICMP echo, timestampand netmask 请求包发现主机

-PO[prococollist]     使用IP协议包探测对方主机是否开启  

-n/-R                  不对IP进行域名反向解析/为所有的IP都进行域名的反响解析

扫描技巧

1

2

3

4

5

6

7

8

-sS/sT/sA/sW/sM              TCPSYN/TCPconnect()/ACK/TCP窗口扫描/TCPMaimon扫描

-sU                         UDP扫描

-sN/sF/sX                      TCPNull,FIN,andXmas扫描

--scanflags           自定义TCP包中的flags

-sIzombiehost[:

probeport]    Idlescan

-sY/sZ                         SCTPINIT/COOKIE-ECHO扫描

-sO         使用IP protocol 扫描确定目标机支持的协议类型

-b“host”       使用scan

指定端口和扫描顺序

1

2

3

4

5

6

-p         特定的端口-p80,443或者-p1-65535

-pU:

PORT        扫描udp的某个端口,-pU:

53

-F             快速扫描模式,比默认的扫描端口还少

-r             不随机扫描端口,默认是随机扫描的

--top-ports"number"   扫描开放概率最高的number个端口,出现的概率需要参考nmap-services文件,ubuntu中该文件位于/usr/share/nmap.nmap默认扫前1000个

--port-ratio"ratio"   扫描指定频率以上的端口

服务版本识别

1

2

3

4

5

-sV                   开放版本探测,可以直接使用-A同时打开操作系统探测和版本探测

--version-intensity"level"    设置版本扫描强度,强度水平说明了应该使用哪些探测报文。

数值越高,服务越有可能被正确识别。

默认是7

--version-light                打开轻量级模式,为--version-intensity2的别名

--version-all                  尝试所有探测,为--version-intensity9的别名

--version-trace                显示出详细的版本侦测过程信息

脚本扫描

1

2

3

4

5

6

7

-sC                            根据端口识别的服务,调用默认脚本

--script=”Luascripts”         调用的脚本名

--script-args=n1=v1,[n2=v2]    调用的脚本传递的参数

--script-args-    使用文本传递参数

--script-trace                 显示所有发送和接收到的数据

--script-updatedb              更新脚本的数据库

--script-help=”Luascript”     显示指定脚本的帮助

OS识别

1

2

3

-O             启用操作系统检测,-A来同时启用操作系统检测和版本检测

--osscan-limit 针对指定的目标进行操作系统检测(至少需确知该主机分别有一个open和closed的端口)

--osscan-guess 推测操作系统检测结果,当Nmap无法确定所检测的操作系统时,会尽可能地提供最相近的匹配,Nmap默认进行这种匹配

防火墙/IDS躲避和哄骗

1

2

3

4

5

6

7

8

9

10

11

12

-f;--mtuvalue                指定使用分片、指定数据包的MTU.

-Ddecoy1,decoy2,ME            使用诱饵隐蔽扫描

-SIP-ADDRESS                  源地址欺骗

-einterface                   使用指定的接口

-g/--source-portPROTNUM      使用指定源端口  

--proxiesurl1,[url2],...      使用HTTP或者SOCKS4的代理 

 

--data-lengthNUM              填充随机数据让数据包长度达到NUM

--ip-optionsOPTIONS           使用指定的IP选项来发送数据包

--ttlVALUE                    设置IPtime-to-live域

--spoof-macADDR/PREFIX/VEBDOR MAC地址伪装

--badsum                       使用错误的checksum来发送数据包

Nmap输出

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

-oN                    将标准输出直接写入指定的文件

-oX                    输出xml文件

-oS                    将所有的输出都改为大写

-oG                    输出便于通过bash或者perl处理的格式,非xml

-oABASENAME           可将扫描结果以标准格式、XML格式和Grep格式一次性输出

-v                     提高输出信息的详细度

-dlevel               设置debug级别,最高是9

--reason               显示端口处于带确认状态的原因

--open                 只输出端口状态为open的端口

--packet-trace         显示所有发送或者接收到的数据包

--iflist               显示路由信息和接口,便于调试

--log-errors           把日志等级为errors/warings的日志输出

--append-output        追加到指定的文件

--resume      恢复已停止的扫描

--stylesheetPATH/URL  设置XSL样式表,转换XML输出

--webxml               从namp.org得到XML的样式

--no-sytlesheet        忽略XML声明的XSL样式表

其他nmap选项

1

2

3

4

5

6

7

8

-6                     开启IPv6

-A                     OS识别,版本探测,脚本扫描和traceroute

--datedirDIRNAME      说明用户Nmap数据文件位置

--send-eth/--send-ip 使用原以太网帧发送/在原IP层发送

--privileged           假定用户具有全部权限

--unprovoleged         假定用户不具有全部权限,创建原始套接字需要root权限

-V                     打印版本信息

-h                     输出帮助

2脚本引擎

2.1nmap按脚本分类扫描

nmap脚本主要分为以下几类,在扫描时可根据需要设置--script=类别这种方式进行比较笼统的扫描:

auth:

负责处理鉴权证书(绕开鉴权)的脚本

broadcast:

在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务

brute:

提供暴力破解方式,针对常见的应用如http/snmp等

default:

使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力

discovery:

对网络进行更多的信息,如SMB枚举、SNMP查询等

dos:

用于进行拒绝服务攻击

exploit:

利用已知的漏洞入侵系统

external:

利用第三方的数据库或资源,例如进行whois解析

fuzzer:

模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞intrusive:

入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽

malware:

探测目标机是否感染了病毒、开启了后门等信息

safe:

此类与intrusive相反,属于安全性脚本

version:

负责增强服务与版本扫描(VersionDetection)功能的脚本

vuln:

负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067

部分使用截图:

(1) nmap--script=auth192.168.137.*

负责处理鉴权证书(绕开鉴权)的脚本,也可以作为检测部分应用弱口令

(2)nmap--script=brute192.168.137.*

提供暴力破解的方式 可对数据库,smb,snmp等进行简单密码的暴力猜解

(3)nmap--script=default192.168.137.* 或者 nmap-sC192.168.137.*

默认的脚本扫描,主要是搜集各种应用服务的信息,收集到后,可再针对具体服务进行攻击

(4)nmap--script=vuln192.168.137.*   

检查是否存在常见漏洞

(5)nmap-n-p445--script=broadcast192.168.137.4

在局域网内探查更多服务开启状况

(6)nmap--scriptexternal202.103.243.110 

利用第三方的数据库或资源,例如进行whois解析

2.2nmap按应用服务扫描

(1)vnc扫描:

检查vncbypass

1

nmap --script=realvnc-auth-bypass192.168.137.4 

检查vnc认证方式

1

nmap --script=vnc-auth 192.168.137.4 

获取vnc信息

1

nmap --script=vnc-info 192.168.137.4 

(2)smb扫描:

smb破解

1

nmap --script=smb-brute.nse192.168.137.4  

smb字典破解

1

nmap--script=smb-brute.nse--script-args=userdb=/var/passwd,passdb=/var/passwd192.168.137.4 

smb已知几个严重漏

1

nmap --script=smb-check-vulns.nse--script-args=unsafe=1192.168.137.4  

查看共享目录 

1

nmap-p445 --scriptsmb-ls--script-args‘share=e$,path=\,smbuser=test,smbpass=test’192.168.137.4  

查询主机一些敏感信息(注:

需要下载nmap_service)

1

nmap-p445-n–script=smb-psexec--script-args=smbuser=test,smbpass=test192.168.137.4  

查看会话

1

nmap-n-p445--script=smb-enum-sessions.nse--script-args=smbuser=test,smbpass=test192.168.137.4  

系统信息

1

nmap-n-p445--script=smb-os-discovery.nse--script-args=smbuser=test,smbpass=test192.168.137.4 

(3)Mssql扫描:

猜解mssql用户名和密码

1

nmap-p1433--script=ms-sql-brute--script-args=userdb=/var/passwd,passdb=/var/passwd192.168.137.4  

xp_cmdshell执行命令 

1

nmap-p1433--scriptms-sql-xp-cmdshell--script-argsmssql.username=sa,mssql.password=sa,ms-sql-xp-cmdshell.cmd="netuser"192.168.137.4   

dumphash值

1

nmap-p1433--scriptms-sql-dump-hashes.nse--script-argsmssql.username=sa,mssql.password=sa 192.168.137.4    

(4)Mysql扫描:

扫描root空口令

1

nmap-p3306--script=mysql-empty-password.nse192.168.137.4  

列出所有mysql用户

1

nmap-p3306--script=mysql-users.nse--script-args=mysqluser=root192.168.137.4  

支持同一应用的所有脚本扫描

1

nmap--script=mysql-*192.168.137.4 

(5)Oracle扫描:

oraclesid扫描

1

nmap--script=oracle-sid-brute-p1521-1560192.168.137.5 

oracle弱口令破解

1

nmap--scriptoracle-brute-p1521--script-argsoracle-brute.sid=ORCL,userdb=/var/passwd,passdb=/var/passwd192.168.137.5   

(6)其他一些比较好用的脚本

nmap--script=broadcast-netbios-master-browser192.168.137.4 发现网关

nmap-p873--scriptrsync-brute--script-args'rsync-brute.module=www'192.168.137.4 破解rsync

nmap--scriptinformix-brute-p9088192.168.137.4  informix数据库破解

nmap-p5432--scriptpgsql-brute192.168.137.4   pgsql破解

nmap-sU--scriptsnmp-brute192.168.137.4      snmp破解

nmap-sV--script=telnet-brute192.168.137.4     telnet破解

nmap--script=http-vuln-cve2010-0738--script-args'http-vuln-cve2010-0738.paths={/path1/,/path2/}' jbossautopwn

nmap--script=http-methods.nse192.168.137.4检查http方法

nmap--scripthttp-slowloris--max-parallelism400192.168.137.4 dos攻击,对于处理能力较小的站点还挺好用的'half-HTTP'connections 

nmap--script=samba-vuln-cve-2012-1182 -p139192.168.137.4

(7)不靠谱的脚本:

vnc-brute  次数多了会禁止连接

pcanywhere-brute 同上

2.3学会脚本分析

nmap中脚本并不难看懂,所以在使用时如果不知道原理可以直接看利用脚本即可,也可以修改其中的某些参数方便自己使用。

举例:

关于oracle的弱口令破解:

调用过程:

oracle-brute.nse>>oracle-default-accounts.lst

首先是调用破解脚本:

根据脚本中字典的位置去查看默认字典,当然也可以将破解的字符自行添加其中,或者是修改脚本或参数改变破解字典:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职业技术培训

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1