前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MSF是啥东西?玩安全的都知道!

MSF是啥东西?玩安全的都知道!

作者头像
网络安全自修室
发布2023-02-26 15:51:37
1.5K0
发布2023-02-26 15:51:37
举报

1

免责声明

本公众号提供的工具、教程、学习路线、精品文章均为原创或互联网收集,旨在提高网络安全技术水平为目的,只做技术研究,谨遵守国家相关法律法规,请勿用于违法用途,如果您对文章内容有疑问,可以尝试加入交流群讨论或留言私信,如有侵权请联系小编处理。

2

内容速览

什么是MSF?

Metasploit框架(简称MSF)是一个 开源工具,旨在方便渗透测试,它是由Ruby程序语言编写的模板化框架,具有很好的扩展性,便于渗透测试人员开发,使用定制的工具模板。

MSF可向后端模块提供多种用来控制测试的接口,如控制台、web、GUI、CLI等,通过这些接口访问和使用MSF中的所有插件工具,同时MSF控制台还有第三方程序的接口,例如nmap、sqlmap等。

MSF可以运行在linux和windows环境下,我们一般通常都在kali linux操作系统上使用。因此MSF的更新使用kali上的更新命令和更新源即可。

MSF介绍

MSF推荐通过控制台接口使用,打开Kali终端,输入msfconsole就能够进入到控制台操作界面

代码语言:javascript
复制
msfconsole

一、前言

  • msfconsole作用:打开msf PS:当前版本的msf不需要再msfconsole之前再输入service postgresql start,以前的版本可能需要
  • msfdb init作用:初始化msfdb
  • msfdb start作用:开启msfdb
  • msfdb stop作用:暂停msfdb 疑难解决:如果出现如下所示问题,初始化数据库即可

二、基本内容

代码语言:javascript
复制

- 高级、动态、可扩展的Payload

- 基于meterpreter上下文利用更多漏洞发起攻击

- 后渗透测试阶段一 站式操作界面

- 完全基于内存的DLL注入式payload (不写硬盘)

- 注入合法系统进程并建立stager

- 基于Stager.上传和预加载DLL .进行扩展模块的注入(客户 端API)

- 基于stager建立的socket连接建立加密的TL S/1.0通信隧道

- 利用TLS隧道进步加载后续扩 展模块(避免网络取证)

- 服务端使用C语言编写

- 客户端提供基于ruby的全特性API (支持任何语言)

目录结构

kali终端中进入/usr/share/metasploit-framework目录

然后输入 ls 查看

要记住的一些模块

modules:目录里面存放渗透使用的 辅助模块 编码模块 利用模块 攻击载荷 后渗透模块

plugins:这个模块需要用load加载,主要提供数据库连接插件 和 各种要用到的插件。

tools:包含一些有用的脚本和零散的工具。

scripts:目录里面存放都是meterpreter利用的脚本。

db:数据放在这个目录里

data:存放使用到的文件,比如密码字典、meterpreter、passivex、vnc、dlls等工具和一些用户接口代码,msfweb和一些其他模块用到的数据文件

lib:库文件都保存在这个目录里

msf的核心模块

msf的模块都放在

/usr/share/metasploit-framework/modules/这个目录下

1 auxiliary:辅助模块,辅助渗透(端口扫描、登录密码爆破、漏洞验证等)

2 exploits:漏洞利用模块,包含主流的漏洞利用脚本,通常是对某些可能存在漏洞的目标进行漏洞利用。

3 payloads:攻击载荷,主要是攻击成功后在目标机器执行的代码,比如反弹shell的代码

4 post:后渗透阶段模块,漏洞利用成功获得meterpreter之后, 向目标发送的一些功能性指令,如:提权等

5 encoders: 编码器模块,主要包含各种编码工具,对payload进行编码加密,以便绕过入侵检测和过滤系统

6 evasion:躲避模块,用来生成免杀payload

7 nops:这里主要放着调整shellcode 前置nop指令长度的工具(不理解没关系)

Kali中的 msfvenom 取代了msfpayload和msfencode,常用于生成后门木马

msfpayload是MSF攻击荷载生成器,用于生成shellcode和可执行代码。

msfencode是MSF编码器。

在kali的/usr/share/metasploit-framework目录下有如图所示内容

这里我们主要了解modules

modules

modules有如下图所示模块

代码语言:javascript
复制
(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:后渗透模块

三、基本使用

1、msf更新
2、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:连接指定数据库
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-12-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络安全自修室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是MSF?
  • MSF介绍
  • 一、前言
  • 二、基本内容
    • 目录结构
      • msf的核心模块
      • 三、基本使用
      相关产品与服务
      数据库
      云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档