MSF基础
安全牛学习Metasploit Framework笔记
一、前言
msfconsole
作用:打开msf
PS:当前版本的msf不需要再msfconsole之前再输入service postgresql start,以前的版本可能需要msfdb init
作用:初始化msfdbmsfdb start
作用:开启msfdbmsfdb stop
作用:暂停msfdb
疑难解决:如果出现如下所示问题,初始化数据库即可
二、基本内容
- 高级、动态、可扩展的Payload
- 基于meterpreter上下文利用更多漏洞发起攻击
- 后渗透测试阶段一 站式操作界面
- 完全基于内存的DLL注入式payload (不写硬盘)
- 注入合法系统进程并建立stager
- 基于Stager.上传和预加载DLL .进行扩展模块的注入(客户 端API)
- 基于stager建立的socket连接建立加密的TL S/1.0通信隧道
- 利用TLS隧道进步加载后续扩 展模块(避免网络取证)
- 服务端使用C语言编写
- 客户端提供基于ruby的全特性API (支持任何语言)
在kali的/usr/share/metasploit-framework目录下有如图所示内容
这里我们主要了解modules
1、modules
modules有如下图所示模块
(1)auxiliary:执行信息搜集、枚举、指纹探测、扫描等功能的辅助模块
(2)encoders:对payload进行加密,躲避AV检查的模块
(3)evasion:逃避检查
(3)exploits:/usr/share/metasploit-framework/modules/exploits目录下全是攻击时的利用代码
(4)nops:提高payload稳定性及维持大小
(5)paylodas:三种payload
singles:all-in-one,各种功能都有的payload,占用空间比较大
stagers:目标计算机内存有限时,先传输一个较小的payload用于建立连接
stages:利用stager建议的连接,下载后续payload
(6)post: 后渗透模块
2、plugins:插件
3、tools:工具
4、msfvenom:木马制作
三、基本使用
1、msf更新:
apt install metasploit-framework/apt-get install metasploit-framework2、msfconsole基本使用
-
启动:msfconsole/msfconsole -q(安静启动,不显示banner)
-
执行含有msf命令的文件(相当于自动执行一个脚本):msfconsole -r
-
查看版本:msfconsole -v
-
当前窗口可以执行的命令:help/?
-
当前命令如何使用:help workspace/workspace -h
-
退出msf:exit
-
banner(标语,msf简单的介绍)
-
color:color true(color auto)/color false 默认开启颜色区分
-
connect -h(msf中的nc)
-
show
-
search/search -h
单条件查询:search name:xxx
多条件查询:search name:xxx type:auxiliary -
进入模块后:info查看模块信息
-
show options/payloads/targets/advanced/evasion
-
edit:修改命令,类似于linux中的vim
-
check:判断目标ip是否存在该漏洞(并不是所有利用模块存在,仅有少部分模块支持check)
-
back:返回,类似于linux中的cd …
-
db_status:查看msf中数据库是否连接
-
db_rebuild_cache:在msf内部创建和外部/usr/share/metasploit-framework/modules一样的缓存,以提高内部搜索速度
-
db_disconnect:断开当前数据库的连接
-
db_connect:连接指定数据库