直接在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插件来扫描漏洞。