在登录使用Nessus之前,首先需要启动nessus服务,,否则无法使用Nessus扫描工具,启动的命令如下:

    root@kali:~# service nessusd start

   登录nessus   root@kali:~# nessus_connect admin:admin@127.0.0.1:8834

Metasploit中Nessus所有命令(Nessus使用教程)

直接在Metasploit中扫描Nessus漏洞

对于那些我们选择留在命令行的情况,也可以选择直接从msfconsole连接到Nessus服务器。允许我们执行并导入漏洞扫描,而不是手动导入。

 我们首先加载Nessus Bridge插件。

msf > load nessus
[*] Nessus Bridge for Metasploit
[*] Type nessus_help for a command listing
[*] Successfully loaded plugin: Nessus

 

运行' nessus_help '会显示我们现在可以使用的msfconole命令。正如你所看到的,它功能非常全面。

msf > nessus_help

Command                     Help Text
-------                     ---------
通 用 命 令           
-----------------           -----------------
nessus_connect              连接到Nessus服务器
nessus_logout               从Nessus服务器注销
nessus_login                使用不同的用户名和密码登录连接的Nesssus服务器
nessus_save                 将登录用户的凭证保存到nessus.yml
nessus_help                 可用的nessus命令列表
nessus_server_properties    服务器属性,如提要类型,版本,插件集和服务器UUID。
nessus_server_status        检查您的Nessus服务器的状态
nessus_admin                检查用户是否是管理员
nessus_template_list        列出扫描或策略模板
nessus_folder_list          列出Nessus服务器上的所有已配置文件夹
nessus_scanner_list         列出Nessus服务器上配置的所有扫描仪

Nessus 数 据 库 命 令    
-----------------           -----------------
nessus_db_scan              创建对db_hosts中所有IP地址的扫描
nessus_db_scan_workspace    创建一个给定工作区的db_hosts中所有IP地址的扫描
nessus_db_import            将Nessus扫描导入Metasploit连接的数据库
                            
报 告 命 令            
-----------------           -----------------
nessus_report_hosts         从报告中获取主机列表
nessus_report_vulns         从报告中获取隐藏的列表
nessus_report_host_details  从主机上的报告项获取详细信息
                            
扫 描 命 令               
-----------------           -----------------
nessus_scan_list            所有当前Nessus扫描的列表
nessus_scan_new             创建一个新的Nessus扫描
nessus_scan_launch          启动新创建的扫描。 新扫描需要通过此命令手动启动
nessus_scan_pause           暂停正在运行的Nessus扫描
nessus_scan_pause_all       暂停所有正在运行的Nessus扫描
nessus_scan_stop            停止运行或暂停的Nessus扫描
nessus_scan_stop_all        停止所有正在运行或暂停的Nessus扫描
nessus_scan_resume          继续进行传递的Nessus扫描
nessus_scan_resume_all      恢复所有暂停的Nessus扫描
nessus_scan_details         返回给定扫描的详细信息
nessus_scan_export          以Nessus,HTML,PDF,CSV或DB格式导出扫描结果
nessus_scan_export_status   检查导出的扫描的状态
                            
插 件 命 令            
-----------------           -----------------
nessus_plugin_list          列出特定插件系列中的所有插件。
nessus_family_list          列出所有插件系列以及相应的系列ID和插件数量。
nessus_plugin_details       列出特定插件的详细信息
                            
用 户 命 令               
-----------------           -----------------
nessus_user_list            显示Nessus用户
nessus_user_add             添加一个新的Nessus用户
nessus_user_del             删除一个Nessus用户
nessus_user_passwd          更改Nessus用户密码
                            
策 略 命 令             
-----------------           -----------------
nessus_policy_list          列出所有的策略
nessus_policy_del           删除一项策略

 

在开始之前,我们需要连接到我们网络上的Nessus服务器。请注意,我们需要在连接字符串的末尾添加' ok '以确认可能发生中间人攻击的风险。

sf > nessus_connect dook:s3cr3t@192.168.1.100
[-] 警告:此版本中未验证SSL连接,攻击者可能会使用此连接
[-]          有能力在中间人的Nessus交通中捕捉Nessus
[-]          凭证。 如果您在可信任的网络上运行此操作,请通过'ok'
[-]          作为此命令的附加参数。
msf > nessus_connect dook:s3cr3t@192.168.1.100 ok
[*] Connecting to https://192.168.1.100:8834/ as dook
[*] Authenticated
msf >

 

要查看服务器上可用的扫描策略,我们发出' nessus_policy_list '命令。如果没有可用的策略,这意味着您需要连接到Nessus GUI并创建一个才能使用它。

msf > nessus_policy_list
[+] Nessus Policy List

