网络扫描利器-----NMAP

一、主机发现 

  • -A: 全面扫描,扫描指定的IP或域名的所有端口
  • -sP: ping扫描
  • -PN: 无ping扫描,不使用默认的探测检查,而是对目录进行一个完整的端口扫描。此对扫描有防火墙 保护而封锁ping探针主机的时间非常有用;
  • -PS:TCP SYN ping 扫描,该选项发送一个设置了SYN标志位的空TCP报文。 默认目的端口为80 (可以通过改变nmap.h) 文件中的DEFAULT_TCP_PROBE_PORT值进行配置,但不同的端口也可以作为选项指定。
  • -PA:TCP ACK ping扫描, -PA选项使用和SYN探测相同的默认端口(80),也可以 用相同的格式指定目标端口列表。
  • -PU:UDP PING;
  • -PE:参数进行一个ICMP在指定的系统中输出ping;
  • -PP:进行一个ICMP时间戳ping 扫描;
  • -PM : 进行一个ICMP地址掩码ping扫描;
  • -PO:进行一个IP协议ping
  • -PR: ARP PING,当扫描整个网的时候自动使用,这种类型的探测比其它的ping方法更快
  • -traceroute 参数可以用来追踪到指定主机的网络路径
  • -n:禁止DNS反向解析
  • -R:对目标IP地址实施一个逆向DNS解析
  • -system-dns:使用主机系统的域名解析来替代它自己的内部方法
  • -dns-servers:扫描手动指定查询的 DNS服务器
  • -sS: TCP SYN扫描
  • -sT: TCP connect扫描
  • -sU: UDP扫描
  • -sN;-sF;-sX:TCP Null,FIN,and Xmas扫描
  • -sA: TCP ACK扫描
  • -sW:TCP窗口扫描
  • -sM: TCP Maimon扫描
  • --scanflags:定制TCP扫描
  • -sI:IDLE Scan
  • -sO:IP协议扫描, IP 协议扫描可以让您确定目标机支持哪些IP协议 (TCP,ICMP,IGMP,等等)。
  • -F:快速扫描
  • -P: 只扫描指定的端口
  • -sV: 版本探测
  • -O:操作系统检测
  • -sL:显示一个列表,并对指定的IP地址执行一个反向的 DNS查询
  • 扫描目标列表

语法: nmap -iL [list.txt]  --> list.txt为目标的ip地址

  • 扫描随机目录 -iR 参数可以用来选择随机的互联网络主机来扫描

语法:nmap -iR [主机数量]   -->例: nmap -iR 200000

nmap -iR 1000000 -sS -PS 80 -P 80 -oG nmap.txt

随机产和10 万个IP,对其80 Port进行扫描,并将结果输出nmap.txt文件保存

  • exclude选项被用来从扫描中排除一些主机

语法: nmap  192.168.32.0/24 -exclude 192.168.32.1

  • 时间和性能

    --system-dns:使用系统域名解析器

    --min-hostgroup:调整并行扫描组大小:nmap --min-hostgroup 30 192.168.1.0/24

    --min-paralelism /--max-paralelism:调整探测报文的并行度

    --host-timeout:放弃低速目标主机

    --scan-delay; --max_scan-delay:调整探测报文的时间间隔

    --scan-delay:用于躲避基于阀值的入侵检测系统(IDS/IPS)

nmap -P0 -n -sS --max_hostgroup 1 --max_retries 0 --max_parallelism 10 172.16.1.0/24

二、防火墙类扫描

  •  防火墙响应的四种类型

    1. open port:防火墙允许少数的端口打开

    2. close port:由于防火墙 的缘故,大部分的端口被关闭

    3. filtered:nmap不确定端口是否打开或是关闭

    4. unfiltered:nmap能够防问这个端口,但不清楚这个端口打开的状态

  • 防火墙/IDS躲避和哄骗

    -f:报文分段,在扫描包括ping扫描使用 小的IP包分段。其思路是将TCP头分段在几个包中,使得包过滤器、 IDS以及其它工具的检测更加困难。 nmap -f -v 172.16.1.98

  • --mtu:使用指定的MTU
  • -D:使用诱饵隐蔽扫描,诱饵可用在初始的ping扫描(ICMP、SYN、ACK等)阶段或真正的端口扫描 阶段。诱饵也可以用于远程操作系统检测(-O)。在进行版 本检测或TCP连接扫描时,诱饵无效。nmap -D 172.16.1.41,172.16.1.199,ME -p 25,80,139,445 -Pn 172.16.1.98
  • -S:源地址哄骗;
  • -e:使用指定的接口;
  • -source-port;-g:源哄骗
  • --data-length:发送报文时,附加随机数据
  • --randomize-hosts:对目标主机的顺序随机排列
  • --spoof-mac:MAC地址哄骗

