第十九天 学习msf的使用

一、简介

在这里我用kali的msf进行学习

要访问该界面,在命令行输入msfconsole

ps:使用kali时,记得及时更新源,就像更新手机app一样,用到的命令有↓

apt-get update(只更新软件包的索引源)、apt-get upgrade(升级系统上安装的所有软件包)、apt-get dist-upgrade(升级整个linux系统)

二、msf基础

(1)模块的解释
msf框架由多个模块组成,各个模块的简单解释如下↓

Auxiliaries(辅助模块):负责扫描、嗅探、指纹识别等相关功能以辅助渗透测试

Exploit(漏洞利用模块):利用安全漏洞进行攻击

Payload(攻击载荷模块):目标系统被渗透攻击之后实现实际攻击功能的代码,也可能是简单地在目标操作系统上执行一些命令,如添加用户账号等

Post(后期渗透模块):在取得目标系统远程控制权后,进行一系列后渗透攻击动作,如获取敏感信息、实施跳板攻击等

Encoders(编码工具模块):负责免杀,防止被安全软件检测出来


(2)渗透攻击的步骤

扫描目标机系统,寻找可用漏洞

选择并配置一个漏洞利用模块

选择并配置一个攻击载荷模块

选择一个编码技术,用于绕过杀毒软件的查杀

最后渗透攻击


三、主机扫描

(1)辅助模块的端口扫描

可用先用search命令搜索 portscan 看看有哪些可用的端口模块
在这里插入图片描述
这就可以看到可用的扫描器列表,其中包含了各种扫描类型↑,下面以TCP扫描模块为例子↓

使用use命令就可使用该漏洞利用模块,用show options 命令查看需要设置的参数

在这里插入图片描述
RHOSTS是待扫描的ip地址
PORTS设置扫描端口范围
THREADS设置扫描线程

现在使用 set 命令设置相应的参数,也可使用unset命令取消某个参数值的设置

在这里插入图片描述

然后输入 run 执行

在这里插入图片描述
这样就可以看到目标机器打开了哪些端口了

(2)辅助模块进行服务扫描

这里也有多种基于服务扫描的技术可供选择,比如VNC、FTP、SMB等,只用执行特定类型的扫描就可以发现服务了

首先,用 search 命令搜索 scanner 就可以查看到很多的扫描模块↓ 剩下的步骤和端口扫描是差不多的

下面列举一些常用的扫描模块↓

在这里插入图片描述

(3)使用nmap扫描

直接输入nmap nmap怎么使用的,这里就怎么用

四、漏洞利用

找到合适的攻击模块后,用 show payloads 来选择合适的攻击载荷

就是根据系统的不同,利用不同的模块和攻击载荷进行组合来攻击

五、后渗透攻击:信息收集

对目标机器攻击渗透后,可以用msf提供的一个后渗透工具–> Meterpreter

(1)进程迁移

当获取Shell之后,要把它和目标机中的一个稳定的进程绑定在一起,可以输入 ps 命令来获取目标机正在运行的进程

输入 getpid 命令查看Meterpreter Shell的进程号
在这里插入图片描述
然后 migrate 448 把shell移动到PID为448的进程中

(2)系统命令

接下来就该收集系统信息

sysinfo 来查看目标机的系统信息,如操作系统和体系结构
在这里插入图片描述

输入 run post/windows/gather/checkvm来查看目标机是否运行在虚拟机上

idletime 命令可以看到目标机最近的运行时间

输入 route 命令可以查看目标机完整的网络设置

getuid 命令查看当前目标机已经渗透成功的用户名

接着输入 run post/windows/manage/killav 关闭目标机系统的杀毒软件

输入 run post/windows/manage/enable_rdp 命令启动目标机的远程桌面协议,也就是3389端口

输入 run post/windows/manage/autoroute 命令查看目标机的本地子网情况

然后输入 route add 命令添加路由

添加成功后输入 route print 查看
在这里插入图片描述