metasploit之扫描器

本文介绍如何在Metasploit中连接数据库并利用其内置工具进行高效渗透测试。包括数据库连接步骤、使用Nmap及Metasploit扫描器进行端口扫描的方法,以及如何保存扫描结果供后续分析。

启动metasploit
在这里插入图片描述
很多时候我们使用metasploit,都是直接看到攻击之后显示结果就算结束了。可是,在一些情况下,我们需要保存攻击的记录,扫描的结果以便于后续的经验总结、情况分析、渗透测试报告撰写等,这时候我们我们在启动metasploit的时候就必须连接数据库了。
所以本次实验我们先来看看metasploit是如何和数据库连接的。
首先我们需要分别启动postgresql和metasploit。
Metasploit前面启动了。现在我们启动postgresql
在这里插入图片描述
接着登录
在这里插入图片描述
然后创建一个用户
在这里插入图片描述
用户名为msf123,密码为msf123
然后创建一个数据库
在这里插入图片描述
接着\q退出就可以了
在这里插入图片描述
连接数据库(我用的是我之前创建的用户msf111,msf123是一样方式创建的)
在这里插入图片描述
Dbconnect后面的格式是这样的:
用户名:密码@127.0.0.1(本机)/数据库名。
出现connected说明连接成功了
使用nmap进行扫描,并且把扫描结果保存在result_1中
由于时间关系,我们仅扫描这次实验的靶机
在这里插入图片描述
扫描完毕
在这里插入图片描述
我们从上图可以看到靶机开放了3389端口

其实除了nmap之外,metasploit还有很多扫描器可以使用
我们先来搜索下可用的端口扫描器

在这里插入图片描述
之前我们nmap用的是syn扫描,因此这里我们用Metapliot的扫描器也进行相同的扫描,通过eth0接口查找3389
在这里插入图片描述
看看需要设置哪些选项
在这里插入图片描述
将接口设置为eth0
在这里插入图片描述
端口设置为3389(我们这是为了验证扫描器的功能,直接使用nmap之前扫描的结果)
Rhosts就直接设置为靶机的ip
在这里插入图片描述
开始攻击
在这里插入图片描述
很快结果就出来了
很多情况下,我们为了下一步高效的攻击,必须要明确靶机的操作系统,这通常会用到SMB的版本扫描,metasploit中就有相应的扫描器
在这里插入图片描述
为了缩短扫描时间,我们可以增加线程数
在这里插入图片描述
从上图的执行结果中可以看出
我们的靶机被扫描到了,结果不会直接显示,而是保存在数据库里,前面的实验我们已经连接到了数据库,所以此时直接输入hosts查看就可以了
在这里插入图片描述
可以看到,判断出了我们的靶机是windows