三、数据库渗透测试

  • mysql-databases: MySQL列举数库库

    nmap -p3306 --script mysql-databases --script-args mysqluser=root,mysqlpass 172.16.1.98 

  • mysql-variables: 列举Mysql变理

    nmap -p3306 --script mysql-variables 172.16.1.98

  • mysql-empty-password:检查MYSQL密码

    nmap -p3306 --script=mysql-empty-password 172.16.1.98

  • mysql-brute:检查MYSQL密码

    nmap -p3306 --script=mysql-brute 172.16.1.98

      

  • mysql-users.nse:列出所有mysql用户

    nmap -p3306 --script=mysql-users.nse --script-args=mysqluser=root 172.16.1.98

  • mysql-audit:审计Mysql安全配置

    nmap -p3306 --script=mysql-audit 172.16.1.98

  • nmap -p3306 --script=mysql-* 172.16.1.98扫描同一应用的所有脚本

  • ms-sql-brute:审计mssql密码
  • nmap -p1443 --script=ms-sql-brute 10.133.130.6

  • ms-sql-empty-password:检查MSSQL空密码

    nmap -p1443 --script=ms-sql-empty-password 10.133.130.6

  • ms-sql-tables:读取MSSQL数据
  • ms-sql-xp-cmdshell: MSSQL执行系统命令

    nmap -p1443 --script=ms-sql-xp-cmdshell 10.133.130.6

四、渗透测试

  • http-brute: 审计HTTP身份验证

    nmap --script=http-brute -p80 172.16.1.98

  • ftp-brute:审计FTP服务

    nmap --script=ftp-brute -p21 172.16.1.98

  • http-wordpress-brute:审计Wordpress程序

    nmap --script=http-wordpress-brute

  • http-joomla-brute:审计joomla服务
  • smb-brute.nse:审计SMB服务

    nmap --script=smb-brute.nse -sV 172.16.1.98

  • vnc-brute:审计VNC服务器

    nmap --script=vnc-brute -p5800 10.133.83.194

nmap -p5800 --script=realvnc-auth-bypass 10.133.83.194 检查vnc bypass

nmap -p5800 --script=vnc-auth 10.133.83.194 检查VNC认证方式

  • smtp-brute:检测SMTP服务器
  • stuxnet-detect:检测Stuxnet蠕虫
  • snmp-netstat / snmp-processes / snmp-win32-services / snmp-brute: SMTP服务安全审计

  • firewalk:探测防火墙火墙

    namp --script=firewalk --traceroute 10.142.24.21

  • vmauthd-brute: VMWare认证破解 

    nmap -p902 --script=vmauthd-brute 10.133.83.194

  • smb-check-vulns.nse:系统漏洞扫描

    nmap -p445 --script=smb-check-vulns.nse 172.16.1.41

  • http-stored-xss.nse:扫描Web漏洞

    nmap -p80 --script=http-stored-xss.nse 10.133.83.194

  • http-headers: http 头部检查

    nmap -p80 --script=http-headers 10.133.83.194

五、脚本扫描案例

  • nmap --scritp=auth  172.16.1.98 负责处理证书的脚本,检测部分应用弱口令

  • nmap --script=brute 172.16.1.98 提供暴力破解的方式,可能数据库、SNMP、SMB等简单密码的暴力破解

  • nmap --script=default 172,.16.1.98 或 nmap -sC 172.16.1.98 默认的脚本扫描,主要是收集各种应用的信息,收集到后,可再针对其进行攻击

  • nmap --script=vuln 172.16.1.41 检查是否存在常见的漏洞
  • nmap -n --p445 --script=broadcast 172.16.1.98 在局域网检查服务开启状况


六、脚本扫描分类

  • 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

