Nmap的漏洞漏洞扫描功能能够迅速识别目标系统中的漏洞, 通过Nmap脚本引擎(NSE)的强大功能, 它可以扩展成一个强大的漏洞扫描器, 帮助我们列举目标系统中的最新漏洞 。通常在渗透测试过程中,扫描 漏洞扫描是一个关键步骤, 而Nmap也是大部分渗透测试人员依赖的工具, 在本文中, 我们将一起学习使用Nmap进行漏洞扫描,迅速发现目标机器的安全漏洞。 Nmap是模式一款强大的网络扫描工具, 旨在查找连接到网络的设备上开放的端口和正在运行的服务。香港云服务器该工具免费且开源,原理 并且被渗透测试人员广泛使用, 用于对目标网络执行安全审计, 在Kali Linux上默认安装了Nmap 。 要执行Nmap扫描,及实解 使用命令nmap <目标>
。该命令执行默认的战讲Nmap扫描, 查询前1000个端口以确定哪些是开放的。 上图中的漏洞Nmap扫描的输出显示如下内容: 序号1: Nmap命令运行的是
:nmap 10.0.100.5 。 序号2: 命令运行的扫描日期和时间
。 序号3: 连接到目标系统时的模式网络延迟 。 序号4: 显示开放端口的源码库原理报告
。 序号5: 完成扫描所花费的及实解时间 。 我们可以通过添加扫描选项以更改Nmap的战讲扫描行为, 命令为: nmap <选项> <目标> 例如:使用-sV标志执行服务扫描, 以显示每个开放端口上运行的具体服务, 该步骤是漏洞查找过程的重要一步
。 如果要更改扫描的漏洞执行方式, 可以使用下面的任意选项: 具体的模板下载选项内容可以参考我的另一篇文章:<<xxx>> Nmap通常用来执行扫描端口任务, 但也可以作为漏洞扫描器使用。利用Nmap脚本引擎(NSE)可以通过网络发现目标系统漏洞,NSE允许创建和执行定制脚本, 扩展Nmap功能 。 通过下面三个强大的Nmap脚本选项, 可以将Nmap变成一个全面的漏洞扫描工具: 以下是三种漏洞扫描选项的比较: Vuln Vulners Vulscan 执行 Nmap 漏洞类别中的多个 NSE 脚本 执行从在线数据库中提取的单个脚本 执行从离线数据库中提取的单个脚本 使用Nmap的内置脚本扫描漏洞 使用 vulners.com 在线数据库扫描漏洞 使用多个离线数据库扫描漏洞 如果不创建自己的脚本并将其添加到vuln目录 ,则无法更新 Nmap 扫描的漏洞 要扫描的漏洞会定期自动更新 要扫描的漏洞必须通过update.sh在vulscan目录中运行命令来手动更新 扫描最常见的漏洞 扫描最新的高防服务器漏洞 扫描各种漏洞 主要优点:内置于 Nmap 主要优点:快速、准确 主要优点:离线执行全面的漏洞扫描 下面将通过这三种模式分别执行漏洞扫描过程 。 Nmap 的漏洞扫描将针对目标运行该工具的默认漏洞扫描脚本。这些对于查找可利用的常见漏洞非常有用。要运行漏洞扫描,使用以下命令语法: 上图中输出显示以下内容
: 序号1: 用于运行漏洞扫描的命令行
。接下来是默认的 Nmap 报告标头
。 序号2: 文件传输协议 (FTP) 服务正在目标计算机的端口 21 上运行。云计算所使用的特定服务是vsFTPd 版本 2.3.4,该服务容易受到CVE-2011-2523 的攻击。Nmap 甚至提供了一些参考资料和一个可用于利用该漏洞的 Metasploit 模块。 序号3: 简单邮件传输协议 (SMTP) 服务在端口 25 上运行。此服务容易受到CVE-2014-3566的攻击 。Nmap 再次提供了此漏洞的参考。 从该输出中
,可以通过攻击正在运行的 FTP 或 SMTP 服务来开始利用该目标计算机。可以使用 Nmap 参考作为利用这些漏洞的起点。 vulners漏洞扫描能够使用在线数据库vulners.com扫描目标是否有最新的漏洞。要执行此扫描,使用以下命令语法: 上图中返回的输出显示以下内容: 序号1: 用于运行漏洞扫描的命令行。 序号2: Secure Shell (SSH) 服务正在目标计算机的端口 22 上运行。使用的特定服务是OpenSSH 版本 4.7p1 Debian 8ubuntu1,该服务容易受到多个 CVE 的攻击。漏洞脚本提供对每个 CVE 或其他漏洞 ID 的引用 。 序号3: 漏洞 ID 旁边的标志*EXPLOIT*表示该漏洞是可利用的,应该能够手动利用它或在线查找利用代码
。 序号4: 域名服务 (DNS) 服务正在端口 53 上运行。运行的特定服务版本是ISC BIND 9.4.2 ,该版本容易受到一系列漏洞的影响。同样
,漏洞脚本为每个漏洞提供了参考,并提供了该漏洞是否可利用该*EXPLOIT*标志进行利用的参考 。 此输出表明应该尝试利用目标计算机上运行的 SSH 和 DNS 服务。如果选择以 SSH 为目标,则应在vulners.com上查找SSV:60656,因为此漏洞 ID 与漏洞利用相关 。同时
,如果试利用 DNS
,可以使用SSV:60184的链接或其旁边的任何其他链接。*EXPLOIT 默认情况下,Nmap 的 vulscan 选项不随该工具一起提供。相反,需要从https://github.com/scipag/vulscan下载漏洞扫描脚本。可以通过使用 git clone 命令将 vulscan 脚本下载到 Nmap 脚本目录来完成此操作。 接下来,使用 Linux命令在文件和 Nmap vulscan 脚本ln之间创建符号链接。scipag_vulscan这将允许使用vulscanNmap 命令行上的选项。 每当添加新的 NSE 脚本以在 Nmap 中使用时,需要运行 nmap 命令--script-updatedb来更新 Nmap 的数据库以识别新脚本。然而
, 默认情况下,Nmap 中不包含 vulscan 脚本,这意味着无法使用该命令对其进行更新
。相反 ,需要使用update.sh之前克隆的 GitHub 存储库附带的脚本来更新 Nmap 的数据库和 vulscan 从中提取的漏洞数据库。运行以下命令 : 将 vulscan 脚本添加到 Nmap 的数据库后,可以使用以下语法来运行 vulscan 漏洞扫描 : 上图扫描返回的输出显示以下内容: 序号1: 用于运行漏洞扫描的命令行 序号2: FTP 服务正在目标计算机的端口 21 上运行,具体来说是vsFTPd 版本 2.3.4 序号3: VulDB 漏洞数据库中没有与此版本的 FTP 匹配的结果 序号4: MITRE CVE 漏洞数据库中的一个 CVE 与此版本的 FTP ( CVE-2011-0762 ) 匹配 vulscan 输出继续显示 ,此版本 FTP 的 Security Focus (5) 、IBM X-Force (6) 和 Exploit-DB (7) 漏洞数据库中存在多个匹配的漏洞。详细的漏洞信息可以从这里获取: https://www.exploit-db.com 下面来总结一下上面三个Nmap漏洞扫描选项的结果: 总的来说 ,在大多数情况下可以跳过 vuln漏洞扫描, 扫描速度慢且漏洞也比较过时。相反,应该重点使用 Nmap vulners和 Nmap vulscan 选项 。如果想要提供简洁输出的快速扫描,则使用vulners扫描。如果想要对目标系统进行全面的漏洞扫描
,利用多个漏洞数据库来查找潜在的安全漏洞,则使用vulcan选项。1.摘要
2.扫描基础知识
图片
图片3.三种类型的漏洞扫描
4.Vuln漏洞扫描
图片5.Vulners漏洞扫描
图片6.Vulscan漏洞扫描
图片
图片
图片
图片7.结果比较