参考视频:https://www.bilibili.com/video/BV13z411q7RA
一. MSF的目录结构
1.msf的安装目录
root@kali:~# ls /usr/share/metasploit-framework/
2. msf主要目录
2.1. modules(模块)
- auxiliary:主要包含渗透测试中一些辅助性脚本,这些脚本功能有扫描,嗅探,破解,注入,漏洞挖掘等。
- encoders:编码工具,用于躲过入侵检测和过滤系统。
- exploit:主要包括了 exp、0day、各种漏洞利用的脚本。主要的攻击代码全在这个目录下,这里边包括的 exp 的路径的命名规则是:系统/服务/模块,在使用的exp 是可以根据这个命名方法来找(也可以用 search 这条指令来找)。比如: use exploites/windows(系统)/vnc(服务)/realvnc_client(模块名)
- nops:由于IDS/IPS会检查数据包中不规则的数据,所以在某些场合下(比如针对溢出攻击),某些特殊的滑行字符串(NOPS x90x90…)会因为被拦截二导致攻击时效,所以此时需要修改exploit中的NOPs.nops文件夹下的东西会在payload生成时用到。如打开php的NOPS生成脚本,就会发现它返回了指定长度的空格。
- payload:攻击载荷,是攻击者发送给系统执行的指令的。payload主要是在目标机执行的,exploits是在本地执行作用于目标机。命名规则:系统/类型/名称,比如:use payload/windows/shell/bind_tcp
- post:该目录存放exploits执行成功后,向目标机发送的一些功能性指令,如:提权、获取hash等。
2.2 data
存放 meterpreter、passivex、vnc、dlls等工具和一些用户接口代码,msfweb和一些其他模块用到的数据文件
2.3 plugins
这个模块需要使用 load 加载,提供数据库连接插件,和各种要用到的插件。
2.4. sc