七、案例

  • 空闲扫描寻找可能的IDLE主机,以下为TCP序列测试(详细、操作系统检测、无ping、无域名解析)  nmap -v -O -Pn -n 172.16.1.41 (TCP Sequence Prediction: Difficulty=263(Good Luck!))

  • 利用Idle的主机扫描,预防IDS主机发现:

    nmap -p 25,80,139,445 -Pn -sI 172.16.1.41 172.16.1.98  (172.16.1.41为idle主机,172.16.1.98为目标主机

  • 使用nmap-script参数smb-vuln-ms17-010.nse脚本检测ms17-010漏洞

    nmap -p445 --script smb-vuln-ms17-010.nse 192.168.102.2

八、过滤nmap扫描方法如下:

#iptables -F

#iptables -A INPUT -p tcp –tcp-flags ALL FIN,URG,PSH -j Drop

#iptables -A INPUT -p tcp –tcp-flags SYN,RST SYN,RST -j Drop

#iptables -A INPUT -p tcp –tcp-flags SYN,FIN SYN,FIN -j Drop

#iptables -A INPUT -p tcp –tcp-flags SyN SYN –dport 80 -j Drop

时间: 2024-08-28 20:28:09

网络扫描利器-----NMAP的相关文章

网络扫描工具nmap

本文目录: 1.1 选项说明 1.2 尝试一次扫描 1.3 扫描目标说明 1.4 端口状态说明 1.5 时间参数优化 1.6 扫描操作系统类型 1.7 快速扫描存活的主机 1.8 快速扫描端口 nmap一般就用来扫描主机是否在线(特别是扫描局域网内存活的机器).开放了哪些端口.其他的功能用的比较少,做渗透的人可能要了解的多些. 1.1 选项说明 nmap需要自行安装. shell> yum -y install nmap 使用nmap -h可以查看选项和用法.选项非常多,这是功能强大的工具带来的

端口扫描工具nmap

nmap 使用介绍 nmap是目前为止最广为使用的国外端口扫描工具之一.我们可以从[url]http://www.insecure.org/[/url]进行下载,可以很容易的安装到Windows和unix操作系统中,包括mac os x(通过configure.make .make install等命令)也可以直接从http://www.insecure.org/下载windows二进制(包括所需要的winpcap)也可以从http://www.nmapwin.org/获得nmap的图形wind

NMAP网络扫描工具的安装与使用

简介 NMAP是一款流行的网络扫描和嗅探工具也是一个强大的端口扫描类安全测评工具,被广泛应用在黑客领域做漏洞探测以及安全扫描,更多的nmap是一个好用的网络工具,在生产和开发中也经常用到,主要做端口开放性检测和局域网信息的查看收集等,不同Linux发行版包管理中一般也带有nmap工具,这里选择去官网下载源码包进行编译安装,nmap的官网是是:https://namp.org由于某城墙的原因,打开会比较慢或者连接失败,所以奉上nmap中文网地址:http://www.nmap.com.cn/ 中文

ali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap

Kali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap 文/玄魂 目录 Kali Linux Web 渗透测试视频教程— 第六课 网络扫描-nmap与zmap. 1 Nmap-主机扫描类型... 3 Nmap-端口扫描技术... 3 Nmap 扫描命令格式... 4 Nmap-主机扫描... 4 Nmap-端口扫描... 5 Nmap-操作系统探测... 6 Nmap-服务程序探测... 7 Nmap---一些高级选项... 8 Nmap---脚本使用... 10

Linux常用网络工具:批量主机服务扫描之nmap

Linux下有很多强大网络扫描工具,网络扫描工具可以分为:主机扫描.主机服务扫描.路由扫描等. 之前已经写过常用的主机扫描和路由扫描工具,nmap支持批量主机扫描和主机服务扫描. nmap的安装直接使用:yum install nmap. nmap之ICMP扫描 nmap可以使用ICMP协议来实现Ping的功能,支持批量主机扫描,用来检测主机存活状态. 使用ICMP相比TCP协议不需要建立三次握手,所以速度更快,但某些防火墙或运营商屏蔽了ICMP就扫描不到. 常用命令: nmap -sP 192

Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap

Kail Linux渗透测试教程之网络扫描和嗅探工具Nmap 网络扫描和嗅探工具--Nmap Nmap也就网络映射器(Network Mapper),是一个免费开放的网络扫描和嗅探工具.该工具可以扫描主机是否在线.所开放的端口号.提供的网络服务及操作系统类型等.本节将介绍Nmap工具的使用.在使用Nmap工具之前,首先需要了解它的几种扫描类型.Nmap主要的扫描类型如表4-1所示. 表4-1  Nmap扫描类型 [实例4-1]使用nmap工具扫描目标主机192.168.6.105的端口号.执行命

Linux Centos7 网络扫描nmap和inode节点

一.网络扫描--NMAP NMAP 是一个强大的端口扫描类安全评测工具.设计为检测众多主机数量的巨大网络,支持 ping 扫描.多端口检测.OS 识别等多种技术.使用 NMAP 定期扫描内部网络,可以找出网络中不可控的应用服务,及时关闭不安全的服务,减小安全风险 ? -sS,TCP SYN 扫描(半开扫描):只向目标发出 SYN 数据包,如果收到 SYN/ACK 响应包就认为目标端口正在监听,并立即断开连接:否则认为目标端口并未开放.? -sT,TCP 连接扫描:这是完整的 TCP 扫描方式,用

单讲网络扫描(实操:NMAP篇)

现在本小编就来介绍一下NMAP网络扫描,把目光回到下面来1.输入命令后,显示未找到命令,即我们要重新安装nmap命令2.用yum重新安装命令3.输入命令,即可查看本机对外所开设的TCP端口4.输入命令,即可查看本机对外所开设的UDP端口5.查看本机对外开启的TCP端口 6.查看本机对外开设的UDP端口 7.探测该网段中是否有主机处于开机状态8.输入命令,显示本人虚拟机7-2开启端口信息 结论:NMAP网络扫描可以探测到其它主机是否处于在线状态,若在线,即可进一步查看到其它主机所开设的TCP/UD

端口扫描之王——nmap

端口扫描是网络安全工作者的必备的利器,通过对端口的扫描,了解网站中出现的漏洞以及端口的开放情况,对网站安全方面有着不可或缺的贡献,目前在市面上主要的端口扫描工具是X_Scan.SuperScan.nmap,其中在这里主推的是nmap,因为nmap具有以下的这一些优点: 1.多种多样的参数,丰富的脚本库,满足用户的个人定制需求,其中脚本库还提供了很多强大的功能任你选择 2.强大的可移植性,基本上能在所有的主流系统上运行,而且代码是开源的 3.详细的文档说明,和强大的社区团队进行支持,方面新人上手