ID  Name       Owner  visability
--  ----       -----  ----------
1   the_works  dook   private

msf >

 

要使用我们现有的策略运行Nessus扫描,请使用命令“ nessus_scan_new ”,后跟策略ID编号,扫描名称和目标。

msf > nessus_scan_new
[*] Usage:
[*]        nessus_scan_new policy id scan name targets
[*]        use nessus_policy_list to list all available policies
msf > nessus_scan_new 1 pwnage 192.168.1.161
[*] Creating scan from policy number 1, called "pwnage" and scanning 192.168.1.161
[*] Scan started.  uid is 9d337e9b-82c7-89a1-a194-4ef154b82f624de2444e6ad18a1f
msf >

 

要查看扫描的进度,我们运行' nessus_scan_status '。请注意,没有进度指示器,所以我们继续运行该命令,直到看到消息“ No Scans Running ”。

msf > nessus_scan_status
[+] Running Scans

Scan ID                                               Name    Owner  Started            Status   Current Hosts  Total Hosts
-------                                               ----    -----  -------            ------   -------------  -----------
9d337e9b-82c7-89a1-a194-4ef154b82f624de2444e6ad18a1f  pwnage  dook   19:39 Sep 27 2017  running  0              1


[*] You can:
[+]         Import Nessus report to database :     nessus_report_get reportid
[+]         Pause a nessus scan :             nessus_scan_pause scanid
msf > nessus_scan_status
[*] No Scans Running.
[*] You can:
[*]         List of completed scans:         nessus_report_list
[*]         Create a scan:                   nessus_scan_new policy id scan name target(s)

 

当Nessus完成扫描时,它会为我们提供结果报告。要查看可用报告的列表,我们运行' nessus_report_list '命令。要导入报告,我们运行' nessus_report_get ',然后运行报告ID。

msf > nessus_report_list
[+] Nessus Report List

ID                                                    Name    Status     Date
--                                                    ----    ------     ----
9d337e9b-82c7-89a1-a194-4ef154b82f624de2444e6ad18a1f  pwnage  completed  19:47 Sep 27 2010

[*] You can:
[*]         Get a list of hosts from the report:          nessus_report_hosts report id
msf > nessus_report_get
[*] Usage:
[*]        nessus_report_get report id
[*]        use nessus_report_list to list all available reports for importing
msf > nessus_report_get 9d337e9b-82c7-89a1-a194-4ef154b82f624de2444e6ad18a1f
[*] importing 9d337e9b-82c7-89a1-a194-4ef154b82f624de2444e6ad18a1f
msf >

 

通过导入报告,我们可以像手动导入报告时那样列出主机和漏洞。

msf > hosts -c address,vulns

Hosts
=====

address        vulns
-------        -----
192.168.1.161  33

msf > vulns
[*] Time: 2017-09-28 01:51:37 UTC Vuln: host=192.168.1.161 port=3389 proto=tcp name=NSS-10940 refs=
[*] Time: 2017-09-28 01:51:37 UTC Vuln: host=192.168.1.161 port=1900 proto=udp name=NSS-35713 refs=
[*] Time: 2017-09-28 01:51:37 UTC Vuln: host=192.168.1.161 port=1030 proto=tcp name=NSS-22319 refs=
[*] Time: 2017-09-28 01:51:37 UTC Vuln: host=192.168.1.161 port=445 proto=tcp name=NSS-10396 refs=
[*] Time: 2017-09-28 01:51:38 UTC Vuln: host=192.168.1.161 port=445 proto=tcp name=NSS-10860 refs=CVE-2000-1200,BID-959,OSVDB-714
[*] Time: 2017-09-28 01:51:38 UTC Vuln: host=192.168.1.161 port=445 proto=tcp name=NSS-10859 refs=CVE-2000-1200,BID-959,OSVDB-715
[*] Time: 2017-09-28 01:51:39 UTC Vuln: host=192.168.1.161 port=445 proto=tcp name=NSS-18502 refs=CVE-2005-1206,BID-13942,IAVA-2005-t-0019
[*] Time: 2017-09-28 01:51:40 UTC Vuln: host=192.168.1.161 port=445 proto=tcp name=NSS-20928 refs=CVE-2006-0013,BID-16636,OSVDB-23134
[*] Time: 2017-09-28 01:51:41 UTC Vuln: host=192.168.1.161 port=445 proto=tcp name=NSS-35362 refs=CVE-2008-4834,BID-31179,OSVDB-48153
[*] Time: 2017-09-28 01:51:41 UTC Vuln: host=192.168.1.161
...略...

您现在应该了解如何手动导入Nessus扫描结果以及直接在Metasploit框架内使用Nessus Bridge插件来扫描漏洞。