Metasploit Framework学习

发布于:2024-06-20 ⋅ 阅读:(153) ⋅ 点赞:(0)

msf基本使用:

MSF的数据库使用
msf使用的是postgresql, 这个数据库默认端口是5432

msf我们如果单个模块使用,其实用不用数据库都不影响,但是如果模块之间有数据需要沟通,那么就必须使用。

启动PostgreSQL服务
msfconsole连接PostgreSQL数据库

service postgresql start
service postgresql status
msfconsole连接PostgreSQL数据库
msfdb init

开启msf

msfconsole

查看数据库状态 db_status

查看模块

msf6 > cd /usr/share/metasploit-framework/modules/
msf6 > ls
[*] exec: ls

auxiliary  encoders  evasion  exploits	nops  payloads	post

help命令

直接help+不懂的命令

search

用来搜索模块,搜索漏洞

use

使用命令模块,可以配合info命令查看模块的详细信息(直接在当前模块执行info)

show

show options :设置参数

show payloads :显示出适用于当前模块的payloads

check

检查命令是否可用,并不是真正执行

back

返回上一级

msf的七个模块

1、auxiliary(辅助模块 )

查看所有辅助模块

show auxiliary

2、exploits(渗透攻击模块)

利用系统漏洞进行攻击的动作,此模块对应每一个具体漏洞的攻击方法(主动、被动)

3、payloads(攻击载荷模块)

成功exploit之后,真正在目标系统执行的代码或指令。

分为3种类型的payload,分别是single、stages和stagers。

single:all-in-one。完整的payload,这些payload都是一体化的,不需要依赖外部的库和包。

stagers:目标计算机内存有限时,先传输一个较小的payload用于建立连接

stages:利用stagers建立的连接下载后续payload。

4、encoders(编码器模块)

对payload进行加密

5、nops(空指令模块)

提高payload稳定性及维持大小。在渗透攻击构造恶意数据缓冲区时,常常要在真正要执行的Shellcode 之前添加一段空指令区, 这样当触发渗透攻击后跳转执行Shellcode时,有一个较大的安全着陆区,从 而避免受到内存地址随机化、返回地址计算偏差等原因造成的Shellcode执行失败,提高渗透攻击的可靠性。

6、post (后渗透攻击模块)

在取得目标系统远程控制权后,进行一系列的后渗透攻击动作,如获取敏感信息、跳板 攻击等操作

7、evasion (免杀模块)

用于免杀绕过

参考文章:

http://t.csdnimg.cn/NAwlF

http://t.csdnimg.cn/eLeXc


网站公告

今日签到

点亮在社区的每一天
去签到