脚本类别
safe(安全)
脚本并非旨在使服务崩溃、使用大量网络带宽或其他资源或利用安全漏洞,因此被归类为安全脚本。这些脚本不太可能冒犯远程管理员,但(与所有其他 Nmap 功能一样)我们无法保证它们永远不会引起不良反应。其中大多数脚本执行常规网络发现。例如 ssh-hostkey(检索 SSH 主机密钥)和 html-title(从网页中获取标题)。版本类别中的脚本不按安全性分类,但任何其他不属于安全类别的脚本都应归类为侵入性脚本。
acarsd-info
已演示过。这里不再演示。
address-info
已演示过。这里不再演示。
afp-ls
已演示过。这里不再演示。
afp-serverinfo
已演示过。这里不再演示。
afp-showmount
已演示过。这里不再演示。
ajp-auth
已演示过。这里不再演示。
ajp-headers
已演示过。这里不再演示。
ajp-methods
已演示过。这里不再演示。
ajp-request
已演示过。这里不再演示。
allseeingeye-info
已演示过。这里不再演示。
amqp-info
已演示过。这里不再演示。
asn-query
已演示过。这里不再演示。
auth-owners
已演示过。这里不再演示。
auth-spoof
已演示过。这里不再演示。
backorifice-info
已演示过。这里不再演示。
banner
已演示过。这里不再演示。
bitcoin-getaddr
已演示过。这里不再演示。
bitcoin-info
已演示过。这里不再演示。
bitcoinrpc-info
已演示过。这里不再演示。
bittorrent-discovery
已演示过。这里不再演示。
bjnp-discover
已演示过。这里不再演示。
broadcast-ataoe-discover
已演示过。这里不再演示。
broadcast-bjnp-discover
已演示过。这里不再演示。
broadcast-db2-discover
已演示过。这里不再演示。
broadcast-dhcp-discover
已演示过。这里不再演示。
broadcast-dhcp6-discover
已演示过。这里不再演示。
broadcast-dns-service-discovery
已演示过。这里不再演示。
broadcast-dropbox-listener
已演示过。这里不再演示。
broadcast-eigrp-discovery
已演示过。这里不再演示。
broadcast-hid-discoveryd
已演示过。这里不再演示。
broadcast-igmp-discovery
已演示过。这里不再演示。
broadcast-jenkins-discover
已演示过。这里不再演示。
broadcast-listener
已演示过。这里不再演示。
broadcast-ms-sql-discover
已演示过。这里不再演示。
broadcast-netbios-master-browser
已演示过。这里不再演示。
broadcast-networker-discover
已演示过。这里不再演示。
broadcast-novell-locate
已演示过。这里不再演示。
broadcast-ospf2-discover
已演示过。这里不再演示。
broadcast-pc-anywhere
已演示过。这里不再演示。
broadcast-pc-duo
已演示过。这里不再演示。
broadcast-pim-discovery
已演示过。这里不再演示。
broadcast-ping
已演示过。这里不再演示。
broadcast-pppoe-discover
已演示过。这里不再演示。
broadcast-rip-discover
已演示过。这里不再演示。
broadcast-ripng-discover
已演示过。这里不再演示。
broadcast-sonicwall-discover
已演示过。这里不再演示。
broadcast-sybase-asa-discover
已演示过。这里不再演示。
broadcast-tellstick-discover
已演示过。这里不再演示。
broadcast-upnp-info
已演示过。这里不再演示。
broadcast-versant-locate
已演示过。这里不再演示。
broadcast-wake-on-lan
已演示过。这里不再演示。
broadcast-wpad-discover
已演示过。这里不再演示。
broadcast-wsdd-discover
已演示过。这里不再演示。
broadcast-xdmcp-discover
已演示过。这里不再演示。
cassandra-info
已演示过。这里不再演示。
cics-info
已演示过。这里不再演示。
citrix-enum-apps
已演示过。这里不再演示。
citrix-enum-apps-xml
已演示过。这里不再演示。
citrix-enum-servers
已演示过。这里不再演示。
citrix-enum-servers-xml
已演示过。这里不再演示。
clock-skew
已演示过。这里不再演示。
coap-resources
已演示过。这里不再演示。
couchdb-databases
已演示过。这里不再演示。
couchdb-stats
已演示过。这里不再演示。
creds-summary
已演示过。这里不再演示。
cups-info
已演示过。这里不再演示。
cups-queue-info
已演示过。这里不再演示。
daap-get-library
已演示过。这里不再演示。
daytime
已演示过。这里不再演示。
db2-das-info
已演示过。这里不再演示。
dhcp-discover
已演示过。这里不再演示。
dicom-ping
已演示过。这里不再演示。
dict-info
已演示过。这里不再演示。
dns-blacklist
已演示过。这里不再演示。
dns-check-zone
已演示过。这里不再演示。
dns-client-subnet-scan
已演示过。这里不再演示。
dns-nsid
已演示过。这里不再演示。
dns-recursion
已演示过。这里不再演示。
dns-service-discovery
已演示过。这里不再演示。
dns-srv-enum
已演示过。这里不再演示。
dns-zeustracker
已演示过。这里不再演示。
drda-info
已演示过。这里不再演示。
570. duplicates
尝试通过分析和比较其他脚本收集的信息来发现多宿主系统。当前分析的信息包括 SSL 证书、SSH 主机密钥、MAC 地址和 Netbios 服务器名称。
为了使脚本能够分析数据,它依赖于以下脚本:ssl-cert、ssh-hostkey、nbtstat。
必须运行这些脚本中的一个或多个,才能允许重复脚本分析数据。
sudo nmap -Pn -p445,443 --script "duplicates,nbstat,ssl-cert" 192.168.174.132
eap-info
已演示过。这里不再演示。
epmd-info
已演示过。这里不再演示。
eppc-enum-processes
已演示过。这里不再演示。
fcrdns
已演示过。这里不再演示。
finger
已演示过。这里不再演示。
firewalk
已演示过。这里不再演示。
flume-master-info
已演示过。这里不再演示。
freelancer-info
已演示过。这里不再演示。
ftp-anon
已演示过。这里不再演示。
ftp-bounce
已演示过。这里不再演示。
ftp-syst
已演示过。这里不再演示。
ganglia-info
已演示过。这里不再演示。
giop-info
已演示过。这里不再演示。
gkrellm-info
已演示过。这里不再演示。
gopher-ls
已演示过。这里不再演示。
gpsd-info
已演示过。这里不再演示。
hadoop-datanode-info
已演示过。这里不再演示。
hadoop-jobtracker-info
已演示过。这里不再演示。
hadoop-namenode-info
已演示过。这里不再演示。
hadoop-secondary-namenode-info
已演示过。这里不再演示。
hadoop-tasktracker-info
已演示过。这里不再演示。
hbase-master-info
已演示过。这里不再演示。
hbase-region-info
已演示过。这里不再演示。
hddtemp-info
已演示过。这里不再演示。
hnap-info
已演示过。这里不再演示。
hostmap-robtex
已演示过。这里不再演示。
http-affiliate-id
已演示过。这里不再演示。
http-apache-negotiation
已演示过。这里不再演示。
http-apache-server-status
已演示过。这里不再演示。
http-auth
已演示过。这里不再演示。
http-auth-finder
已演示过。这里不再演示。
http-backup-finder
已演示过。这里不再演示。
http-bigip-cookie
已演示过。这里不再演示。
http-cakephp-version
已演示过。这里不再演示。
http-cisco-anyconnect
已演示过。这里不再演示。
http-comments-displayer
已演示过。这里不再演示。
http-cookie-flags
已演示过。这里不再演示。
http-cors
已演示过。这里不再演示。
http-cross-domain-policy
已演示过。这里不再演示。
http-date
已演示过。这里不再演示。
http-favicon
已演示过。这里不再演示。
571. http-fetch
该脚本用于从服务器获取文件。
该脚本支持三种不同的用例:
未提供路径参数,脚本将抓取主机并下载使用“目标”提供的文件夹中的文件。
提供路径参数(单个项目或列表)且路径以“/”开头,脚本将尝试获取相对于通过参数“url”提供的 url 的路径。
提供路径参数(单个项目或列表)且路径不以“/”开头。然后,脚本将抓取主机并尝试查找包含路径的文件(现在被视为模式)。
http-fetch.withinhost
默认行为是从同一主机获取文件。设置为 False 则执行其他操作。
http-fetch.destination
- 保存文件的完整目录路径,最好带有尾部斜杠。
http-fetch.maxpagecount
要获取的最大页面数量。
http-fetch.maxdepth
蜘蛛程序的初始 URL 下的最大目录数量。负值将禁用限制。(默认值:3)
http-fetch.files
- 要获取的文件的名称。
http-fetch.paths
要获取的路径列表。如果是相对路径,则将蜘蛛程序抓取站点以查找匹配的文件名。否则,将相对于 URL script-arg 获取它们。
http-fetch.url
开始获取的基本 URL。默认值:"/"
http-fetch.withindomain
如果设置为 true,则抓取将限制在用户提供的域内。
http-fetch.noblacklist
默认情况下,jpg、rar、png 等文件会被阻止。要获取此类文件,请将 noblacklist 设置为 true。
slaxml.debug
请参阅 slaxml 库的文档。
httpspider.doscraping、httpspider.maxdepth、httpspider.maxpagecount、httpspider.noblacklist、httpspider.url、httpspider.useheadfornonwebfiles、httpspider.withindomain、httpspider.withinhost
请参阅 httpspider 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
nmap --script "http-fetch" --script-args "destination=/tmp/mirror" -p80 192.168.174.132
nmap --script "http-fetch" --script-args 'paths={/robots.txt,/favicon.ico}' -p80 192.168.174.132
nmap --script "http-fetch" --script-args 'paths=.html' -p80 192.168.174.132
nmap --script "http-fetch" --script-args 'url=/images,paths={.jpg,.png,.gif}' -p80 192.168.174.132
572. http-frontpage-login
检查目标计算机是否容易受到匿名 Frontpage 登录的攻击。
较旧的 Frontpage 扩展默认配置允许远程用户匿名登录,这可能会导致服务器受到攻击。
http-frontpage-login.path
Frontpage 目录的路径前缀。默认为根目录(“/”)。
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap scanme.nmap.org -p 80 --script=http-frontpage-login
http-generator
已演示过。这里不再演示。
http-git
已演示过。这里不再演示。
http-gitweb-projects-enum
已演示过。这里不再演示。
http-google-malware
已演示过。这里不再演示。
http-grep
已演示过。这里不再演示。
http-headers
已演示过。这里不再演示。
http-hp-ilo-info
已演示过。这里不再演示。
http-icloud-findmyiphone
已演示过。这里不再演示。
http-icloud-sendmsg
已演示过。这里不再演示。
http-internal-ip-disclosure
已演示过。这里不再演示。
http-jsonp-detection
已演示过。这里不再演示。
http-ls
已演示过。这里不再演示。
http-malware-host
已演示过。这里不再演示。
http-mcmp
已演示过。这里不再演示。
http-methods
已演示过。这里不再演示。
http-mobileversion-checker
已演示过。这里不再演示。
http-ntlm-info
已演示过。这里不再演示。
http-open-proxy
已演示过。这里不再演示。
http-php-version
已演示过。这里不再演示。
http-qnap-nas-info
已演示过。这里不再演示。
http-referer-checker
已演示过。这里不再演示。
http-robots.txt
已演示过。这里不再演示。
http-robtex-reverse-ip
已演示过。这里不再演示。
http-robtex-shared-ns
已演示过。这里不再演示。
http-sap-netweaver-leak
已演示过。这里不再演示。
http-security-headers
已演示过。这里不再演示。
573. http-slowloris-check
测试 Web 服务器是否容易受到 Slowloris DoS 攻击,而无需实际发起 DoS 攻击。
RSnake 在 Defcon 17 上描述了 Slowloris(请参阅 http://ha.ckers.org/slowloris/)。
此脚本打开两个与服务器的连接,每个连接都没有最后的 CRLF。 10 秒后,第二个连接发送额外的标头。 然后两个连接都等待服务器超时。 如果第二个连接在第一个连接超时 10 秒或更长时间后超时,我们可以得出结论,发送额外的标头延长了超时时间,并且服务器容易受到 slowloris DoS 攻击。
“可能易受攻击”结果意味着服务器容易受到超时延长攻击,但根据 http 服务器的架构和资源限制,完全拒绝服务并不总是可能的。 完整的测试需要触发实际的 DoS 条件并测量服务器响应能力。
您可以使用 http.useragent 脚本参数指定自定义 http 用户代理字段。
来自 Qualys 博文的想法:
https://community.qualys.com/blogs/securitylabs/2011/07/07/identifying-slow-http-attack-vulnerability-on-web-applications
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap --script "http-slowloris-check" -p80,443 ip/域名
http-svn-enum
已演示过。这里不再演示。
http-svn-info
已演示过。这里不再演示。
http-title
已演示过。这里不再演示。
http-trace
已演示过。这里不再演示。
http-traceroute
已演示过。这里不再演示。
http-trane-info
已演示过。这里不再演示。
http-useragent-tester
已演示过。这里不再演示。
http-virustotal
已演示过。这里不再演示。
http-vlcstreamer-ls
已演示过。这里不再演示。
574. http-vmware-path-vuln
检查 VMWare ESX、ESXi 和 Server 中的路径遍历漏洞 (CVE-2009-3733)。
该漏洞最初由 Justin Morehouse 和 Tony Flick 发布,他们在 Shmoocon 2010 上进行了演示 (http://fyrmassociates.com/tools.html)。
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
nmap --script "http-vmware-path-vuln" -p80,443,8222,8333 192.168.174.132
http-vuln-cve2010-0738
已演示过。这里不再演示。
575. http-vuln-cve2011-3192
检测 Apache Web 服务器处理页面多个重叠/简单范围请求的方式中存在的拒绝服务漏洞。
参考文献:
https://seclists.org/fulldisclosure/2011/Aug/175
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-3192
https://www.tenable.com/plugins/nessus/55976
http-vuln-cve2011-3192.path
定义请求路径
http-vuln-cve2011-3192.hostname
定义发送到服务器的 HEAD 请求中要使用的主机名
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap --script "http-vuln-cve2011-3192.nse" --script-args "http-vuln-cve2011-3192.hostname=nmap.scanme.org" -pT:80,443 scanme.nmap.org
576. http-vuln-cve2014-2126
检测 Cisco ASA 设备是否容易受到 Cisco ASA ASDM 权限提升漏洞 (CVE-2014-2126) 的攻击。
tls.servername
请参阅 tls 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
anyconnect.group、anyconnect.mac、anyconnect.ua、anyconnect.version
请参阅 anyconnect 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
slaxml.debug
请参阅 slaxml 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
nmap -p 443 --script "http-vuln-cve2014-2126" ip/域名
577. http-vuln-cve2014-2127
检测 Cisco ASA 设备是否容易受到 Cisco ASA SSL VPN 权限提升漏洞 (CVE-2014-2127) 的攻击。
tls.servername
请参阅 tls 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
anyconnect.group、anyconnect.mac、anyconnect.ua、anyconnect.version
请参阅 anyconnect 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
slaxml.debug
请参阅 slaxml 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
nmap -p 443 --script "http-vuln-cve2014-2127" ip/域名
578. http-vuln-cve2014-2128
检测 Cisco ASA 设备是否容易受到 Cisco ASA SSL VPN 身份验证绕过漏洞 (CVE-2014-2128) 的攻击。
tls.servername
请参阅 tls 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
anyconnect.group、anyconnect.mac、anyconnect.ua、anyconnect.version
请参阅 anyconnect 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
slaxml.debug
请参阅 slaxml 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
nmap -p 443 --script "http-vuln-cve2014-2128" 192.168.174.132
579. http-vuln-cve2014-2129
检测 Cisco ASA 设备是否容易受到 Cisco ASA SIP 拒绝服务漏洞 (CVE-2014-2129) 的攻击。
tls.servername
请参阅 tls 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
anyconnect.group、anyconnect.mac、anyconnect.ua、anyconnect.version
请参阅 anyconnect 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
slaxml.debug
请参阅 slaxml 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
nmap -p 443 --script "http-vuln-cve2014-2129" ip/域名
580. http-vuln-cve2015-1635
检查 Microsoft Windows 系统 (CVE2015-2015-1635) 中的远程代码执行漏洞 (MS15-034)。
该脚本发送对系统无影响的特制 HTTP 请求来检测此漏洞。受影响的版本包括 Windows 7、Windows Server 2008 R2、Windows 8、Windows Server 2012、Windows 8.1 和 Windows Server 2012 R2。
参考:
https://technet.microsoft.com/library/security/MS15-034
http-vuln-cve2015-1635.uri
请求中使用的 URI。默认值:/
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
sudo nmap -p80 --script "http-vuln-cve2015-1635.nse" 192.168.174.128
sudo nmap -sV --script "http-vuln-cve2015-1635" --script-args uri='/anotheruri/' 192.168.174.128
581. http-vuln-cve2017-1001000
尝试检测 Wordpress 4.7.0 和 4.7.1 中的权限提升漏洞,该漏洞允许未经身份验证的用户在帖子中注入内容。
该脚本连接到 Wordpress REST API 以获取已发布帖子的列表,并从中获取用户 ID 和日期。然后,它尝试使用我们刚刚获得的相同日期信息更新帖子中的日期字段。如果请求未返回错误,我们将服务器标记为易受攻击。
参考:https://blog.sucuri.net/2017/02/content-injection-vulnerability-wordpress-rest-api.html
http-vuln-cve2017-1001000.uri
网站上的 Wordpress 根目录。默认:/
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
nmap --script "http-vuln-cve2017-1001000" --script-args 'http-vuln-cve2017-1001000="uri"' -p80,443 ip/域名
#Fofa语句: "wordpress 4.7.1" 或 "wordpress 4.7.0"
http-webdav-scan
已演示过。这里不再演示。
http-xssed
已演示过。这里不再演示。
icap-info
已演示过。这里不再演示。
ike-version
已演示过。这里不再演示。
imap-capabilities
已演示过。这里不再演示。
imap-ntlm-info
已演示过。这里不再演示。
ip-forwarding
已演示过。这里不再演示。
ip-geolocation-geoplugin
已演示过。这里不再演示。
ip-geolocation-ipinfodb
已演示过。这里不再演示。
ip-geolocation-map-bing
已演示过。这里不再演示。
ip-geolocation-map-google
已演示过。这里不再演示。
582. ip-geolocation-map-kml
该脚本查询 Nmap 注册表以获取先前地理定位脚本存储的目标的 GPS 坐标,并生成代表目标的点的 KML 文件。
ip-geolocation-map-kml.map_path
(必需)
sudo nmap -sn -Pn --script "ip-geolocation-geoplugin,ip-geolocation-map-kml" --script-args "ip-geolocation-map-kml.map_path=map.kml" ip/域名
保存的文件名为 map.kml 。
通过导入到 Google Earth 打开。在 File(文件)菜单栏点击 Open local KML file (打开本地KML文件)。
ip-geolocation-maxmind
已演示过。这里不再演示。
ip-https-discover
已演示过。这里不再演示。
ipidseq
已演示过。这里不再演示。
583. ipmi-cipher-zero
IPMI 2.0 密码零身份验证绕过扫描器。此模块可识别通过使用密码零而容易受到身份验证绕过漏洞影响的 IPMI 2.0 兼容系统。
vulns.short, vulns.showall
请参阅 vulns 库的文档。
sudo nmap -sU --script "ipmi-cipher-zero" -p 623 ip/域名
ipmi-version
已演示过。这里不再演示。
ipv6-node-info
已演示过。这里不再演示。
irc-botnet-channels
已演示过。这里不再演示。
irc-info
已演示过。这里不再演示。
iscsi-info
已演示过。这里不再演示。
isns-info
已演示过。这里不再演示。
jdwp-info
已演示过。这里不再演示。
knx-gateway-discover
已演示过。这里不再演示。
knx-gateway-info
已演示过。这里不再演示。
ldap-novell-getpass
已演示过。这里不再演示。
ldap-rootdse
已演示过。这里不再演示。
ldap-search
已演示过。这里不再演示。
lexmark-config
已演示过。这里不再演示。
llmnr-resolve
已演示过。这里不再演示。
lltd-discovery
已演示过。这里不再演示。
maxdb-info
已演示过。这里不再演示。
584. mcafee-epo-agent
检查 ePO 代理是否在端口 8081 或被标识为 ePO 代理端口的端口上运行。
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
sudo nmap -sV --script "mcafee-epo-agent" -p8081 ip/域名
membase-http-info
已演示过。这里不再演示。
memcached-info
已演示过。这里不再演示。
metasploit-info
已演示过。这里不再演示。
mikrotik-routeros-version
已演示过。这里不再演示。
mongodb-databases
已演示过。这里不再演示。
mongodb-info
已演示过。这里不再演示。
mqtt-subscribe
已演示过。这里不再演示。
mrinfo
已演示过。这里不再演示。
ms-sql-config
已演示过。这里不再演示。
ms-sql-dac
已演示过。这里不再演示。
ms-sql-dump-hashes
已演示过。这里不再演示。
ms-sql-hasdbaccess
已演示过。这里不再演示。
ms-sql-info
已演示过。这里不再演示。
ms-sql-ntlm-info
已演示过。这里不再演示。
ms-sql-query
已演示过。这里不再演示。
ms-sql-tables
已演示过。这里不再演示。
msrpc-enum
已演示过。这里不再演示。
mtrace
已演示过。这里不再演示。
multicast-profinet-discovery
已演示过。这里不再演示。
mysql-audit
已演示过。这里不再演示。
mysql-dump-hashes
已演示过。这里不再演示。
mysql-info
已演示过。这里不再演示。
mysql-query
已演示过。这里不再演示。
nat-pmp-info
已演示过。这里不再演示。
nat-pmp-mapport
已演示过。这里不再演示。
nbns-interfaces
已演示过。这里不再演示。
nbstat
已演示过。这里不再演示。
ncp-enum-users
已演示过。这里不再演示。
ncp-serverinfo
已演示过。这里不再演示。
ndmp-fs-info
已演示过。这里不再演示。
netbus-auth-bypass
已演示过。这里不再演示。
netbus-info
已演示过。这里不再演示。
nfs-ls
已演示过。这里不再演示。
nfs-showmount
已演示过。这里不再演示。
nfs-statfs
已演示过。这里不再演示。
nntp-ntlm-info
已演示过。这里不再演示。
ntp-info
已演示过。这里不再演示。
omp2-enum-targets
已演示过。这里不再演示。
openflow-info
已演示过。这里不再演示。
openlookup-info
已演示过。这里不再演示。
openwebnet-discovery
已演示过。这里不再演示。
585. oracle-tns-version
从 Oracle TNS 监听器解码 VSNNUM 版本号。
sudo nmap -sV --script "oracle-tns-version" ip/域名
p2p-conficker
已演示过。这里不再演示。
path-mtu
已演示过。这里不再演示。
pop3-capabilities
已演示过。这里不再演示。
pop3-ntlm-info
已演示过。这里不再演示。
586. port-states
打印在每个状态发现的端口列表。
Nmap 通常将“不感兴趣”的端口总结为“未显示:94 个关闭的端口,4 个已过滤的端口”,但用户可能想知道哪些端口被过滤,哪些端口被关闭。此脚本会将这些摘要扩展为在每个州发现的端口和端口范围列表。
nmap -sV --script=port-states 192.168.174.132
qscan
已演示过。这里不再演示。
quake1-info
已演示过。这里不再演示。
quake3-info
已演示过。这里不再演示。
quake3-master-getservers
已演示过。这里不再演示。
rdp-enum-encryption
已演示过。这里不再演示。
rdp-ntlm-info
已演示过。这里不再演示。
realvnc-auth-bypass
已演示过。这里不再演示。
redis-info
已演示过。这里不再演示。
resolveall
已演示过。这里不再演示。
586. reverse-index
在扫描输出结束时创建反向索引,显示哪些主机运行特定服务。这是对 Nmap 列出每台主机上服务的正常输出的补充。
reverse-index.mode
输出显示模式,可以是水平或垂直(默认值:水平)
reverse-index.names
如果设置,则按服务名称而不是端口号对结果进行索引。未知服务将按端口号列出。
nmap --script "reverse-index" 192.168.174.145
rfc868-time
已演示过。这里不再演示。
riak-http-info
已演示过。这里不再演示。
rmi-dumpregistry
已演示过。这里不再演示。
rpcap-info
已演示过。这里不再演示。
rpcinfo
已演示过。这里不再演示。
587. rsa-vuln-roca
检测易受 Return Of Coppersmith Attack (ROCA) 分解攻击的 RSA 密钥。
检查 SSH 主机密钥和 SSL/TLS 证书。检查需要对 openssl NSE 库进行最新更新。
参考文献:
https://crocs.fi.muni.cz/public/papers/rsa_ccs17
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
tls.servername
请参阅 tls 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap -p 22,443 --script "rsa-vuln-roca" 192.168.174.145
rsync-list-modules
已演示过。这里不再演示。
rtsp-methods
已演示过。这里不再演示。
rusers
已演示过。这里不再演示。
servicetags
已演示过。这里不再演示。
shodan-api
已演示过。这里不再演示。
sip-methods
已演示过。这里不再演示。
smb-double-pulsar-backdoor
已演示过。这里不再演示。
smb-enum-services
已演示过。这里不再演示。
smb-ls
已演示过。这里不再演示。
smb-mbenum
已演示过。这里不再演示。
smb-os-discovery
已演示过。这里不再演示。
smb-protocols
已演示过。这里不再演示。
smb-security-mode
已演示过。这里不再演示。
588. smb-vuln-ms17-010
尝试检测 Microsoft SMBv1 服务器是否容易受到远程代码执行漏洞 (ms17-010,又名 EternalBlue) 的攻击。该漏洞被 WannaCry 和 Petya 勒索软件以及其他恶意软件积极利用。
该脚本连接到 $IPC 树,在 FID 0 上执行事务,并检查是否返回错误“STATUS_INSUFF_SERVER_RESOURCES”,以确定目标是否未针对 ms17-010 进行修补。此外,它还会检查已修补系统返回的已知错误代码。
在 Windows XP、2003、7、8、8.1、10、2008、2012 和 2016 上进行了测试。
参考:
https://technet.microsoft.com/en-us/library/security/ms17-010.aspx
https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/
https://msdn.microsoft.com/en-us/library/ee441489.aspx
https://github.com/rapid7/metasploit-framework/blob/master/modules/auxiliary/scanner/smb/smb_ms17_010.rb
https://github.com/cldrn/nmap-nse-scripts/wiki/Notes-about-smb-vuln-ms17-010
smb-vuln-ms17-010.sharename
要连接的共享名称。默认值:IPC$
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap -p445 --script "smb-vuln-ms17-010" 192.168.174.130
smb2-capabilities
已演示过。这里不再演示。
smb2-security-mode
已演示过。这里不再演示。
smb2-time
已演示过。这里不再演示。
589. smb2-vuln-uptime
通过检查 SMB2 协议协商期间返回的正常运行时间来尝试检测 Windows 系统中缺少的补丁。
SMB2 协议协商响应返回系统启动时预身份验证。此信息可用于确定系统是否缺少关键补丁,而无需触发 IDS/IPS/AV。
请记住,重新启动的系统可能仍然容易受到攻击。此检查仅根据正常运行时间显示未修补的系统,不会发送其他探测。
参考:
https://twitter.com/breakersall/status/880496571581857793
smb2-vuln-uptime.skip-os
忽略操作系统检测结果并显示结果
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
sudo nmap -O --script "smb2-vuln-uptime" 192.168.174.130
nmap -p445 --script "smb2-vuln-uptime" --script-args "smb2-vuln-uptime.skip-os=true" 192.168.174.130
smtp-commands
已演示过。这里不再演示。
smtp-ntlm-info
已演示过。这里不再演示。
smtp-strangeport
已演示过。这里不再演示。
snmp-hh3c-logins
已演示过。这里不再演示。
snmp-info
已演示过。这里不再演示。
snmp-interfaces
已演示过。这里不再演示。
snmp-netstat
已演示过。这里不再演示。
snmp-processes
已演示过。这里不再演示。
snmp-sysdescr
已演示过。这里不再演示。
snmp-win32-services
已演示过。这里不再演示。
snmp-win32-shares
已演示过。这里不再演示。
snmp-win32-software
已演示过。这里不再演示。
snmp-win32-users
已演示过。这里不再演示。
socks-auth-info
已演示过。这里不再演示。
socks-open-proxy
已演示过。这里不再演示。
ssh-hostkey
已演示过。这里不再演示。
ssh2-enum-algos
已演示过。这里不再演示。
sshv1
已演示过。这里不再演示。
590. ssl-ccs-injection
检测服务器是否容易受到 SSL/TLS“CCS 注入”漏洞 (CVE-2014-0224) 的攻击,该漏洞由 Masashi Kikuchi 首次发现。该脚本基于 Ramon de C Valle 编写的 ccsinjection.c 代码 (https://gist.github.com/rcvalle/71f4b027d61a78c42607)
为了利用该漏洞,MITM 攻击者会有效地执行以下操作:
o 等待新的 TLS 连接,然后等待 ClientHello ServerHello 握手消息。
o 在两个方向上发出 CCS 数据包,这会导致 OpenSSL 代码使用零长度预主密钥。数据包被发送到连接的两端。会话密钥是使用零长度预主密钥派生的,未来的会话密钥也存在此弱点。
o 重新协商握手参数。
o 攻击者现在能够解密甚至修改传输中的数据包。
该脚本通过无序发送“ChangeCipherSpec”消息并检查服务器是否返回“UNEXPECTED_MESSAGE”警报记录来工作。由于未修补的服务器只会接受此消息,因此会发送两次 CCS 数据包,以强制服务器发出警报。如果警报类型不同于“UNEXPECTED_MESSAGE”,我们可以断定服务器存在漏洞。
tls.servername
请参阅 tls 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap -p 443 --script "ssl-ccs-injection" ip/域名
ssl-cert
已演示过。这里不再演示。
ssl-cert-intaddr
已演示过。这里不再演示。
ssl-date
已演示过。这里不再演示。
591. ssl-dh-params
针对 SSL/TLS 服务的弱临时 Diffie-Hellman 参数检测。
此脚本使用以临时 Diffie-Hellman 为密钥交换算法的密码套件模拟 SSL/TLS 握手。
提取并分析 Diffie-Hellman MODP 组参数,以查找 Logjam (CVE 2015-4000) 漏洞和其他弱点。
在支持它们的服务上建立机会性 STARTTLS 会话。
tls.servername
请参阅 tls 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap --script "ssl-dh-params" 192.168.174.130
592. ssl-heartbleed
检测服务器是否易受 OpenSSL Heartbleed 漏洞 (CVE-2014-0160) 攻击。代码基于 Katie Stafford (katie@ktpanda.org) 编写的 Python 脚本 ssltest.py
ssl-heartbleed.protocols
(默认尝试全部)TLS 1.0、TLS 1.1 或 TLS 1.2
tls.servername
请参阅 tls 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap -p 443 --script "ssl-heartbleed" 192.168.174.132
ssl-known-key
已演示过。这里不再演示。
593. ssl-poodle
检查是否允许使用 SSLv3 CBC 密码 (POODLE)
使用 -sV 运行以使用 Nmap 的服务扫描来检测非标准端口上的 SSL/TLS。否则,ssl-poodle 将仅在常用于 SSL 的端口上运行。
POODLE 是 CVE-2014-3566。所有接受 CBC 密码套件的 SSLv3 实现都存在漏洞。为了加快检测速度,此脚本将在发现第一个 CBC 密码套件后停止。如果您想枚举所有 CBC 密码套件,可以使用 Nmap 自己的 ssl-enum-ciphers 对 TLS 密码套件进行全面审核。
tls.servername
请参阅 tls 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap -sV --version-light --script "ssl-poodle" -p 443 ip/域名
sslv2
已演示过。这里不再演示。
sstp-discover
已演示过。这里不再演示。
stun-info
已演示过。这里不再演示。
targets-asn
已演示过。这里不再演示。
targets-ipv6-multicast-echo
已演示过。这里不再演示。
targets-ipv6-multicast-invalid-dst
已演示过。这里不再演示。
targets-ipv6-multicast-mld
已演示过。这里不再演示。
targets-sniffer
已演示过。这里不再演示。
targets-traceroute
已演示过。这里不再演示。
594. targets-xml
从 Nmap XML 输出文件加载地址进行扫描。
根据是否为 nmap 指定 -6 来确定地址类型(IPv4 或 IPv6)。
target-xml.iX
要导入的 Nmap XML 文件的文件名
targets-xml.state
只有具有此状态的主机才会输入其地址。默认值:“up”
max-newtargets、newtargets
请参阅目标库的文档。
slaxml.debug
请参阅 slaxml 库的文档。
nmap --script "targets-xml" --script-args "newtargets,iX=oldscan.xml"
telnet-encryption
已演示过。这里不再演示。
telnet-ntlm-info
已演示过。这里不再演示。
tftp-version
已演示过。这里不再演示。
tls-alpn
已演示过。这里不再演示。
tls-nextprotoneg
已演示过。这里不再演示。
595. tls-ticketbleed
检测服务器是否容易受到 F5 Ticketbleed 漏洞 (CVE-2016-9244) 的攻击。
更多信息:
https://filippo.io/Ticketbleed/
https://blog.filippo.io/finding-ticketbleed/
https://support.f5.com/csp/article/K05121675
tls-ticketbleed.protocols
(默认尝试全部)TLSv1.0、TLSv1.1 或 TLSv1.2
tls.servername
请参阅 tls 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
mssql.domain、mssql.instance-all、mssql.instance-name、mssql.instance-port、mssql.password、mssql.protocol、mssql.scanned-ports-only、mssql.timeout、mssql.username
请参阅 mssql 库的文档。
smtp.domain
请参阅 smtp 库的文档。
randomseed、smbbasic、smbport、smbsign
请参阅 smb 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
sudo nmap -p 443 --script "tls-ticketbleed" ip/域名
tn3270-screen
已演示过。这里不再演示。
tor-consensus-checker
已演示过。这里不再演示。
traceroute-geolocation
已演示过。这里不再演示。
ubiquiti-discovery
已演示过。这里不再演示。
596. unittest
在所有 NSE 库上运行单元测试。
unittest.run
运行测试。使 unittest.testing() 返回 true。
unittest.tests
仅从这些库运行测试(默认为全部)
nmap --script "unittest" --script-args "unittest.run"
597. unusual-port
将端口上检测到的服务与该端口号的预期服务进行比较(例如 22 上的 ssh、80 上的 http)并报告偏差。该脚本要求已运行版本扫描,以便能够发现每个端口上实际运行的服务。
nmap --script "unusual-port" 192.168.174.145
upnp-info
已演示过。这里不再演示。
uptime-agent-info
已演示过。这里不再演示。
598. url-snarf
嗅探 HTTP 流量的接口并转储所有 URL 及其来源 IP 地址。脚本输出与其他脚本不同,因为 URL 直接写入标准输出。还有一个选项可以将结果记录到文件中。
可以使用超时参数限制脚本的时间,或者通过将超时设置为 0 来运行脚本直到发出 ctrl+break。
url-snarf.outfile
写入所有发现的 URL 的文件名
url-snarf.timeout
运行脚本直到超时。可以使用 0 秒的超时运行直到 ctrl+break。(默认值:30 秒)
url-snarf.interface
嗅探的接口(覆盖 -e)
url-snarf.nostdout
运行时不将任何输出写入 stdout
sudo nmap --script "url-snarf" -e eth0
ventrilo-info
已演示过。这里不再演示。
versant-info
已演示过。这里不再演示。
vmware-version
已演示过。这里不再演示。
vnc-info
已演示过。这里不再演示。
voldemort-info
已演示过。这里不再演示。
vulners
已演示过。这里不再演示。
vuze-dht-info
已演示过。这里不再演示。
wdb-version
已演示过。这里不再演示。
weblogic-t3-info
已演示过。这里不再演示。
whois-domain
已演示过。这里不再演示。
whois-ip
已演示过。这里不再演示。
wsdd-discover
已演示过。这里不再演示。
x11-access
已演示过。这里不再演示。
xdmcp-discover
已演示过。这里不再演示。
xmlrpc-methods
已演示过。这里不再演示。
xmpp-info
已演示过。这里不再演示。
version(版本)
此特殊类别中的脚本是版本检测功能的扩展,无法明确选择。 仅当请求版本检测 (-sV) 时,才会选择运行它们。 它们的输出无法与版本检测输出区分开来,并且它们不会产生服务或主机脚本结果。 例如 skypev2-version、pptp-version 和 iax2-version。
allseeingeye-info
已演示过。这里不再演示。
amqp-info
已演示过。这里不再演示。
bacnet-info
已演示过。这里不再演示。
599. cccam-version
检测 CCcam 服务(用于在多个接收器之间共享订阅电视的软件)。
该服务通常在端口 12000 上运行。它在收到连接时会打印 16 个看似随机的字节,以此来区分自己。
由于脚本尝试检测“看似随机”的字节,因此当数据看起来不够随机时,它有很小的几率无法检测到服务。
nmap -sV --script "cccam-version" -p12000 ip/域名
db2-das-info
已演示过。这里不再演示。
600. docker-version
检测 Docker 服务版本。
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
sudo nmap -sV --script "docker-version" -p2375 ip/域名
drda-info
已演示过。这里不再演示。
enip-info
已演示过。这里不再演示。
601. fingerprint-strings
打印未知服务的服务指纹中的可读字符串。
Nmap 的服务和应用程序版本检测引擎将命名的探测器发送到目标服务,并尝试根据响应识别它们。当没有匹配时,Nmap 会生成服务指纹以供提交。有时,检查此指纹可以提供有关服务身份的线索。但是,指纹经过编码和包装以确保它不会丢失数据,这可能会使其难以读取。
此脚本只是解开指纹并在其响应的探测器名称下方打印它找到的可读 ASCII 字符串。探测器名称取自 nmap-service-probes 文件,而不是响应。
finger-strings.n
组成“字符串”所需的可打印 ASCII 字符数(默认值:4)
sudo nmap -sV --script "fingerprint-strings" 192.168.174.129
fox-info
已演示过。这里不再演示。
freelancer-info
已演示过。这里不再演示。
hnap-info
已演示过。这里不再演示。
602. http-server-header
使用 HTTP 服务器标头来获取缺失的版本信息。由于需要正确匹配非 HTTP 服务,因此目前版本探测无法实现此功能。
nmap -sV --script "http-server-header" scanme.nmap.org
http-trane-info
已演示过。这里不再演示。
603. https-redirect
检查重定向到同一端口上的 HTTPS 的 HTTP 服务。
nmap -sV --script "https-redirect" nmap.org
604. iax2-version
检测 UDP IAX2 服务。
该脚本发送 Inter-Asterisk eXchange (IAX) Revision 2 控制帧 POKE 请求并检查是否正确响应。此协议用于启用服务器之间的 VoIP 连接以及客户端-服务器通信。
sudo nmap -sU -sV -p 4569 --script "iax2-version" ip/域名
iec61850-mms
已演示过。这里不再演示。
ike-version
已演示过。这里不再演示。
605. jdwp-version
检测 Java 调试线路协议。Java 程序使用此协议通过网络进行调试。它不应向公共互联网开放,因为它无法提供任何安全性,以防范恶意攻击者将自己的字节码注入调试进程。
JDWP 的文档可在 http://java.sun.com/javase/6/docs/technotes/guides/jpda/jdwp-spec.html 上找到
sudo nmap -sV --script "jdwp-version" -p9999 ip/域名
maxdb-info
已演示过。这里不再演示。
mcafee-epo-agent
已演示过。这里不再演示。
mikrotik-routeros-version
已演示过。这里不再演示。
mqtt-subscribe
已演示过。这里不再演示。
606. murmur-version
检测 Murmur 服务(Mumble 语音通信客户端的服务器)版本 1.2.X。
Murmur 服务器监听具有相同端口号的 TCP(控制)和 UDP(语音)端口。此脚本在 TCP 和 UDP 端口版本扫描时均会激活。在这两种情况下,探测数据都仅发送到 UDP 端口,因为它允许使用简单且信息丰富的 ping 命令。
单个探测将报告服务器版本、当前用户数、服务器上允许的最大用户数以及用于语音通信的带宽。Mumble 客户端使用它来 ping 已知的 Murmur 服务器。
由于多次握手不正确(Nmap 服务探测),目标 Murmur 服务器很可能会暂时禁止运行服务检测的 IP 地址。此禁止使得通过 TCP 识别服务在实践中变得不可能,但不会影响此脚本使用的 UDP 探测。
由于先前的服务探测连接影响了服务器,因此在执行 TCP 服务扫描时可能会得到错误的用户数(通常为 +1)。
请参阅http://mumble.sourceforge.net/Protocol。
sudo nmap -sV --script "murmur-version" -p64740 ip/域名
607. ndmp-version
从远程网络数据管理协议 (ndmp) 服务检索版本信息。NDMP 是一种用于在 NAS 设备和备份设备之间传输数据的协议,无需数据通过备份服务器。已知以下产品支持该协议:
Amanda
Bacula
CA Arcserve
CommVault Simpana
EMC Networker
Hitachi Data Systems
IBM Tivoli
Quest Software Netvault Backup
Symantec Netbackup
Symantec Backup Exec
sudo nmap -sV --script "ndmp-version" 192.168.174.129
608. netbus-version
扩展版本检测以检测模仿 NetBus 的蜜罐服务 NetBuster。
sudo nmap -sV -p 12345 --script "netbus-version" ip/域名
omron-info
已演示过。这里不再演示。
openlookup-info
已演示过。这里不再演示。
oracle-tns-version
已演示过。这里不再演示。
609. ovs-agent-version
通过对 HTTP GET 请求和 XML-RPC 方法调用的响应进行指纹识别来检测 Oracle Virtual Server Agent 的版本。
Virtual Server Agent 2.2 版在响应 HTTP GET 请求时返回一个独特的字符串。但是,3.0 和 3.0.1 版返回的响应与其他 BaseHTTP/SimpleXMLRPCServer 一样。2.2 和 3.0 版在响应 system.listMethods XML-RPC 调用时返回一个独特的错误消息,但是它无法区分这两个版本。3.0.1 版返回的 system.listMethods 响应与 2.2 和 3.0 版的响应都不同。因此我们使用以下策略:(1.) 发送 GET 请求。如果返回 2.2 版字符串,则返回“2.2”。(2.) 发送 system.listMethods 方法调用。如果返回错误,则返回“3.0”或“3.0.1”,具体取决于错误的具体格式。
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
sudo nmap -sV --script "ovs-agent-version" -p8899 ip/域名
610. pptp-version
尝试从点对点隧道协议 (PPTP) 服务中提取系统信息。
nmap -sV --script "pptp-version" -p1723 ip/域名
quake1-info
已演示过。这里不再演示。
quake3-info
已演示过。这里不再演示。
rfc868-time
已演示过。这里不再演示。
611. rpc-grind
为目标 RPC 端口进行指纹识别,以提取目标服务、RPC 编号和版本。
该脚本的工作原理是向目标服务发送带有随机高版本不支持编号的 RPC 空调用请求,该请求带有来自 nmap-rpc 文件中的迭代 RPC 程序编号,并检查来自目标端口的回复。回复带有 RPC 接受状态 2(远程无法支持版本)意味着我们请求发送了匹配的程序编号,然后我们继续提取支持的版本。回复带有接受状态 RPC 接受状态 1(远程未导出程序)意味着我们发送了错误的程序编号。任何其他接受状态都是不正确的行为。
rpc-grind.threads
研磨线程数。默认为 4
mount.version、nfs.version、rpc.protocol
请参阅 rpc 库的文档。
sudo nmap -sV --script "rpc-grind" --script-args 'rpc-grind.threads=8' -p 53344 ip/域名
rpcinfo
已演示过。这里不再演示。
s7-info
已演示过。这里不再演示。
612. skypev2-version
检测 Skype 版本 2 服务。
nmap -sV --script "skypev2-version"ip/域名
snmp-info
已演示过。这里不再演示。
613. stun-version
如果服务器属性存在,则向服务器发送绑定请求并尝试从响应中提取版本信息。
stun.mode
请参阅 stun 库的文档。
sudo nmap -sU -sV -p 3478 --script "stun-version" ip/域名
614. teamspeak2-version
检测 TeamSpeak 2 语音通信服务器并尝试确定版本和配置信息。
发送单个 UDP 数据包(登录请求)。如果服务器未设置密码,还会报告确切的版本、名称和操作系统类型。
sudo nmap -sU -sV -p 8767 --script "teamspeak2-version" ip/域名
tftp-version
已演示过。这里不再演示。
ubiquiti-discovery
已演示过。这里不再演示。
ventrilo-info
已演示过。这里不再演示。
vmware-version
已演示过。这里不再演示。
wdb-version
已演示过。这里不再演示。
weblogic-t3-info
已演示过。这里不再演示。
xmpp-info
已演示过。这里不再演示。
vuln(漏洞)
这些脚本会检查特定的已知漏洞,并且通常仅在发现漏洞时才报告结果。示例包括 realvnc-auth-bypass 和 afp-path-vuln。
afp-path-vuln
已演示过。这里不再演示。
broadcast-avahi-dos
已演示过。这里不再演示。
clamav-exec
已演示过。这里不再演示。
distcc-cve2004-2687
已演示过。这里不再演示。
dns-update
已演示过。这里不再演示。
firewall-bypass
已演示过。这里不再演示。
ftp-libopie
已演示过。这里不再演示。
ftp-proftpd-backdoor
已演示过。这里不再演示。
ftp-vsftpd-backdoor
已演示过。这里不再演示。
ftp-vuln-cve2010-4221
已演示过。这里不再演示。
http-adobe-coldfusion-apsa1301
已演示过。这里不再演示。
http-aspnet-debug
已演示过。这里不再演示。
http-avaya-ipoffice-users
已演示过。这里不再演示。
http-awstatstotals-exec
已演示过。这里不再演示。
http-axis2-dir-traversal
已演示过。这里不再演示。
http-cookie-flags
已演示过。这里不再演示。
http-cross-domain-policy
已演示过。这里不再演示。
http-csrf
已演示过。这里不再演示。
http-dlink-backdoor
已演示过。这里不再演示。
http-dombased-xss
已演示过。这里不再演示。
http-enum
已演示过。这里不再演示。
http-fileupload-exploiter
已演示过。这里不再演示。
http-frontpage-login
已演示过。这里不再演示。
http-git
已演示过。这里不再演示。
http-huawei-hg5xx-vuln
已演示过。这里不再演示。
http-iis-webdav-vuln
已演示过。这里不再演示。
http-internal-ip-disclosure
已演示过。这里不再演示。
http-jsonp-detection
已演示过。这里不再演示。
http-litespeed-sourcecode-download
已演示过。这里不再演示。
http-majordomo2-dir-traversal
已演示过。这里不再演示。
http-method-tamper
已演示过。这里不再演示。
http-passwd
已演示过。这里不再演示。
http-phpmyadmin-dir-traversal
已演示过。这里不再演示。
http-phpself-xss
已演示过。这里不再演示。
http-shellshock
已演示过。这里不再演示。
http-slowloris-check
已演示过。这里不再演示。
http-sql-injection
已演示过。这里不再演示。
http-stored-xss
已演示过。这里不再演示。
http-tplink-dir-traversal
已演示过。这里不再演示。
http-trace
已演示过。这里不再演示。
http-vmware-path-vuln
已演示过。这里不再演示。
http-vuln-cve2006-3392
已演示过。这里不再演示。
http-vuln-cve2009-3960
已演示过。这里不再演示。
http-vuln-cve2010-0738
已演示过。这里不再演示。
http-vuln-cve2010-2861
已演示过。这里不再演示。
http-vuln-cve2011-3192
已演示过。这里不再演示。
http-vuln-cve2011-3368
已演示过。这里不再演示。
http-vuln-cve2012-1823
已演示过。这里不再演示。
http-vuln-cve2013-0156
已演示过。这里不再演示。
http-vuln-cve2013-6786
已演示过。这里不再演示。
http-vuln-cve2013-7091
已演示过。这里不再演示。
http-vuln-cve2014-2126
已演示过。这里不再演示。
http-vuln-cve2014-2127
已演示过。这里不再演示。
http-vuln-cve2014-2128
已演示过。这里不再演示。
http-vuln-cve2014-2129
已演示过。这里不再演示。
http-vuln-cve2014-3704
已演示过。这里不再演示。
http-vuln-cve2014-8877
已演示过。这里不再演示。
http-vuln-cve2015-1427
已演示过。这里不再演示。
http-vuln-cve2015-1635
已演示过。这里不再演示。
http-vuln-cve2017-1001000
已演示过。这里不再演示。
615. http-vuln-cve2017-5638
检测指定的 URL 是否容易受到 Apache Struts 远程代码执行漏洞 (CVE-2017-5638) 的攻击。
http-vuln-cve2017-5638.path
请求的 URL 路径。默认路径为“/”。
http-vuln-cve2017-5638.method
请求的 HTTP 方法。默认方法为“GET”。
slaxml.debug
请参阅 slaxml 库的文档。
http.host、http.max-body-size、http.max-cache-size、http.max-pipeline、http.pipeline、http.truncated-ok、http.useragent
请参阅 http 库的文档。
smbdomain、smbhash、smbnoguest、smbpassword、smbtype、smbusername
请参阅 smbauth 库的文档。
vulns.short、vulns.showall
请参阅 vulns 库的文档。
nmap -p 80,443 --script "http-vuln-cve2017-5638" ip/域名
http-vuln-cve2017-5689
已演示过。这里不再演示。
http-vuln-cve2017-8917
已演示过。这里不再演示。
http-vuln-misfortune-cookie
已演示过。这里不再演示。
http-vuln-wnr1000-creds
已演示过。这里不再演示。
http-wordpress-users
已演示过。这里不再演示。
ipmi-cipher-zero
已演示过。这里不再演示。
irc-botnet-channels
已演示过。这里不再演示。
irc-unrealircd-backdoor
已演示过。这里不再演示。
mysql-vuln-cve2012-2122
已演示过。这里不再演示。
netbus-auth-bypass
已演示过。这里不再演示。
puppet-naivesigning
已演示过。这里不再演示。
qconn-exec
已演示过。这里不再演示。
rdp-vuln-ms12-020
已演示过。这里不再演示。
realvnc-auth-bypass
已演示过。这里不再演示。
rmi-vuln-classloader
已演示过。这里不再演示。
rsa-vuln-roca
已演示过。这里不再演示。
samba-vuln-cve-2012-1182
已演示过。这里不再演示。
smb-double-pulsar-backdoor
已演示过。这里不再演示。
smb-vuln-conficker
已演示过。这里不再演示。
smb-vuln-cve-2017-7494
已演示过。这里不再演示。
smb-vuln-cve2009-3103
已演示过。这里不再演示。
smb-vuln-ms06-025
已演示过。这里不再演示。
smb-vuln-ms07-029
已演示过。这里不再演示。
smb-vuln-ms08-067
已演示过。这里不再演示。
smb-vuln-ms10-054
已演示过。这里不再演示。
smb-vuln-ms10-061
已演示过。这里不再演示。
smb-vuln-ms17-010
已演示过。这里不再演示。
smb-vuln-regsvc-dos
已演示过。这里不再演示。
smb-vuln-webexec
已演示过。这里不再演示。
smb2-vuln-uptime
已演示过。这里不再演示。
smtp-vuln-cve2010-4344
已演示过。这里不再演示。
smtp-vuln-cve2011-1720
已演示过。这里不再演示。
smtp-vuln-cve2011-1764
已演示过。这里不再演示。
ssl-ccs-injection
已演示过。这里不再演示。
ssl-cert-intaddr
已演示过。这里不再演示。
ssl-dh-params
已演示过。这里不再演示。
ssl-heartbleed
已演示过。这里不再演示。
ssl-known-key
已演示过。这里不再演示。
ssl-poodle
已演示过。这里不再演示。
sslv2-drown
已演示过。这里不再演示。
supermicro-ipmi-conf
已演示过。这里不再演示。
tls-ticketbleed
已演示过。这里不再演示。
vulners
已演示过。这里不再演示。
wdb-version
已演示过。这里不再演示。
总结
总共有615个nmap脚本。
Nmap脚本功能强大,能够根据实际需求灵活调用不同类别的脚本,实现服务识别、漏洞扫描、暴力破解、信息收集等功能。通过结合具体参数使用,可大幅提升渗透测试的效率与准确性。在实际操作中,配合版本探测与目标端口选择,能够发现潜在风险点,为安全防护提供有力支持。熟练掌握Nmap脚本的使用,有助于提升网络安全从业者的整体技术水平,是日常测试与攻防演练中不可或缺的重要工具。
在此特别强调,本教程仅在合法授权的情况下进行测试和研究,请勿用于其他用途。未经授权使用此类工具可能会侵犯他人隐私,触犯相关法律,任何因此引发的法律或利益纠纷与本人无关。
欢迎各位大佬,小白来找我交流。