Metasploit结构分析
概述
Metasploit 是一种渗透测试框架软件,用于漏洞研究与渗透代码开发,内部集成多种安全技术,例如:Nmap、Nessus 等,是安全技术集成开发与应用环境。
体系框架
基础库文件:
1、Rex(Ruby Extension)
整个 Metasploit 框架所依赖的基础组件,为开发者进行框架和模块开发提供支持,例如包装的网络套接口字、网络应用协议客户端与服务端实现、日志子系统、渗透攻击支持例程、PostgreSQL及MySQL数据库支持。
2、Framework-core
负责所有上层模块及插件的交互接口。
3、Framework-base
支持用户接口与功能程序调用框架本身功能及框架集成模块。
模块:
Metasploit 框架对外提供的最核心的渗透功能实现代码。
插件:
用于集成外部的安全攻击,例如Nessus、OpenVAS、Nmap等。
接口:
进入 Metasploit 的方式,例如 msfconsole 控制终端、msfcli 命令行、msfgui 图形化界面、armitage 图形化界面、msfapi 远程调用接口。
功能程序:
提供一系列可直接运行的功能程序,支持渗透者利用 Metasploit 内部能力完成特定的任务。