<think>嗯,用户现在明确想了解如何使用Metasploit Framework进行漏洞扫描。之前我推荐过Kali中的多种扫描工具,但用户特别引用了三段关于Metasploit的资料,说明ta需要深度聚焦这个工具。 用户可能是个刚接触渗透测试的新手——因为ta跳过了基础工具直接问Metasploit这种集成框架,但引用中特意提到“本文只介绍它的漏洞扫描功能”,又表明ta暂时不需要利用模块。需要特别注意把扫描和攻击步骤区分清楚,避免误导。 从技术角度看,Metasploit的扫描能力其实由三部分组成:端口探测模块(如TCP扫描)、服务识别模块(如FTP版本检测)、专用漏洞扫描模块(如SMB漏洞检测)。回复时要像剥洋葱一样分层说明: 第一层先讲最基础的端口扫描,用auxiliary/scanner/portscan/tcp这种模块演示,这是任何扫描的起点。第二层过渡到服务扫描,比如用smb_version模块展示如何获取Windows系统信息。第三层才是真正的漏洞验证,比如永恒之蓝扫描模块,这里要强调“验证”和“攻击”的区别——扫描模块只确认漏洞存在而不实际利用。 特别要注意安全警示,用户如果直接复制msfconsole命令可能会无意中扫描到他人系统。考虑在注意事项里用⚠️图标强调授权问题,并补充法律提示。 用户引用的资料[3]提到Metasploit发展史很有意思,但和实操无关,决定不纳入正文。不过可以在回复末尾的“相关学习”里提一句“了解历史发展有助于理解模块设计哲学”作为延伸阅读建议。 最后结构化呈现:控制台操作必须用等宽字体区分命令和输出,漏洞名称要加粗(如**MS17-010**),重要参数用`db_nmap -sV`这样的代码块标记。用户上次对表格反馈不错,这次在模块汇总部分继续用表格对比扫描类型。</think>以下是使用 Metasploit Framework 进行漏洞扫描的详细操作指南,结合其核心模块和扫描逻辑: --- ### 🔍 一、Metasploit 漏洞扫描流程 #### 步骤 1:启动与初始化 ```bash sudo msfconsole # 启动控制台 db_status # 检查数据库连接 workspace -a scan_lab # 创建扫描工作区 ``` #### 步骤 2:基础网络扫描(Nmap 集成) ```bash db_nmap -sV -O 192.168.1.0/24 # 扫描网段并自动保存结果[^2] services -u -p 445 -R # 列出所有开放445端口的设备 ``` #### 步骤 3:使用专用扫描模块 **案例:扫描 SMB 漏洞 (MS17-010)** ```bash search type:auxiliary name:smb # 搜索SMB相关模块 use auxiliary/scanner/smb/smb_ms17_010 set RHOSTS 192.168.1.100-200 # 设置目标范围 set THREADS 10 # 并发线程数 run ``` ▶️ **输出关键信息**: ``` [+] 192.168.1.105:445 - Host is likely VULNERABLE to MS17-010! [-] 192.168.1.110:445 - Host does NOT appear vulnerable. ``` #### 步骤 4:Web 漏洞扫描 **扫描 HTTP 服务漏洞**: ```bash use auxiliary/scanner/http/http_version set RHOSTS 192.168.1.50 run ``` ▶️ 检测服务器版本并匹配已知漏洞库[^1] --- ### ⚙️ 二、核心扫描模块分类 | 模块类型 | 路径示例 | 功能说明 | |---------------------------|-----------------------------------|------------------------------| | **端口扫描** | `auxiliary/scanner/portscan/tcp` | 快速端口探测 | | **服务漏洞** | `auxiliary/scanner/smb/smb_login`| SMB弱密码爆破 | | **Web应用扫描** | `auxiliary/scanner/http/title` | 提取网站标题识别CMS | | **协议漏洞** | `auxiliary/scanner/ssh/ssh_login`| SSH身份验证测试 | | **漏洞验证** | `auxiliary/scanner/http/tomcat_mgr_login` | Tomcat后台登录检测 | --- ### 📊 三、扫描结果管理与分析 ```bash hosts -c address,os_name # 查看识别出的主机和操作系统 vulns # 列出所有检测到的漏洞 creds # 查看爆破获得的凭证 report -f pdf -o scan.pdf # 生成PDF报告 ``` --- ### ⚠️ 注意事项 1. **合法授权**:扫描前必须获得书面授权 2. **精准定位**:使用 `setg RHOSTS` 全局设置目标范围 3. **资源控制**:`set THREADS 5` 避免触发目标防御机制 4. **结果验证**:扫描结果需人工复核(误报率约10-15%)[^2] --- ### 🔄 自动化扫描示例 ```ruby # 保存为 auto_scan.rc 后执行 msfconsole -r auto_scan.rc workspace -a AutoScan db_nmap -sS -Pn 10.0.0.0/24 use auxiliary/scanner/http/apache_userdir_enum set RHOSTS file:/tmp/targets.txt run vulns -p 80 --format json > web_vulns.json ``` --- ### 📚 深入学习建议 1. **模块开发**:学习 Ruby 编写自定义扫描模块(`/usr/share/metasploit-framework/modules/auxiliary/scanner`) 2. **集成扩展**:结合 OpenVAS 扫描器(`load openvas` 命令) 3. **规避检测**:使用 `auxiliary/fuzzers` 进行低特征扫描 > 💡 **最佳实践**:先通过 `db_nmap` 快速定位开放服务,再用专用模块精准扫描高危漏洞[^1]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值