欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Nmap之___列举远程机器开发的端口

程序员文章站 2022-06-29 18:34:43
...

Nmap列举远程机器开发的端口原理
Nmap扫描原理示意图:
Nmap之___列举远程机器开发的端口
Nmap列举远程机器开放的端口
使用

namp scanme.nmap.org

来列举该站点的端口信息,一下给出zenamp下扫描结果,也可以是使用命令行下的nmap来探测。
使用图形化界面进行扫描:
Nmap之___列举远程机器开发的端口
通过命令行进行扫描:
Nmap之___列举远程机器开发的端口

nmap进行探测之前要把域名通过DNS服务其解析为IP地址,我们也可以使用指定的DNS服务器进行解析。使用 --dns-servers参数来指定。
下面这个就是通过DNS服务解析得到的IP地址;(图形化界面)
Nmap之___列举远程机器开发的端口
通过命令行去ping,发现IP地址和Nmap解析出来是一样的
Nmap之___列举远程机器开发的端口

指定DNS服务器进行解析扫描:(这里使用谷歌的DNS8.8.8.8)
图形化界面:
Nmap之___列举远程机器开发的端口

命令行:
Nmap之___列举远程机器开发的端口
发现使用命令行去扫描会更快,原因是命令行占用的系统资源会相对比较少,他直接输出到标准输出流,而不用经过nmap进行渲染。
为什么要指定DNS服务器进行探测呢?因为有一些公司内部会加设DNS服务器,并且解析IP地址到该站点,如果不指定的话,可能像google的DNS服务器并不包含该域名,导致该站点无法解析。所以我们使用–dns-servers 来突破这种限制。

对于已经知道主机存活或者防火墙开启的机器,可以使用-Pn参数来停止探测之前的ICMP请求。这样做的目的是为了达到不触发防火墙安全机制。
图形化:
Nmap之___列举远程机器开发的端口
命令行:
Nmap之___列举远程机器开发的端口

对于默认的端口范围,并不能满足日常工作需要。可以使用-n m-n来指定探测端口范围为m-n之间的所有端口。
命令行:
Nmap之___列举远程机器开发的端口

这里有一些知识点:
端口状态:

  • Open 表示端口处于开放状态
  • Closed 表示端口处于关闭状态
  • Filterd 表示端口处于过滤无法收到返回的probe状态
  • Unfilterd 表示端口收到返回的probe,但是无法确认
  • Opend/UnFilterd 表示端口处于开放或者是过滤状态
  • Closed/UnFilterd 表示端口处于关闭或者未过滤状态

Nmap 扫描技术查看
在命令行中,输入nmap -h来查看nmap自带的帮助信息。
运行效果图:
Nmap之___列举远程机器开发的端口

总结:

  1. 掌握了列举远程机器开放端口的方法
  2. 理解Nmap扫描原理:
    首先判断该命令行中是否包含域名,如果包含则进行DNS解析,并得到IP地址,得到IP地址之后还需要进行主机存活验证,发送ICMP,依靠request进行探测;如果该主机不存活则停止扫描;如果该机器存活就进行对应的探测,探测的结果返回到Nmap,Nmap对其进行解析,然后进行对应展示;
    这里有一点需要注意,在命令行模式下的速度是要比在图形化界面的模式下的速度要快的,因为命令行模式是在标准输入输出流的环境下工作的,不用需要渲染,而图形化界面需要渲染,这里会花费事件。
相关标签: 网络安全