一、Metasploit作用
Metasploit是一款开源的渗透测试框架平台, 到目前为止,msf已经内置了数千个已披露的漏洞相关的模块和渗透测试工具,模块使用ruby语言编写,这使得使用者能够根据需要对模块进行适当修改,甚至是调用自己写的测试模块。选定需要使用的攻击模块之后,你只需要使用简单的命令配置一些参数就能完成针对一个漏洞的测试和利用,将渗透的过程自动化、简单化。
主要作用:漏洞验证、漏洞利用、内网渗透等
二、相关术语
Exploit:攻击通过利用msf中的脚本对目标系统实施精准打击或漏洞验证
Payload:攻击载荷 攻击载荷是在渗透攻击成功后促使目标系统运行的一段植入代码
Listener:监听器 生成木马之后发给受害主机,监听反弹木马连入本机
三、Metasploit目录详解
1、Metasploit根目录:
cd usr/share/metasploit-framework
2、Data目录:msf攻击过程中使用到的一些文件,如字典文件等:
cd /usr/share/metasploit-framework/data
wordlists目录:各种字典
expoits目录:dll和可执行文件
3、scripts目录,其中主要包含一些攻击需要用到的脚本
materpreter目录:ruby脚本
ps目录:powershell脚本
resource目录:rc文件
shell目录:ruby脚本
4、tools目录:存放着大量的实用工具
expliot目录:ruby脚本
memdump目录:可执行文件
5、plugins目录:集成了第三方的插件,如sqlmap、nessus等
6、modules目录:
auxiliary 漏洞辅助模块,多用于扫描
encoders 编码器模块,对payloads进行编码
evasion 创建反杀毒软件的木马
exploits 攻击模块,实施精准打击
payloads 漏洞载荷模块,通常作用是为渗透测试者打开在目标系统上的控制会话连接 nops空指令模块,最典型的空指令就是空操作等等
四、Metasploit常用命令
1、命令行启动:msfconsole
2、show exploits:显示所有的攻击模块
3、show auxiliary:显示所有的辅助模块
4、show payloads:显示当前模块可用的攻击载荷
5、show options:显示该模块所需设置的攻击参数
6、search命令可以用来检索所需要的模块的一些信息
search <关键词> 检索所需要的模块
search <关键词> type:exploit 检索所需要的攻击模块
search <关键词> type:auxiliary 检索所需要的辅助模块
7、use <模块名称> 使用该模块(攻击模块或辅助模块)
8、options:显示需要配置的信息
9、set和unsetset payload<载荷名称>使用该攻击载荷
set<参数名><值>设置该模块所需参数
unset<参数名>取消该参数的值
unset-g<参数1><参数2><…>批量取消参数的值
10、 save 使用save命令对设置的参数进行保存, 在下次启动后可以直接使用
11、 run和exploit 实施攻击
禁止非法,后果自负