网盾科技IT教育,只培训技术精英
全国免费咨询电话: 15827351614
Nmap简介(一)漏洞探测

所以对于信息收集,扫面是第一个部分。在扫面阶段,Nmap对于发现开放端口,协议号,操作系统信息,防火墙信息等是一个非常有用的工具。

Nmap 介绍

Nmap (网络映射器)是一个开源工具,它使网络探测和安全审计得以专业化。最初由 Gordon “Fyodor” Lyon 发布。官网官方网站是http://nmap.org. Nmap是一个免费的用来实现网络探测和安全审计的开源程序。许多系统和网络管理员发现它对于一些日常的工作也有帮助。例如查看整个网络的信息,管理服务升级计划以及监控主机和服务的正常运行。

Nmap采用一种新颖的方式利用原始IP包来决定网络上是什么样的主机,这些主机提供什么样的服务(应用程序名和版本),它们运行着什么样的操作系统(操作系统版本)它们使用什么类型的过滤器/防火墙以及许多其他的特征。它虽然被设计用来快速扫描大型网络,但是在单个主机上也会工作的非常好。Nmap可以运行在所有的主流计算机操作系统上,Linux,Windows,Mac OS X都可以找到官方的安装包。

安装Nmap

Nmap 对于不同的环境有着非常好的支持。

Windows: 从官方网站安装 http://nmap.org。windows上的所有图形用户界面和命令行都可以从官网上找到。Nmap的图形用户界面采用的是Zenmap。

Linux (Ubuntu and Debian): 在Linux终端上运行如下命令:apt-get install nmap

如下的图片中,我已经安装好了Nmap。

Nmap简介(一)漏洞探测

基于Red Hat 和 Fedora 的系统: yum install nmap

基于Gentoo Linux 的系统: emerge nmap

接下来,我所有的操作将会用Linux终端来演示:

Nmap脚本引擎

Nmap脚本引擎 (NSE) 是Nmap最有力灵活的的一个特性。它允许用户撰写和分享一些简单的脚本来一些较大的网络进行扫描任务。基本上这些脚本是用Lua编程语言来完成的。通常Nmap的脚本引擎可以完成很多事情,下面是其中的一部分:

网络探测

这是Nmap的基础功能。例如查询目标域名的WhoIs数据,查询目标IP的ARIN, RIPE, 或者 APNIC 来确定所有者,对开放端口执行鉴别查询,SNMP 查询以及列出可用的NFS/SMB/RPC 分享和服务。

漏洞检测

当一个新的漏洞被发现,你会想要在坏家伙行动之前快速扫描你的网络来识别含有漏洞的系统。因为Nmap不是一个专业的漏洞扫描器,而NSE用来处理这种需求的漏洞检查是足够的。现在已经有很多漏洞检测脚本可用,并且他们计划发布更多。

许多攻击者和一些自动化的蠕虫留下一些后门使得攻击者之后能重入。他们中的等一些可用被Nmap的正则表达式版本检测到。

漏洞利用

作为一个通用的脚本语言,可以使用NSE来执行漏洞利用而不仅仅局限于发现漏洞。这种添加自定义漏洞利用脚本的功能对于一些人(尤指渗透测试者)是很有价值的,尽管他们不打算将Nmap变成一个像Metasploit一样的漏洞利用框架。

正如下面你将会看到的,我已经使用了(-sc)选项(或者-script),它是一个扫描目标网络的默认脚本。你可以看到我们得到了ssh,rpcbind,netbios-sn,但是端口是过滤的或者关闭的,所以我们可以说这里可能有一个防火墙来封堵我们的请求。稍后我们将会讨论怎么识别防火墙并尝试绕过它们。

Nmap简介(一)漏洞探测

现在我已经用探测模式运行了一个ping扫描脚本,它将会尝试所有可能扫描的方法,这样我们将会得到更多的有用的信息。

Nmap简介(一)漏洞探测

正如你在图片中看到的,它将会尝试按照脚本规则的所有可能的办法。在下一张途中可以看到更多信息。

你能看到有趣的协议和端口么?你可以看到dns-bruteforce发现了一个包含一些博客,内容管理系统,sql,记录,邮件以及许多其他信息的主机。所以我们可以执行sql注入,这个博客可能是WordPress,Joomal等等。我们可以利用一些已知的CMS漏洞执行攻击,很明显这些方法将会是一个黑盒测试。