zoukankan      html  css  js  c++  java
  • Nmap简单的漏扫

    转载至

    https://www.4hou.com/technology/10481.html

     

    导语:Nmap本身内置有丰富的NSE脚本,可以非常方便的利用起来,当然也可以使用定制化的脚本完成个人的需求。本文将讲述如何利用Nmap的Scripts检测CVE漏洞。

    Nmap是一款应用最广泛的安全扫描工具,备受渗透人员和黑客的青睐,在对目标服务器进行扫描的时候,能够快速识别潜在的漏洞。NSE(Nmap Scripting Engine)作为Nmap的一部分,具有强大灵活的特性,允许使用者编写自己的脚本来完成各种各样的网络扫描任务。Nmap本身内置有丰富的NSE脚本,可以非常方便的利用起来,当然也可以使用定制化的脚本完成个人的需求。今天就要讲讲如何利用Nmap的Scripts检测CVE漏洞。

    Nmap有一个少为人知的部分是NSE脚本引擎,NSE是Nmap的最强大和灵活的功能之一。它允许用户编写(并共享)简单的脚本来自动执行各种网络任务。Nmap内置了全面的NSE脚本集合,用户可以轻松使用这些Nse脚本或者创建自定义Nse脚本以满足他们的个性化需求。

    使用NSE脚本更快地查找更多漏洞

    在这里,我将一次演示两个NSE脚本,nmap-vulnersvulscan。这两种脚本的设计都是为了增强Nmap的版本检测,为特定服务(如SSH,RDP,SMB等)生成相关的CVE信息。CVE或通用漏洞披露是安全研究人员使用的一种方法,它利用数据库对单个漏洞进行编目和引用。

    例如,漏洞利用数据库是公开披露的漏洞的流行数据库。Exploit-DB使用CVE编制与特定版本的服务(如“SSH v7.2”)相关的单个漏洞和漏洞。以下是Exploit-DB的屏幕截图…请注意分配给此特定SSH漏洞的CVE编号。

    Nmap用法详解,分分钟找到漏洞

    nmap-vulners和vulscan都可以使用CVE记录来增强Nmap的版本检测。Nmap将识别已扫描服务的版本信息。NSE脚本将获取这些信息并生成可用于利用该服务的已知CVE。这使查找漏洞变得更简单。

    下面是不使用NSE脚本的Nmap版本检测示例。Nmap使用版本“OpenSSH 4.3”在端口22上发现了一个SSH服务。

    Nmap用法详解,分分钟找到漏洞

    使用NSE脚本的服务器的例子。我们可以看到现在有更多的信息输出。

    Nmap用法详解,分分钟找到漏洞

    nmap-vulners NSE脚本(以红色突出显示)报告了过去几年中披露的十几个CVE。nmap-vulners CVEs按严重性组织,“9.3”开始最严重,位于列表顶部,因此值得深入研究。vulscan NSE脚本(以蓝色突出显示)还报告了十多个与OpenSSH v4.3相关的有趣漏洞。

    这两个NSE脚本在显示与易受攻击的服务相关的有用信息方面做得非常出色。每次我们使用NSE脚本时,Nmap-vulners都会查询Vulners exploit数据库。另一方面,Vulscan会在我们的计算机上查询当我们第一次下载vulscan时预先配置的本地数据库。

    现在,在上面的屏幕截图中有很多内容,所以让我们先来学习如何在使用它们之前安装这些NSE脚本。

    安装NSE脚本

    步骤1 安装Nmap-Vulners

    要安装nmap-vulners脚本,我们首先使用cd切换到Nmap脚本目录

    cd /usr/share/nmap/scripts/

    然后,通过在终端中输入以下命令来克隆nmap-vulners GitHub存储库。

    git clone https://github.com/vulnersCom/nmap-vulners.git

    nmap-vulners安装后不需要配置

    Nmap用法详解,分分钟找到漏洞

    第2步 安装Vulscan

    要安装vulscan,我们还需要将GitHub存储库克隆到Nmap脚本目录中。键入下面的命令来执行此操作。

    git clone https://github.com/scipag/vulscan.git

    如前所述,vulscan利用本地存储在我们计算机上的预配置数据库。我们可以在vulscan目录的根目录中查看这些数据库。运行以下命令列出可用的数据库。

    ls vulscan/*.csv

    Nmap用法详解,分分钟找到漏洞

    Vulscan支持许多优秀的漏洞数据库。这是一个完整的列表:

    · scipvuldb.csv

    · cve.csv

    · osvdb.csv

    · securityfocus.csv

    · securitytracker.csv

    · xforce.csv

    · expliotdb.csv

    · openvas.csv

    为确保数据库完全保持最新,我们可以使用vulscan /utilities/updater/目录中的updateFiles.sh脚本。通过在终端中输入以下命令更改到更新程序目录。

    cd vulscan/utilities/updater/

    然后,使用下面的命令确保该文件具有在计算机上执行的适当权限。

    chmod+x updateFiles.sh

    然后,我们可以通过在我们的终端中输入以下命令来执行和运行脚本。

    ./updateFiles.sh

    Nmap用法详解,分分钟找到漏洞

    步骤3 使用Nmap-Vulners进行扫描

    使用NSE脚本很简单。我们所要做的就是将–script参数添加到我们的Nmap命令中,并告诉Nmap使用哪个NSE脚本。要使用nmap-vulners脚本,我们将使用下面的命令。

    nmap --script nmap-vulners -sV <目标IP>

    该-sV是绝对必要的。使用-sV,我们告诉Nmap探测版本信息的目标地址。如果Nmap不生成版本信息,nmap-vulners将不会有任何数据来查询Vulners数据库。使用这些NSE脚本时始终使用-sV。

    Nmap用法详解,分分钟找到漏洞

    步骤4使用Vulscan进行扫描

    我们可以像nmap-vulners一样使用vulscan NSE脚本:

    nmap --script vulscan -sV <目标IP>

    Nmap用法详解,分分钟找到漏洞

    默认情况下,vulscan会一次查询所有前面提到的数据库!正如我们在上面的图片中看到的那样,消化的信息量非常大。这比我们需要的信息要多得多。我强烈建议一次只查询一个数据库。我们可以通过将vulscandb参数添加到我们的Nmap命令并指定数据库来实现此目的,如下面的示例所示。

    nmap --script vulscan --script-args vulscandb = database_name -sV <目标IP>
    nmap --script vulscan --script-args vulscandb = scipvuldb.csv -sV <目标IP>
    nmap --script vulscan --script-args vulscandb = exploitdb.csv -sV <目标IP>
    nmap --script vulscan --script-args vulscandb = securitytracker.csv -sV <目标IP>

    Nmap用法详解,分分钟找到漏洞

    第5步 合并为一个命令

    NSE脚本作为安全扫描器显着提高了Nmap的多功能性,范围。为了充分利用Nmap的版本扫描,我们可以在一个命令中使用nmap-vulners和vulscan。要执行此操作,请在终端中输入以下命令。

    nmap --script nmap-vulners,vulscan --script-args vulscandb = scipvuldb.csv -sV <目标IP>

    Nmap用法详解,分分钟找到漏洞

  • 相关阅读:
    让UILabel的大小自适应字符串长度
    Cocos2dx中的分辨率学习
    关键帧动画-五角星动画-在层上画出五角星
    .net WINFORM 界面怎么做凹凸效果的分割线?就是横线
    游标Cursor 使用小例 (SQLServer)
    winform屏蔽Alt+F4组合键以防止用户关闭对话框
    SQL Server 2005 数据类型和.Net数据类型的对应关系
    php $GLOBALS 超全局变量的理解
    我改行了
    PHP $_FILES详解
  • 原文地址:https://www.cnblogs.com/-zhong/p/11058853.html
Copyright © 2011-2022 走看看