前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nmap小技巧

Nmap小技巧

作者头像
T1Am0
发布2022-09-13 15:28:16
5320
发布2022-09-13 15:28:16
举报
文章被收录于专栏:折腾小记

0x00 Nmap列举远程机器开放的端口原理

首先判断nmap输入的命令中是否包含域名,如果包含需要利用DNS服务器进行域名解析,然后发送ICMP Echo Request来探测主机的存活性。若目标主机存活,nmap则向目标发送数据包,然后目标主机会做出回应,回包给nmap,nmap就根据返回的数据包来得到机器信息,其中就包含端口信息。

可以使用【nmap domain_name】来探测
  • nmap在探测之前把域名通过DNS服务器解析为IP地址,也可以用执行的DNS服务器进行解析。使用 --dns-server参数来指定
  • 对于已知主机存活或者防火墙开启的机器,可以使用-Pn参数来停止探测之前的ICMP请求。以达到不触发防火墙安全机制。
  • 对于默认的端口范围,不能满足日常需要。可以使用-p m-n来指定探测端口范围之间的所有端口
端口状态:
  • Open 表示端口处于开放状态
  • Closed 关闭
  • Filterd 表示端口处于过滤无法收到返回的probe状态
  • UnFilterd 表示端口收到返回的probe,但是无法确认
  • Opened/UnFilterd 表示端口处于开放或者是过滤状态
  • Closed/UnFilterd 表示端口处于关闭或者是未过滤状态

0x01 Nmap发现局域网中存活主机

主机发现
  • ping ip 手工探测,但是很费劲
  • CIDR(无类别域间路由),可以快速表示一个网络

172.16.1.1/24 = 172.16.1.1~172.16.1.255 表示该域下所有主机IP地址

  • nmap -sP CIDR 对该网络所有的主机进行Ping扫描,以探测主机存活性。扫描过程中使用了TCP、SYN扫描ICMP echo Request来探测主机存活
  • nmap -sn CIDR 对网络中所有主机进行Ping扫描,探测主机的存活性
  • nmap -sn CIDR -oX file_name.xml 将探测结果保存到xml文件中

0x02 Nmap识别目标机器上服务的指纹

服务指纹

为了确保有一个成功的滲透测试或网络设备监控,必须知道目标系统中服务的指纹信息。服务指纹信息包括服务端口、服务名和版本等。

通过分析目标往Nmap发送的数据包中某些协议标记、选项和数据,我们可以推断发送这些数据包的操作系统等。

nmap通过向目标主机发送多个UDP与TCP数据包冰分析其响应来进行操作系统指纹识别工作。

使用命令nmap -sV IP来识别目标机器的服务信息

Nmap的倾略性探测

  • nmap -A -v -T4 IP
  • nmap -sC -sV -O IP

以上两条命令都是使用Nmap来探测目标机器的操作系统、服务等信息。其中-sC表示使用Nmap脚本探测,-sV表示探测目标服务器上的服务信息,-O表示探测目标服务器的操作系统信息。

Tips:-sC:equivalent to -script=default

0x03 Nmap的NSE脚本使用

NSE脚本介绍

NSE(Nmap Script Engine)Nmap脚本引擎,内置很多可以用来扫描的、针对特定任务的脚本。通过NSE可以不断拓展Nmap扫描策略,加强Nmap的功能。

Nmap中使用--script参数来指定调用的脚本,并且脚本存储在Nmap安装路径下的script文件夹下,对于kali linux存储在/usr/share/nmap/script/下。

NSE使用
  • nmap --script script_name IP 使用Nmap探测Web服务的title信息
  • nmap --script http-headers IP 使用Nmap探测http服务的http头
NSE分类使用

对于目标使用多个分类脚本进行探测,可以更快的找到目标的信息与弱点。

  • 使用Nmap中漏洞分类脚本对目标进行探测,使用命令如下:

nmap -sV --script vuln IP

  • 使用Nmap中发现和版本信息分类进行探测,使用命令如下:

nmap -sV --script="version, discovery" IP

  • 使用Nmap除了exploit分类之外的其它分类进行探测,使用命令如下:

nmap -sV --script="not exploit" IP

  • 使用Nmap中http*的脚本,但是除了(http-brute和http-slowlors),使用命令如下:

nmap -sV --script "(http*) and not (http-slowlors and http-brute)" IP

0x04 Nmap端口探测小技巧

  • nmap -p port_number ip 对某个端口进行探测
  • nmap -p port_number1,port_number2... IP 对某几个端口进行探测
  • nmap -p1-100 ip 对某个范围端口进行探测
  • nmap -p- ip 全端口探测
  • nmap -p T:25,U:53 IP 指定协议来探测端口
  • nmap -p smtp IP 通过协议名来扫描端口
  • nmap -p s* ip 通过名称范围扫描
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-06-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 Nmap列举远程机器开放的端口原理
    • 可以使用【nmap domain_name】来探测
      • 端口状态:
      • 0x01 Nmap发现局域网中存活主机
        • 主机发现
        • 0x02 Nmap识别目标机器上服务的指纹
          • 服务指纹
          • 0x03 Nmap的NSE脚本使用
            • NSE脚本介绍
              • NSE使用
                • NSE分类使用
                • 0x04 Nmap端口探测小技巧
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档