渗透测试技术----工具使用(一)--nmap(masscan结合nmap使用)

一、nmap简介

1.nmap介绍
Nmap(Network Mapper)网络映射器是一款开放源代码的网络探测和安全审核工具。它被设计用来快速扫描大型网络,包括主机探测与发现、开放的端口情况、操作系统与应用服务指纹识别、WAF识别及常见安全漏洞。而且具有图形化界面Zenmap。

2.nmap特点
(1):主机探测:探测网络上的主机,如列出响应的TCP和ICMP请求、ICMP请求、开放特别端口的主机
(2):端口扫描:探测目标主机所开发的端口
(3):版本检测:探测目标主机的网络服务,判断其服务名称及版本号
(3):系统检测:探测目标主机的操作系统及网络设备的硬件特性
(4):支持探测脚本的编写:使用nmap的脚本引擎(NSE)和Lua编程语言

二、nmap参数详解

1.查找帮助

(1): -help/h:使用这个参数来查看帮助,因为不可能将所有的参数都记住,因此学会查看帮助很重要
在这里插入图片描述

2.nmap所有参数详解(按照帮助信息的参数顺序)
加粗的是相对重要的参数,使用频率比较高!!!

(1):扫描目标时用到的相关参数

  • -iL:从文件中导入目标主机或目标网段
  • -IR:随机选择目标主机
  • –exclude:后面跟的主机或网段不在扫描范围内
  • –excludefile:导入文件中的主机或网段将不再扫描范围内

(2):与主机发现有相关的参数

  • -sL:List Scan(列表扫描),仅列举指定目标的IP,不进行主机发现
  • -sn:Ping Scan,只进行主机发现,不进行端口扫描
  • -Pn:将所有指定的主机视为已开启,跳过主机发现的过程。这个参数适用于已经确定了存活的主机,需要对存活主机进行端口扫描时使用,这样可以跳过主机发现,从而加快扫描
  • -PS/PA/PU/PY(P代表portlist):通过发送TCP SYN/ACK或SCTP INIT/ECHO数据包的方式来发现主机
  • -PE/PP/PM:通过发送ICMP echo/timestamp/netmask请求包的方式来发现主机
  • -PO:使用IP协议包探测对方主机是否开启
  • -n/-R:-n表示不进行DNS解析;-R表示总是进行DNS解析
  • –dns-server:指定DNS服务器
  • –system-dns:指定使用系统的DNS服务器
  • –traceroute:追踪每个路由节点

(3):与端口扫描相关的参数

  • -sS/sT/sA:指定使用TCP SYN/Connect()/ACK的方式对目标主机进行扫描。
    -sS:半连接扫描,发送SYN数据包,不会在对方主机日志中进行记录
    -sT:全连接扫描,进行三次握手,会在对方主机日志中进行记录
    -sA:半连接扫描,发送ACK数据包,不会在对方主机日志中进行记录
  • -/sW/sM:指定使用Window/Mainon scans的方式对目标主机进行扫描
  • -sU:指定使用UDP扫描的方式确定目标主机的UDP端口状况
    使用UDP端口一般是用来判断端口关闭的情况,如果主机存活并且端口开启,那么不会收到回复的数据包,但是如果主机存活但是端口关闭,会收到一个端口不可达的信息(通常也被用来判断主机是否存活,收到端口不可达说明主机一定存活)
  • -sN/sF/sX:指定使用TCP Null/FIN/Xmas scans秘密扫描的方式协助探测对方的TCP端口状态
  • –scanflags:定制TCP包的flags
  • -sI:指定使用僵尸主机的方式扫描目标主机(前提是找到合适的僵尸主机)
  • -sY/sZ:使用SCTP INIT/COOKIE-ECHO扫描SCTP协议端口的开放情况
  • -sO:使用IP协议扫描确定目标主机支持的协议类型
  • -b:使用FTP bounce scan扫描方式

(4):与端口参数和扫描顺序设置相关的参数

  • -p:指定要扫描的端口号或者端口列表
  • -F:Fast mode(快速模式),仅扫描前100个端口
  • -r:不进行端口随机打乱的操作(nmap扫描的端口顺序是以随机的方式进行的,这是为了让nmap的扫描不被对方防火墙检测到)
  • –top-ports:扫描开放端口最高的number个端口
  • -p-:扫描所有端口
  • –port-radio:扫描指定频率以上的端口

(5):与版本侦测相关的参数

  • -sV:扫描开放的端口所对应服务的版本
  • –version-intensity:指定侦测版本的强度(0-9),默认为7,数值越大,探测服务越详细,探测时间也越长
  • –version-light:指定使用轻量级侦测方式(initensity=2)
  • –version-all:指定使用probes侦测方式(initensity=9)
  • –version-trace:显示出详细的版本侦测信息

(6):与操作系统相关的参数

  • -O:扫描目标主机的操作系统

(7):与脚本有关的参数(脚本位于/usr/share/nmap/scripts)

  • –script=来指明脚本进行扫描

三、nmap常用方法

(1):扫描单个主机
在这里插入图片描述

(2):扫描多个目标主机
方法一:
在这里插入图片描述
方法二:
在这里插入图片描述

(3):扫描一个C段网络
在这里插入图片描述
(4):扫描列表中的目标主机的IP
文件内容如下
在这里插入图片描述
扫描结果如下
在这里插入图片描述

(5):只进行主机发现,不进行端口扫描
在这里插入图片描述

(6):进行僵尸扫描
nmap -sI 僵尸主机IP 目标主机IP在这里插入图片描述

(7):对指定端口进行扫描
方法一:指定单个端口
在这里插入图片描述
方法二;指定多个连续的端口
在这里插入图片描述
方法三:扫描多个不连续的端口
在这里插入图片描述

(8):扫描开放端口对应的服务版本
在这里插入图片描述

(9):扫描目标主机对应的操作系统
在这里插入图片描述

(10):使用脚本探测一个主机是否为可用的僵尸主机
在这里插入图片描述
四、masscan
1.为什么引入masscan
首先,为什么会在此引入masscan?这是因为在某些安全服务公司面试时会提问关于nmap和masscan的区别,masscan最大的优点就是扫描速度快。通常是将两者结合起来使用。

2.masscan简介
masscan号称是世界上最快的扫描软件,可以在3分钟内扫描整个互联网上的所有端口。
masscan相比nmap之所以快很多,那是因为masscan采用了异步传输方式,无状态的扫描方式。而nmap需要记录tcp/ip的状态,OS能够处理的TCP/IP连接最多为1500左右。

3.masscan原理
masscan与目标主机不建立完整的TCP连接,扫描者主机先向目标主机发送一个SYN请求连接数据包,目标主机会向扫描者主机回复一个SYN/ACK确认连接数据包,当扫描者主机收到目标主机发送回来的SYN/ACK确认连接数据包之后,扫描者主机向目标主机发送RST结束连接。选项–banners除外(因为要获取banner信息,必须要进行完整的三次握手)。

4.masscan扫描方法
masscan IP地址 -p 端口号
在这里插入图片描述

5.masscan与nmap结合
一般情况下,可以先使用masscan对目标IP(通常是一个网段)进行全端口扫描,然后再使用nmap对存活主机的开放端口进行扫描,找出对应端口的服务存在的漏洞等待,再进行更深一步的渗透测试。使用masscan对目标IP进行扫描的原因就是因为其速度快于nmap。

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值