nmap

常用指令:

nmap -sP 192.168.1.100            #查看一个主机是否在线

nmap 192.168.1.100              #查看一个主机上开放的端口

nmap -sV -O 192.168.0.100          #判断目标操作系统类型

nmap -sS 192.168.1.100           #半开放syn扫描

nmap -p 1-1000 192.168.1.100    #扫描指定端口范围

nmap -p 80 192.168.1.100        #扫描特定端口

nmap -sV 192.168.1.100          #查看目标开放端口对应的协议及版本信息

三个判断防火墙的扫描

nmap -sF IP
nmap -sA IP
nmap -sW IP     #ACK,探测防火墙扫描

其他参数

-sT         #全连接扫描,更慢,会被服务器记录日志,但不易被入侵检测系统检测到
-Pn         #跳过Ping测试(防火墙),扫描指定目标
-v             #详细模式V越多就越详细
-p 80 ping    #指定端口
--script=script_name     #使用脚本

脚本列表http://nmap.org/nsedoc/scripts/

nmap脚本扫描:

分类:

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: 负责增强服务与版本扫描(Version Detection)功能的脚本

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

使用实例:

nmap --script=auth IP  
#负责处理鉴权证书(绕开鉴权)的脚本,也可以作为检测部分应用弱口令
http-php-version   #获得PHP版本信息
Http-enum          #枚举Web站点目录
smtp-strangeport   #判断SMTP是否运行在默认端口
dns-blacklist      #发现IP地址黑名单

nmap --script=vuln 192.168.137.*     #扫描常见漏洞
smb-check-vulns                      #检测smb漏洞
samba-vuln-cve-2012-1182             #扫描Samba堆溢出漏洞

扫描wordpress应用的脚本

1.http-wordpress-plugins
2.http-wordpress-enum
3.http-wordpress-brute

测试WAF是否存在

nmap -p 80,443 --script=http-waf-detect 192.168.0.100

nmap -p 80,443 --script=http-waf-fingerprint www.victom.com

Last updated